From: Marek Olšák Date: Thu, 11 Aug 2022 13:27:52 +0000 (-0400) Subject: gl_marshal.py: remove the -O1 hack and manual SET_* inlining X-Git-Tag: upstream/22.3.5~1552 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=146836f4ba659269e31f6ae865af9015faca5dff;p=platform%2Fupstream%2Fmesa.git gl_marshal.py: remove the -O1 hack and manual SET_* inlining The compile times aren't so bad anymore now that the initialization is split among all 8 files. Also add one assertion. Acked-By: Mike Blumenkrantz Reviewed-by: Pierre-Eric Pelloux-Prayer Part-of: --- diff --git a/src/mapi/glapi/gen/gl_marshal.py b/src/mapi/glapi/gen/gl_marshal.py index f1f355b..b87c45b 100644 --- a/src/mapi/glapi/gen/gl_marshal.py +++ b/src/mapi/glapi/gen/gl_marshal.py @@ -192,6 +192,7 @@ class PrintCode(gl_XML.gl_print_base): val = mapping.get(str, 9999) if val == 9999: print('Unhandled type in gl_marshal.py.get_type_size: ' + str, file=sys.stderr) + assert False return val def print_async_struct(self, func): @@ -367,10 +368,6 @@ class PrintCode(gl_XML.gl_print_base): out('') def print_init_marshal_table(self, functions): - out('/* _mesa_create_marshal_table takes a long time to compile with -O2 */') - out('#if defined(__GNUC__) && !defined(__clang__)') - out('__attribute__((optimize("O1")))') - out('#endif') out('void') out('_mesa_glthread_init_dispatch%u(struct gl_context *ctx, ' 'struct _glapi_table *table)' % file_index) @@ -385,12 +382,8 @@ class PrintCode(gl_XML.gl_print_base): if not condition: continue - # Don't use the SET_* functions, because they increase compile time - # by 20 seconds (on Ryzen 1700X). settings_by_condition[condition].append( - ('if (_gloffset_{0} >= 0)\n' + - ' ((_glapi_proc *)table)[_gloffset_{0}] =' + - ' (_glapi_proc)_mesa_marshal_{0};').format(func.name)) + 'SET_{0}(table, _mesa_marshal_{0});'.format(func.name)) # Print out an if statement for each unique condition, with # the SET_* calls nested inside it.