Andre Werthmann wrote:
> 
> Hello,
> 
> Can you help me please with the following questions ?
> 
> my first question is:
> 
> Is the memory where the parameters (f, m, obj) are pointing to 16 byte aligned ?
> It is somewhat important for using some of the new P3-SIMD instructions.
> 
> for example in
> static void transform_v16(GLfloat *f, const GLfloat *m, const GLfloat *obj, GLuint 
>obj_stride, GLuint count )
> 
> the second question:
> 
> How are the vertices organized ? Are they organized x0,y0,z0, x1, y1, z1, ... (as an 
>array of structures)
> or x0, x1, x2, x3, .., xn, y0, y1, y2, y3, ..., yn, z0, z1, z2, z3, .., zn   where n 
>is count (as a structure of arrays) ?

These arrays typically originate from the client via glVertexPointer.  It should
be possible to add a test for alignment and force a copy (perhaps in
gl_prepare_arrays_cva()?) if they are found to be misaligned.  

The values are arranged x0,y0,z0,x1,y1,z1 ...  There are 'C' implementations of
each of these functions in vertices.c and x86 and 3dnow implementations in
X86/vertex.S and X86/vertex_3dnow.S.

Keith


_______________________________________________
Mesa-dev maillist  -  [EMAIL PROTECTED]
http://lists.mesa3d.org/mailman/listinfo/mesa-dev

Reply via email to