summaryrefslogtreecommitdiff
path: root/src/mesa/sparc/glapi_sparc.S
diff options
context:
space:
mode:
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 b44ab68c3b..90d2b78f1c 100644
--- a/src/mesa/sparc/glapi_sparc.S
+++ b/src/mesa/sparc/glapi_sparc.S
@@ -18794,6 +18794,48 @@ glGetQueryObjectuivARB:
#endif
jmpl %g3, %g0
nop
+
+.globl glMultiModeDrawArraysIBM
+.type glMultiModeDrawArraysIBM,#function
+glMultiModeDrawArraysIBM:
+#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_MultiModeDrawArraysIBM), %g2
+ or %g2, %lo(8 * _gloffset_MultiModeDrawArraysIBM), %g2
+ ldx [%g1 + %g2], %g3
+#else
+ sethi %hi(0x00000000), %g1
+ ld [%g1 + %lo(0x00000000)], %g1
+ ld [%g1 + (4 * _gloffset_MultiModeDrawArraysIBM)], %g3
+#endif
+ jmpl %g3, %g0
+ nop
+
+.globl glMultiModeDrawElementsIBM
+.type glMultiModeDrawElementsIBM,#function
+glMultiModeDrawElementsIBM:
+#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_MultiModeDrawElementsIBM), %g2
+ or %g2, %lo(8 * _gloffset_MultiModeDrawElementsIBM), %g2
+ ldx [%g1 + %g2], %g3
+#else
+ sethi %hi(0x00000000), %g1
+ ld [%g1 + %lo(0x00000000)], %g1
+ ld [%g1 + (4 * _gloffset_MultiModeDrawElementsIBM)], %g3
+#endif
+ jmpl %g3, %g0
+ nop
nop
.globl _mesa_sparc_glapi_end