1 --- Mesa-6.3.2.orig/Makefile 2005-08-16 16:36:04.000000000 -0700
2 +++ Mesa-6.3.2/Makefile 2005-08-21 20:59:37.000000000 -0700
4 $(DIRECTORY)/src/mesa/drivers/dri/common/xmlpool/*.[ch] \
5 $(DIRECTORY)/src/mesa/drivers/dri/common/xmlpool/*.po \
6 $(DIRECTORY)/src/mesa/drivers/dri/dri_client/imports/*.h \
7 - $(DIRECTORY)/src/mesa/drivers/dri/*/*.[ch] \
8 + $(DIRECTORY)/src/mesa/drivers/dri/*/*.[chS] \
9 $(DIRECTORY)/src/mesa/drivers/dri/*/Makefile \
10 $(DIRECTORY)/src/mesa/drivers/dri/*/Doxyfile \
11 $(DIRECTORY)/src/mesa/drivers/dri/*/server/*.[ch]
12 diff -urN Mesa-6.3.2.orig/src/mesa/drivers/dri/r200/r200_vtxtmp_x86.S Mesa-6.3.2/src/mesa/drivers/dri/r200/r200_vtxtmp_x86.S
13 --- Mesa-6.3.2.orig/src/mesa/drivers/dri/r200/r200_vtxtmp_x86.S 1969-12-31 16:00:00.000000000 -0800
14 +++ Mesa-6.3.2/src/mesa/drivers/dri/r200/r200_vtxtmp_x86.S 2004-06-02 15:09:11.000000000 -0700
16 +/* $XFree86: xc/lib/GL/mesa/src/drv/r200/r200_vtxtmp_x86.S,v 1.2 2002/11/07 18:31:59 tsi Exp $ */
17 +/**************************************************************************
19 +Copyright 2002 Tungsten Graphics Inc., Cedar Park, Texas.
23 +Permission is hereby granted, free of charge, to any person obtaining a
24 +copy of this software and associated documentation files (the "Software"),
25 +to deal in the Software without restriction, including without limitation
26 +on the rights to use, copy, modify, merge, publish, distribute, sub
27 +license, and/or sell copies of the Software, and to permit persons to whom
28 +the Software is furnished to do so, subject to the following conditions:
30 +The above copyright notice and this permission notice (including the next
31 +paragraph) shall be included in all copies or substantial portions of the
34 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
35 +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
36 +FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
37 +ATI, TUNGSTEN GRAPHICS AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
38 +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
39 +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
40 +USE OR OTHER DEALINGS IN THE SOFTWARE.
42 +**************************************************************************/
52 + vertex 3f vertex size 4
55 +GLOBL ( _x86_Vertex3f_4 )
74 +GLOBL ( _x86_Vertex3f_4_end )
77 + vertex 3f vertex size 6
79 +GLOBL ( _x86_Vertex3f_6 )
103 +GLOBL ( _x86_Vertex3f_6_end )
105 + vertex 3f generic size
107 +GLOBL ( _x86_Vertex3f )
112 + movl 12(%esp), %eax
113 + movl 16(%esp), %edx
114 + movl 20(%esp), %ecx
121 + movsl %ds:(%esi), %es:(%edi)
132 +GLOBL ( _x86_Vertex3f_end )
135 + Vertex 3fv vertex size 6
137 +GLOBL ( _x86_Vertex3fv_6 )
148 + movl %edx, 12(%eax)
149 + movl %ecx, 16(%eax)
151 + movl %edx, 20(%eax)
161 +GLOBL ( _x86_Vertex3fv_6_end )
164 + Vertex 3fv vertex size 8
166 +GLOBL ( _x86_Vertex3fv_8 )
177 + movl %edx, 12(%eax)
178 + movl %ecx, 16(%eax)
181 + movl %edx, 20(%eax)
182 + movl %ecx, 24(%eax)
184 + movl %edx, 28(%eax)
194 +GLOBL ( _x86_Vertex3fv_8_end )
197 + Vertex 3fv generic vertex size
199 +GLOBL ( _x86_Vertex3fv )
203 + movl (0x1010101), %edi
214 + movsl %ds:(%esi), %es:(%edi)
215 + movl %edi, (0x1010101)
216 + movl (0x2020202), %eax
220 + movl %eax, (0x2020202)
224 +GLOBL ( _x86_Vertex3fv_end )
228 + * Generic handler for 2 float format data. This can be used for
229 + * TexCoord2f and possibly other functions.
232 +GLOBL ( _x86_Attribute2f )
239 +GLOBL ( _x86_Attribute2f_end )
243 + * Generic handler for 2 float vector format data. This can be used for
244 + * TexCoord2fv and possibly other functions.
247 +GLOBL( _x86_Attribute2fv)
248 + movl 4(%esp), %eax /* load 'v' off stack */
249 + movl (%eax), %ecx /* load v[0] */
250 + movl 4(%eax), %eax /* load v[1] */
251 + movl %ecx, 0 /* store v[0] to current vertex */
252 + movl %eax, 4 /* store v[1] to current vertex */
254 +GLOBL ( _x86_Attribute2fv_end )
258 + * Generic handler for 3 float format data. This can be used for
259 + * Normal3f, Color3f (when the color target is also float), or
263 +GLOBL ( _x86_Attribute3f )
266 + movl 12(%esp), %eax
271 +GLOBL ( _x86_Attribute3f_end )
274 + * Generic handler for 3 float vector format data. This can be used for
275 + * Normal3f, Color3f (when the color target is also float), or
279 +GLOBL( _x86_Attribute3fv)
280 + movl 4(%esp), %eax /* load 'v' off stack */
281 + movl (%eax), %ecx /* load v[0] */
282 + movl 4(%eax), %edx /* load v[1] */
283 + movl 8(%eax), %eax /* load v[2] */
284 + movl %ecx, 0 /* store v[0] to current vertex */
285 + movl %edx, 4 /* store v[1] to current vertex */
286 + movl %eax, 8 /* store v[2] to current vertex */
288 +GLOBL ( _x86_Attribute3fv_end )
294 +GLOBL ( _x86_Color4ubv_ub )
296 + movl $0x12345678, %edx
300 +GLOBL ( _x86_Color4ubv_ub_end )
305 +GLOBL ( _x86_Color4ubv_4f )
314 + movl (%edx,%eax,4),%eax
315 + movl (%edx,%ecx,4),%ecx
316 + movl %eax, (0xdeadbeaf)
317 + movl %ecx, (0xdeadbeaf)
323 + movl (%edx,%eax,4), %eax
324 + movl (%edx,%ecx,4), %ecx
325 + movl %eax, (0xdeadbeaf)
326 + movl %ecx, (0xdeadbeaf)
329 +GLOBL ( _x86_Color4ubv_4f_end )
335 +GLOBL( _x86_Color4ub_ub )
338 + movl 12(%esp), %edx
339 + movl 16(%esp), %ecx
340 + movl 20(%esp), %ebx
347 +GLOBL( _x86_Color4ub_ub_end )
350 +/* \todo: change the "and $7, %eax" to something like "target & 4 ? target & 5 : target & 3)" */
352 + MultiTexCoord2fv st0/st1
354 +GLOBL( _x86_MultiTexCoord2fv )
361 + movl %edx, 0xdeadbeef(%eax)
362 + movl %ecx, 0xdeadbeef(%eax)
364 +GLOBL( _x86_MultiTexCoord2fv_end )
370 +GLOBL( _x86_MultiTexCoord2fv_2 )
371 + movl 4(%esp,1), %eax
372 + movl 8(%esp,1), %ecx
374 + movl 0(,%eax,4), %edx
380 +GLOBL( _x86_MultiTexCoord2fv_2_end )
383 + MultiTexCoord2f st0/st1
385 +GLOBL( _x86_MultiTexCoord2f )
388 + movl 12(%esp), %ecx
391 + movl %edx, 0xdeadbeef(%eax)
392 + movl %ecx, 0xdeadbeef(%eax)
394 +GLOBL( _x86_MultiTexCoord2f_end )
399 +GLOBL( _x86_MultiTexCoord2f_2 )
402 + movl 12(%esp,1), %ecx
404 + movl 0(,%eax,4), %eax
408 +GLOBL( _x86_MultiTexCoord2f_2_end )
410 +#if defined(USE_SSE_ASM)
412 + * This can be used as a template for either Color3fv (when the color
413 + * target is also a 3f) or Normal3fv.
416 +GLOBL( _sse_Attribute3fv )
418 + movlps (%eax), %xmm0
423 +GLOBL( _sse_Attribute3fv_end )
426 + * This can be used as a template for either Color3f (when the color
427 + * target is also a 3f) or Normal3f.
430 +GLOBL( _sse_Attribute3f )
431 + movlps 4(%esp), %xmm0
432 + movl 12(%esp), %eax
436 +GLOBL( _sse_Attribute3f_end )
440 + * Generic handler for 2 float vector format data. This can be used for
441 + * TexCoord2fv and possibly other functions.
444 +GLOBL( _sse_Attribute2fv )
446 + movlps (%eax), %xmm0
449 +GLOBL( _sse_Attribute2fv_end )
453 + * Generic handler for 2 float format data. This can be used for
454 + * TexCoord2f and possibly other functions.
457 +GLOBL( _sse_Attribute2f )
458 + movlps 4(%esp), %xmm0
461 +GLOBL( _sse_Attribute2f_end )
464 + MultiTexCoord2fv st0/st1
466 +GLOBL( _sse_MultiTexCoord2fv )
470 + movlps (%ecx), %xmm0
471 + movlps %xmm0, 0xdeadbeef(,%eax,8)
473 +GLOBL( _sse_MultiTexCoord2fv_end )
478 +GLOBL( _sse_MultiTexCoord2fv_2 )
482 + movl 0(,%eax,4), %edx
483 + movlps (%ecx), %xmm0
484 + movlps %xmm0, (%edx)
486 +GLOBL( _sse_MultiTexCoord2fv_2_end )
489 + MultiTexCoord2f st0/st1
491 +GLOBL( _sse_MultiTexCoord2f )
494 + movlps 8(%esp), %xmm0
495 + movlps %xmm0, 0xdeadbeef(,%eax,8)
497 +GLOBL( _sse_MultiTexCoord2f_end )
502 +GLOBL( _sse_MultiTexCoord2f_2 )
504 + movlps 8(%esp), %xmm0
506 + movl 0(,%eax,4), %eax
507 + movlps %xmm0, (%eax)
509 +GLOBL( _sse_MultiTexCoord2f_2_end )
511 diff -urN Mesa-6.3.2.orig/src/mesa/drivers/dri/radeon/radeon_vtxtmp_x86.S Mesa-6.3.2/src/mesa/drivers/dri/radeon/radeon_vtxtmp_x86.S
512 --- Mesa-6.3.2.orig/src/mesa/drivers/dri/radeon/radeon_vtxtmp_x86.S 1969-12-31 16:00:00.000000000 -0800
513 +++ Mesa-6.3.2/src/mesa/drivers/dri/radeon/radeon_vtxtmp_x86.S 2004-04-26 03:10:23.000000000 -0700
515 +/* $XFree86: xc/lib/GL/mesa/src/drv/radeon/radeon_vtxtmp_x86.S,v 1.1 2002/10/30 12:51:58 alanh Exp $ */
516 +/**************************************************************************
518 +Copyright 2002 Tungsten Graphics Inc., Cedar Park, Texas.
520 +All Rights Reserved.
522 +Permission is hereby granted, free of charge, to any person obtaining a
523 +copy of this software and associated documentation files (the "Software"),
524 +to deal in the Software without restriction, including without limitation
525 +on the rights to use, copy, modify, merge, publish, distribute, sub
526 +license, and/or sell copies of the Software, and to permit persons to whom
527 +the Software is furnished to do so, subject to the following conditions:
529 +The above copyright notice and this permission notice (including the next
530 +paragraph) shall be included in all copies or substantial portions of the
533 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
534 +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
535 +FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
536 +ATI, TUNGSTEN GRAPHICS AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
537 +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
538 +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
539 +USE OR OTHER DEALINGS IN THE SOFTWARE.
541 +**************************************************************************/
543 +#define GLOBL( x ) \
551 + vertex 3f vertex size 4
554 +GLOBL ( _x86_Vertex3f_4 )
560 + movl 12(%esp), %eax
563 + movl %edx, 12(%ecx)
573 +GLOBL ( _x86_Vertex3f_4_end )
576 + vertex 3f vertex size 6
578 +GLOBL ( _x86_Vertex3f_6 )
582 + movl 12(%esp), %edx
583 + movl 16(%esp), %ecx
590 + movl %eax, 12(%edi)
591 + movl %edx, 16(%edi)
592 + movl %ecx, 20(%edi)
602 +GLOBL ( _x86_Vertex3f_6_end )
604 + vertex 3f generic size
606 +GLOBL ( _x86_Vertex3f )
611 + movl 12(%esp), %eax
612 + movl 16(%esp), %edx
613 + movl 20(%esp), %ecx
620 + movsl %ds:(%esi), %es:(%edi)
631 +GLOBL ( _x86_Vertex3f_end )
634 + Vertex 3fv vertex size 6
636 +GLOBL ( _x86_Vertex3fv_6 )
647 + movl %edx, 12(%eax)
648 + movl %ecx, 16(%eax)
650 + movl %edx, 20(%eax)
660 +GLOBL ( _x86_Vertex3fv_6_end )
663 + Vertex 3fv vertex size 8
665 +GLOBL ( _x86_Vertex3fv_8 )
676 + movl %edx, 12(%eax)
677 + movl %ecx, 16(%eax)
680 + movl %edx, 20(%eax)
681 + movl %ecx, 24(%eax)
683 + movl %edx, 28(%eax)
693 +GLOBL ( _x86_Vertex3fv_8_end )
696 + Vertex 3fv generic vertex size
698 +GLOBL ( _x86_Vertex3fv )
702 + movl (0x1010101), %edi
713 + movsl %ds:(%esi), %es:(%edi)
714 + movl %edi, (0x1010101)
715 + movl (0x2020202), %eax
719 + movl %eax, (0x2020202)
723 +GLOBL ( _x86_Vertex3fv_end )
727 + * Generic handler for 2 float format data. This can be used for
728 + * TexCoord2f and possibly other functions.
731 +GLOBL ( _x86_Attribute2f )
738 +GLOBL ( _x86_Attribute2f_end )
742 + * Generic handler for 2 float vector format data. This can be used for
743 + * TexCoord2fv and possibly other functions.
746 +GLOBL( _x86_Attribute2fv)
747 + movl 4(%esp), %eax /* load 'v' off stack */
748 + movl (%eax), %ecx /* load v[0] */
749 + movl 4(%eax), %eax /* load v[1] */
750 + movl %ecx, 0 /* store v[0] to current vertex */
751 + movl %eax, 4 /* store v[1] to current vertex */
753 +GLOBL ( _x86_Attribute2fv_end )
757 + * Generic handler for 3 float format data. This can be used for
758 + * Normal3f, Color3f (when the color target is also float), or
762 +GLOBL ( _x86_Attribute3f )
765 + movl 12(%esp), %eax
770 +GLOBL ( _x86_Attribute3f_end )
773 + * Generic handler for 3 float vector format data. This can be used for
774 + * Normal3f, Color3f (when the color target is also float), or
778 +GLOBL( _x86_Attribute3fv)
779 + movl 4(%esp), %eax /* load 'v' off stack */
780 + movl (%eax), %ecx /* load v[0] */
781 + movl 4(%eax), %edx /* load v[1] */
782 + movl 8(%eax), %eax /* load v[2] */
783 + movl %ecx, 0 /* store v[0] to current vertex */
784 + movl %edx, 4 /* store v[1] to current vertex */
785 + movl %eax, 8 /* store v[2] to current vertex */
787 +GLOBL ( _x86_Attribute3fv_end )
793 +GLOBL ( _x86_Color4ubv_ub )
795 + movl $0x12345678, %edx
799 +GLOBL ( _x86_Color4ubv_ub_end )
804 +GLOBL ( _x86_Color4ubv_4f )
813 + movl (%edx,%eax,4),%eax
814 + movl (%edx,%ecx,4),%ecx
815 + movl %eax, (0xdeadbeaf)
816 + movl %ecx, (0xdeadbeaf)
822 + movl (%edx,%eax,4), %eax
823 + movl (%edx,%ecx,4), %ecx
824 + movl %eax, (0xdeadbeaf)
825 + movl %ecx, (0xdeadbeaf)
828 +GLOBL ( _x86_Color4ubv_4f_end )
834 +GLOBL( _x86_Color4ub_ub )
837 + movl 12(%esp), %edx
838 + movl 16(%esp), %ecx
839 + movl 20(%esp), %ebx
846 +GLOBL( _x86_Color4ub_ub_end )
850 + MultiTexCoord2fv st0/st1
852 +GLOBL( _x86_MultiTexCoord2fv )
859 + movl %edx, 0xdeadbeef(%eax)
860 + movl %ecx, 0xdeadbeef(%eax)
862 +GLOBL( _x86_MultiTexCoord2fv_end )
868 +GLOBL( _x86_MultiTexCoord2fv_2 )
869 + movl 4(%esp,1), %eax
870 + movl 8(%esp,1), %ecx
872 + movl 0(,%eax,4), %edx
878 +GLOBL( _x86_MultiTexCoord2fv_2_end )
881 + MultiTexCoord2f st0/st1
883 +GLOBL( _x86_MultiTexCoord2f )
886 + movl 12(%esp), %ecx
889 + movl %edx, 0xdeadbeef(%eax)
890 + movl %ecx, 0xdeadbeef(%eax)
892 +GLOBL( _x86_MultiTexCoord2f_end )
897 +GLOBL( _x86_MultiTexCoord2f_2 )
900 + movl 12(%esp,1), %ecx
902 + movl 0(,%eax,4), %eax
906 +GLOBL( _x86_MultiTexCoord2f_2_end )
908 +#if defined(USE_SSE_ASM)
910 + * This can be used as a template for either Color3fv (when the color
911 + * target is also a 3f) or Normal3fv.
914 +GLOBL( _sse_Attribute3fv )
916 + movlps (%eax), %xmm0
921 +GLOBL( _sse_Attribute3fv_end )
924 + * This can be used as a template for either Color3f (when the color
925 + * target is also a 3f) or Normal3f.
928 +GLOBL( _sse_Attribute3f )
929 + movlps 4(%esp), %xmm0
930 + movl 12(%esp), %eax
934 +GLOBL( _sse_Attribute3f_end )
938 + * Generic handler for 2 float vector format data. This can be used for
939 + * TexCoord2fv and possibly other functions.
942 +GLOBL( _sse_Attribute2fv )
944 + movlps (%eax), %xmm0
947 +GLOBL( _sse_Attribute2fv_end )
951 + * Generic handler for 2 float format data. This can be used for
952 + * TexCoord2f and possibly other functions.
955 +GLOBL( _sse_Attribute2f )
956 + movlps 4(%esp), %xmm0
959 +GLOBL( _sse_Attribute2f_end )
962 + MultiTexCoord2fv st0/st1
964 +GLOBL( _sse_MultiTexCoord2fv )
968 + movlps (%ecx), %xmm0
969 + movlps %xmm0, 0xdeadbeef(,%eax,8)
971 +GLOBL( _sse_MultiTexCoord2fv_end )
976 +GLOBL( _sse_MultiTexCoord2fv_2 )
980 + movl 0(,%eax,4), %edx
981 + movlps (%ecx), %xmm0
982 + movlps %xmm0, (%edx)
984 +GLOBL( _sse_MultiTexCoord2fv_2_end )
987 + MultiTexCoord2f st0/st1
989 +GLOBL( _sse_MultiTexCoord2f )
992 + movlps 8(%esp), %xmm0
993 + movlps %xmm0, 0xdeadbeef(,%eax,8)
995 +GLOBL( _sse_MultiTexCoord2f_end )
1000 +GLOBL( _sse_MultiTexCoord2f_2 )
1001 + movl 4(%esp), %eax
1002 + movlps 8(%esp), %xmm0
1004 + movl 0(,%eax,4), %eax
1005 + movlps %xmm0, (%eax)
1007 +GLOBL( _sse_MultiTexCoord2f_2_end )