summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThierry Reding <thierry@gilfi.de>2011-05-22 14:07:22 +0200
committerJosé Fonseca <jfonseca@vmware.com>2011-05-23 16:19:44 +0100
commit5af46e836073d2112b147b524e441bdb808cc128 (patch)
tree9c8b4b2fb5391fb13cef10ef9da5b21dd7f65341
parente8b1c6d6f55f5be3bef25084fdd8b6127517e137 (diff)
mesa: Fix remap_table setup.
Since the SET_xxx and GET_xxx macros used to initialize the remap_table have been replaced by inline functions, the missing late macro expansion leads to driDispatchRemapTable not being redefined to remap_table, which in turn causes the remap_table not to be setup properly. This commit fixes the issue by moving the table redefinition after the definition of driDispatchRemapTable but in front of the inline function definitions.
-rw-r--r--src/mapi/glapi/gen/gl_table.py5
-rw-r--r--src/mesa/main/es_generator.py4
2 files changed, 5 insertions, 4 deletions
diff --git a/src/mapi/glapi/gen/gl_table.py b/src/mapi/glapi/gen/gl_table.py
index 7183052f193..c3cc6164f2c 100644
--- a/src/mapi/glapi/gen/gl_table.py
+++ b/src/mapi/glapi/gen/gl_table.py
@@ -152,6 +152,11 @@ class PrintRemapTable(gl_XML.gl_print_base):
print '#define driDispatchRemapTable_size %u' % (count)
print 'extern int driDispatchRemapTable[ driDispatchRemapTable_size ];'
print ''
+ print '#if FEATURE_remap_table'
+ print '#define driDispatchRemapTable remap_table'
+ print 'static int remap_table[driDispatchRemapTable_size];'
+ print '#endif'
+ print ''
for f, index in functions:
print '#define %s_remap_index %u' % (f.name, index)
diff --git a/src/mesa/main/es_generator.py b/src/mesa/main/es_generator.py
index a56debe0170..87d8bd31682 100644
--- a/src/mesa/main/es_generator.py
+++ b/src/mesa/main/es_generator.py
@@ -687,10 +687,6 @@ print """
#define need_MESA_remap_table
#include "%sapi/main/remap_helper.h"
-/* force SET_* macros to use the local remap table */
-#define driDispatchRemapTable remap_table
-static int remap_table[driDispatchRemapTable_size];
-
static void
init_remap_table(void)
{