summaryrefslogtreecommitdiffstats
path: root/src/mesa/sparc/glapi_sparc.S
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2002-06-30 15:47:00 +0000
committerBrian Paul <[email protected]>2002-06-30 15:47:00 +0000
commit2525bc7d305f6dcab3beb75535da25a488c969b0 (patch)
tree3c70b05a2c7e8649b89d68c2b7d5c1dd2c48095b /src/mesa/sparc/glapi_sparc.S
parent1074d8c3613bb44f12ed5dc28aec4fd7fdd79f19 (diff)
Implemented GL_EXT_multi_draw_arrays: glMultiDrawArraysEXT() and glMultiDrawElementsEXT().
Diffstat (limited to 'src/mesa/sparc/glapi_sparc.S')
-rw-r--r--src/mesa/sparc/glapi_sparc.S42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/mesa/sparc/glapi_sparc.S b/src/mesa/sparc/glapi_sparc.S
index c9bf45b604a..a70b6300ffb 100644
--- a/src/mesa/sparc/glapi_sparc.S
+++ b/src/mesa/sparc/glapi_sparc.S
@@ -12936,6 +12936,48 @@ glSecondaryColorPointerEXT:
jmpl %g3, %g0
nop
+.globl glMultiDrawArraysEXT
+.type glMultiDrawArraysEXT,#function
+glMultiDrawArraysEXT:
+#ifdef __sparc_v9__
+ sethi %hi(0x00000000), %g2
+ sethi %hi(0x00000000), %g1
+ or %g2, %lo(0x00000000), %g2
+ or %g1, %lo(0x00000000), %g1
+ sllx %g2, 32, %g2
+ ldx [%g1 + %g2], %g1
+ sethi %hi(8 * _gloffset_MultiDrawArraysEXT), %g2
+ or %g2, %lo(8 * _gloffset_MultiDrawArraysEXT), %g2
+ ldx [%g1 + %g2], %g3
+#else
+ sethi %hi(0x00000000), %g1
+ ld [%g1 + %lo(0x00000000)], %g1
+ ld [%g1 + (4 * _gloffset_MultiDrawArraysEXT)], %g3
+#endif
+ jmpl %g3, %g0
+ nop
+
+.globl glMultiDrawElementsEXT
+.type glMultiDrawElementsEXT,#function
+glMultiDrawElementsEXT:
+#ifdef __sparc_v9__
+ sethi %hi(0x00000000), %g2
+ sethi %hi(0x00000000), %g1
+ or %g2, %lo(0x00000000), %g2
+ or %g1, %lo(0x00000000), %g1
+ sllx %g2, 32, %g2
+ ldx [%g1 + %g2], %g1
+ sethi %hi(8 * _gloffset_MultiDrawElementsEXT), %g2
+ or %g2, %lo(8 * _gloffset_MultiDrawElementsEXT), %g2
+ ldx [%g1 + %g2], %g3
+#else
+ sethi %hi(0x00000000), %g1
+ ld [%g1 + %lo(0x00000000)], %g1
+ ld [%g1 + (4 * _gloffset_MultiDrawElementsEXT)], %g3
+#endif
+ jmpl %g3, %g0
+ nop
+
.globl glFogCoordfEXT
.type glFogCoordfEXT,#function
glFogCoordfEXT: