summaryrefslogtreecommitdiff
path: root/src/mesa/glapi/gl_SPARC_asm.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/glapi/gl_SPARC_asm.py')
-rw-r--r--src/mesa/glapi/gl_SPARC_asm.py40
1 files changed, 26 insertions, 14 deletions
diff --git a/src/mesa/glapi/gl_SPARC_asm.py b/src/mesa/glapi/gl_SPARC_asm.py
index 76a545d90c..9be4849010 100644
--- a/src/mesa/glapi/gl_SPARC_asm.py
+++ b/src/mesa/glapi/gl_SPARC_asm.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python2
+#!/usr/bin/env python
# (C) Copyright IBM Corporation 2004
# All Rights Reserved.
@@ -25,15 +25,13 @@
# Authors:
# Ian Romanick <idr@us.ibm.com>
-import gl_XML
-import license
+import gl_XML, license
import sys, getopt
-class PrintGenericStubs(gl_XML.FilterGLAPISpecBase):
- name = "gl_SPARC_asm.py (from Mesa)"
-
+class PrintGenericStubs(gl_XML.gl_print_base):
def __init__(self):
- gl_XML.FilterGLAPISpecBase.__init__(self)
+ gl_XML.gl_print_base.__init__(self)
+ self.name = "gl_SPARC_asm.py (from Mesa)"
self.license = license.bsd_license_template % ( \
"""Copyright (C) 1999-2003 Brian Paul All Rights Reserved.
(C) Copyright IBM Corporation 2004""", "BRIAN PAUL, IBM")
@@ -68,6 +66,8 @@ class PrintGenericStubs(gl_XML.FilterGLAPISpecBase):
print '\tnop'
print '#endif'
print ''
+ print '#define GL_STUB_ALIAS(fn,alias) GLOBL_FN(fn) ; fn = alias'
+ print ''
print '.text'
print '.align 32'
print 'GLOBL_FN(__glapi_sparc_icache_flush)'
@@ -79,21 +79,31 @@ class PrintGenericStubs(gl_XML.FilterGLAPISpecBase):
print '.data'
print '.align 64'
print ''
+ return
+
+
+ def printBody(self, api):
print 'GLOBL_FN(_mesa_sparc_glapi_begin)'
print '_mesa_sparc_glapi_begin:'
print ''
- return
- def printRealFooter(self):
+ for f in api.functionIterateByOffset():
+ print '\tGL_STUB(gl%s, _gloffset_%s)' % (f.name, f.name)
+
print ''
print 'GLOBL_FN(_mesa_sparc_glapi_end)'
print '_mesa_sparc_glapi_end:'
- return
+ print ''
+
+
+ for f in api.functionIterateByOffset():
+ for n in f.entry_points:
+ if n != f.name:
+ print '\tGL_STUB_ALIAS(gl%s, gl%s)' % (n, f.name)
- def printFunction(self, f):
- print '\tGL_STUB(gl%s, _gloffset_%s)' % (f.name, f.real_name)
return
+
def show_usage():
print "Usage: %s [-f input_file_name] [-m output_mode]" % sys.argv[0]
sys.exit(1)
@@ -114,9 +124,11 @@ if __name__ == '__main__':
file_name = val
if mode == "generic":
- dh = PrintGenericStubs()
+ printer = PrintGenericStubs()
else:
print "ERROR: Invalid mode \"%s\" specified." % mode
show_usage()
- gl_XML.parse_GL_API( dh, file_name )
+ api = gl_XML.parse_GL_API( file_name )
+
+ printer.Print( api )