On 09/08/2016 10:58 PM, Ian Romanick wrote:
On 09/08/2016 01:31 PM, Samuel Pitoiset wrote:
Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
---
 .../glapi/gen/ARB_compute_variable_group_size.xml  | 25 ++++++++++++++++++++++
 src/mapi/glapi/gen/Makefile.am                     |  1 +
 src/mapi/glapi/gen/gl_API.xml                      |  2 ++
 src/mesa/main/compute.c                            |  8 +++++++
 src/mesa/main/compute.h                            |  5 +++++
 src/mesa/main/tests/dispatch_sanity.cpp            |  3 +++
 6 files changed, 44 insertions(+)
 create mode 100644 src/mapi/glapi/gen/ARB_compute_variable_group_size.xml

diff --git a/src/mapi/glapi/gen/ARB_compute_variable_group_size.xml 
b/src/mapi/glapi/gen/ARB_compute_variable_group_size.xml
new file mode 100644
index 0000000..b21c52f
--- /dev/null
+++ b/src/mapi/glapi/gen/ARB_compute_variable_group_size.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="GL_ARB_compute_variable_group_size" number="153">
+  <enum name="MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB" value="0x9344"/>
+  <enum name="MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB"    value="0x90EB"/>
+  <enum name="MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB"        value="0x9345"/>
+  <enum name="MAX_COMPUTE_FIXED_GROUP_SIZE_ARB"           value="0x91BF"/>
+
+  <function name="DispatchComputeGroupSizeARB">
+    <param name="num_groups_x" type="GLuint"/>
+    <param name="num_groups_y" type="GLuint"/>
+    <param name="num_groups_z" type="GLuint"/>
+    <param name="group_size_x" type="GLuint"/>
+    <param name="group_size_y" type="GLuint"/>
+    <param name="group_size_z" type="GLuint"/>
+  </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/Makefile.am b/src/mapi/glapi/gen/Makefile.am
index 0d7c338..49fdfe3 100644
--- a/src/mapi/glapi/gen/Makefile.am
+++ b/src/mapi/glapi/gen/Makefile.am
@@ -117,6 +117,7 @@ API_XML = \
        ARB_color_buffer_float.xml \
        ARB_compressed_texture_pixel_storage.xml \
        ARB_compute_shader.xml \
+       ARB_compute_variable_group_size.xml \
        ARB_copy_buffer.xml \
        ARB_copy_image.xml \
        ARB_debug_output.xml \
diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml
index c39aa22..9ad3b60 100644
--- a/src/mapi/glapi/gen/gl_API.xml
+++ b/src/mapi/glapi/gen/gl_API.xml
@@ -8258,6 +8258,8 @@

 <xi:include href="ARB_indirect_parameters.xml" 
xmlns:xi="http://www.w3.org/2001/XInclude"/>

+<xi:include href="ARB_compute_variable_group_size.xml" 
xmlns:xi="http://www.w3.org/2001/XInclude"/>
+

This (extension #153) should go before ARB_indirect_parameters
(extension #154), and the "ARB extensions 149 - 153" should be changed
to "ARB extensions 149 - 152".

Presumably, you meant "ARB extensions 149 - 154"? Because the next section is "ARB extension 155 - 159".


With that fixed, this patch is

Reviewed-by: Ian Romanick <ian.d.roman...@intel.com>

 <!-- ARB extensions 155 - 159 -->

 <xi:include href="ARB_clip_control.xml" 
xmlns:xi="http://www.w3.org/2001/XInclude"/>
diff --git a/src/mesa/main/compute.c b/src/mesa/main/compute.c
index b71430f..b052bae 100644
--- a/src/mesa/main/compute.c
+++ b/src/mesa/main/compute.c
@@ -60,3 +60,11 @@ _mesa_DispatchComputeIndirect(GLintptr indirect)

    ctx->Driver.DispatchComputeIndirect(ctx, indirect);
 }
+
+void GLAPIENTRY
+_mesa_DispatchComputeGroupSizeARB(GLuint num_groups_x, GLuint num_groups_y,
+                                  GLuint num_groups_z, GLuint group_size_x,
+                                  GLuint group_size_y, GLuint group_size_z)
+{
+
+}
diff --git a/src/mesa/main/compute.h b/src/mesa/main/compute.h
index 0cc034f..8018bbb 100644
--- a/src/mesa/main/compute.h
+++ b/src/mesa/main/compute.h
@@ -35,4 +35,9 @@ _mesa_DispatchCompute(GLuint num_groups_x,
 extern void GLAPIENTRY
 _mesa_DispatchComputeIndirect(GLintptr indirect);

+extern void GLAPIENTRY
+_mesa_DispatchComputeGroupSizeARB(GLuint num_groups_x, GLuint num_groups_y,
+                                  GLuint num_groups_z, GLuint group_size_x,
+                                  GLuint group_size_y, GLuint group_size_z);
+
 #endif
diff --git a/src/mesa/main/tests/dispatch_sanity.cpp 
b/src/mesa/main/tests/dispatch_sanity.cpp
index 42fe61a..7faeabe 100644
--- a/src/mesa/main/tests/dispatch_sanity.cpp
+++ b/src/mesa/main/tests/dispatch_sanity.cpp
@@ -942,6 +942,9 @@ const struct function common_desktop_functions_possible[] = 
{
    { "glDispatchCompute", 43, -1 },
    { "glDispatchComputeIndirect", 43, -1 },

+   /* GL_ARB_compute_variable_group_size */
+   { "glDispatchComputeGroupSizeARB", 43, -1 },
+
    /* GL_EXT_polygon_offset_clamp */
    { "glPolygonOffsetClampEXT", 11, -1 },



_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to