[Mesa-dev] [PATCH 01/11] glapi: add entry points for GL_ARB_compute_variable_group_size
Ian Romanick
idr at freedesktop.org
Thu Sep 8 20:58:45 UTC 2016
On 09/08/2016 01:31 PM, Samuel Pitoiset wrote:
> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at 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".
With that fixed, this patch is
Reviewed-by: Ian Romanick <ian.d.romanick at 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 },
>
>
More information about the mesa-dev
mailing list