mesa: enable ARB_vertex_attrib_64bit in compat profile
authorTimothy Arceri <tarceri@itsqueeze.com>
Wed, 20 Jun 2018 03:05:05 +0000 (13:05 +1000)
committerTimothy Arceri <tarceri@itsqueeze.com>
Fri, 29 Jun 2018 22:38:33 +0000 (08:38 +1000)
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
src/mapi/glapi/gen/apiexec.py
src/mesa/main/extensions_table.h
src/mesa/main/tests/dispatch_sanity.cpp
src/mesa/main/vtxfmt.c

index 1a91785d37591f7f02f76aab14d8268ac86cbdff..44552f43f294fc61f58ab86eb6526a91de6b3f22 100644 (file)
@@ -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:
     #
index 12b796777dfb2bd2129d76f35ad1f71e9f325355..8ed1308182e4e8a6e3dd00333cc857786deff002 100644 (file)
@@ -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                ,  , 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)
index 085b1f7dd5fb59ee33787add4fa5f0cad2a553ad..542dbbdee0f5da86539566c117986c7e9ae49b93 100644 (file)
@@ -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 },
index 61629a40fdafbf2e63a2da37c30c23534b21b975..3e96c7d2fbac5c79c35ad257f3d62070dd8c1f27 100644 (file)
@@ -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);