summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
diff options
context:
space:
mode:
authorJordan Justen <[email protected]>2012-11-16 10:27:13 -0800
committerJordan Justen <[email protected]>2012-12-16 15:30:27 -0800
commitd44014953835e9180eeb54a7969470396d7f3fd0 (patch)
treed4dfec92f530f834f2d02fdb0870b02396669516 /src/mesa/main
parentfa5078c255b5b57514ae854ecd6264379641c924 (diff)
mesa: separate exec allocation from initialization
In glapi/gl_genexec.py: * Remove _mesa_alloc_dispatch_table call In glapi/gl_genexec.py and api_exec.h: * Rename _mesa_create_exec_table to _mesa_initialize_exec_table In context.c: * Call _mesa_alloc_dispatch_table instead of _mesa_create_exec_table * Call _mesa_initialize_exec_table (this is temporary) Once all drivers have been modified to call _mesa_initialize_exec_table, then the call to _mesa_initialize_context can be removed from context.c. Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/mesa/main')
-rw-r--r--src/mesa/main/api_exec.h4
-rw-r--r--src/mesa/main/context.c7
2 files changed, 7 insertions, 4 deletions
diff --git a/src/mesa/main/api_exec.h b/src/mesa/main/api_exec.h
index 7d37ff754be..8292c12de1f 100644
--- a/src/mesa/main/api_exec.h
+++ b/src/mesa/main/api_exec.h
@@ -33,8 +33,8 @@ struct gl_context;
extern struct _glapi_table *
_mesa_alloc_dispatch_table(int size);
-extern struct _glapi_table *
-_mesa_create_exec_table(struct gl_context *ctx);
+extern void
+_mesa_initialize_exec_table(struct gl_context *ctx);
#endif
diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c
index fa552e8180b..df7647dd5ad 100644
--- a/src/mesa/main/context.c
+++ b/src/mesa/main/context.c
@@ -935,8 +935,11 @@ _mesa_initialize_context(struct gl_context *ctx,
return GL_FALSE;
}
- /* setup the API dispatch tables */
- ctx->Exec = _mesa_create_exec_table(ctx);
+ /* setup the API dispatch tables with all nop functions */
+ ctx->Exec = _mesa_alloc_dispatch_table(_gloffset_COUNT);
+
+ /* setup the API exec functions */
+ _mesa_initialize_exec_table(ctx);
if (!ctx->Exec) {
_mesa_reference_shared_state(ctx, &ctx->Shared, NULL);