From ddb351f7fe056589b349233edd6d5f9cd2295ec7 Mon Sep 17 00:00:00 2001 From: Timothy Arceri Date: Wed, 20 Jun 2018 13:05:05 +1000 Subject: [PATCH] mesa: enable ARB_vertex_attrib_64bit in compat profile MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Reviewed-by: Marek Olšák --- src/mapi/glapi/gen/apiexec.py | 20 ++++++++++---------- src/mesa/main/extensions_table.h | 2 +- src/mesa/main/tests/dispatch_sanity.cpp | 23 ++++++++++++----------- src/mesa/main/vtxfmt.c | 2 +- 4 files changed, 24 insertions(+), 23 deletions(-) diff --git a/src/mapi/glapi/gen/apiexec.py b/src/mapi/glapi/gen/apiexec.py index 1a91785d375..44552f43f29 100644 --- a/src/mapi/glapi/gen/apiexec.py +++ b/src/mapi/glapi/gen/apiexec.py @@ -113,16 +113,16 @@ functions = { # For Mesa this effectively means OpenGL 3.2 is required. It seems # unlikely that Mesa will ever get support for any of the NV extensions # that add "equivalent functionality." - "VertexAttribL1d": exec_info(core=32), - "VertexAttribL2d": exec_info(core=32), - "VertexAttribL3d": exec_info(core=32), - "VertexAttribL4d": exec_info(core=32), - "VertexAttribL1dv": exec_info(core=32), - "VertexAttribL2dv": exec_info(core=32), - "VertexAttribL3dv": exec_info(core=32), - "VertexAttribL4dv": exec_info(core=32), - "VertexAttribLPointer": exec_info(core=32), - "GetVertexAttribLdv": exec_info(core=32), + "VertexAttribL1d": exec_info(compatibility=32, core=32), + "VertexAttribL2d": exec_info(compatibility=32, core=32), + "VertexAttribL3d": exec_info(compatibility=32, core=32), + "VertexAttribL4d": exec_info(compatibility=32, core=32), + "VertexAttribL1dv": exec_info(compatibility=32, core=32), + "VertexAttribL2dv": exec_info(compatibility=32, core=32), + "VertexAttribL3dv": exec_info(compatibility=32, core=32), + "VertexAttribL4dv": exec_info(compatibility=32, core=32), + "VertexAttribLPointer": exec_info(compatibility=32, core=32), + "GetVertexAttribLdv": exec_info(compatibility=32, core=32), # OpenGL 4.1 / GL_ARB_viewport_array. The extension spec says: # diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h index 12b796777df..8ed1308182e 100644 --- a/src/mesa/main/extensions_table.h +++ b/src/mesa/main/extensions_table.h @@ -175,7 +175,7 @@ EXT(ARB_transpose_matrix , dummy_true EXT(ARB_uniform_buffer_object , ARB_uniform_buffer_object , GLL, GLC, x , x , 2009) EXT(ARB_vertex_array_bgra , EXT_vertex_array_bgra , GLL, GLC, x , x , 2008) EXT(ARB_vertex_array_object , dummy_true , GLL, GLC, x , x , 2006) -EXT(ARB_vertex_attrib_64bit , ARB_vertex_attrib_64bit , x , GLC, x , x , 2010) +EXT(ARB_vertex_attrib_64bit , ARB_vertex_attrib_64bit , 32, GLC, x , x , 2010) EXT(ARB_vertex_attrib_binding , dummy_true , GLL, GLC, x , x , 2012) EXT(ARB_vertex_buffer_object , dummy_true , GLL, x , x , x , 2003) EXT(ARB_vertex_program , ARB_vertex_program , GLL, x , x , x , 2002) diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp index 085b1f7dd5f..542dbbdee0f 100644 --- a/src/mesa/main/tests/dispatch_sanity.cpp +++ b/src/mesa/main/tests/dispatch_sanity.cpp @@ -603,6 +603,18 @@ const struct function common_desktop_functions_possible[] = { { "glUniformMatrix4x3dv", 40, -1 }, { "glGetUniformdv", 43, -1 }, + /* GL 4.1 */ + { "glVertexAttribL1d", 41, -1 }, + { "glVertexAttribL2d", 41, -1 }, + { "glVertexAttribL3d", 41, -1 }, + { "glVertexAttribL4d", 41, -1 }, + { "glVertexAttribL1dv", 41, -1 }, + { "glVertexAttribL2dv", 41, -1 }, + { "glVertexAttribL3dv", 41, -1 }, + { "glVertexAttribL4dv", 41, -1 }, + { "glVertexAttribLPointer", 41, -1 }, + { "glGetVertexAttribLdv", 41, -1 }, + /* GL 4.3 */ { "glIsRenderbuffer", 43, -1 }, { "glBindRenderbuffer", 43, -1 }, @@ -1765,17 +1777,6 @@ const struct function gl_core_functions_possible[] = { { "glValidateProgramPipeline", 43, -1 }, { "glGetProgramPipelineInfoLog", 43, -1 }, - { "glVertexAttribL1d", 41, -1 }, - { "glVertexAttribL2d", 41, -1 }, - { "glVertexAttribL3d", 41, -1 }, - { "glVertexAttribL4d", 41, -1 }, - { "glVertexAttribL1dv", 41, -1 }, - { "glVertexAttribL2dv", 41, -1 }, - { "glVertexAttribL3dv", 41, -1 }, - { "glVertexAttribL4dv", 41, -1 }, - { "glVertexAttribLPointer", 41, -1 }, - { "glGetVertexAttribLdv", 41, -1 }, - // { "glCreateSyncFromCLeventARB", 43, -1 }, // XXX: Add to xml { "glDrawArraysInstancedBaseInstance", 43, -1 }, diff --git a/src/mesa/main/vtxfmt.c b/src/mesa/main/vtxfmt.c index 61629a40fda..3e96c7d2fba 100644 --- a/src/mesa/main/vtxfmt.c +++ b/src/mesa/main/vtxfmt.c @@ -211,7 +211,7 @@ install_vtxfmt(struct gl_context *ctx, struct _glapi_table *tab, SET_VertexAttribL1ui64vARB(tab, vfmt->VertexAttribL1ui64vARB); } - if (ctx->API == API_OPENGL_CORE) { + if (_mesa_is_desktop_gl(ctx)) { /* GL_ARB_vertex_attrib_64bit */ SET_VertexAttribL1d(tab, vfmt->VertexAttribL1d); SET_VertexAttribL2d(tab, vfmt->VertexAttribL2d); -- 2.30.2