[Mesa-dev] [PATCH v3 (part2) 51/56] glapi: add ARB_shader_storage_block_buffer_object
Iago Toral Quiroga
itoral at igalia.com
Tue Jul 14 00:46:53 PDT 2015
From: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
v2:
- Add ShaderStorageBlockBinding to static_data.py
Signed-off-by: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
Reviewed-by: Jordan Justen <jordan.l.justen at intel.com>
---
.../glapi/gen/ARB_shader_storage_buffer_object.xml | 36 ++++++++++++++++++++++
src/mapi/glapi/gen/GL4x.xml | 18 ++++++++++-
src/mapi/glapi/gen/Makefile.am | 1 +
src/mapi/glapi/gen/gl_API.xml | 6 +++-
src/mapi/glapi/gen/static_data.py | 1 +
5 files changed, 60 insertions(+), 2 deletions(-)
create mode 100644 src/mapi/glapi/gen/ARB_shader_storage_buffer_object.xml
diff --git a/src/mapi/glapi/gen/ARB_shader_storage_buffer_object.xml b/src/mapi/glapi/gen/ARB_shader_storage_buffer_object.xml
new file mode 100644
index 0000000..6901bdf
--- /dev/null
+++ b/src/mapi/glapi/gen/ARB_shader_storage_buffer_object.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+
+<category name="GL_ARB_shader_storage_buffer" number="137">
+
+<enum name="SHADER_STORAGE_BUFFER" value="0x90D2" />
+<enum name="SHADER_STORAGE_BUFFER_BINDING" value="0x90D3" />
+<enum name="SHADER_STORAGE_BUFFER_START" value="0x90D4" />
+<enum name="SHADER_STORAGE_BUFFER_SIZE" value="0x90D5" />
+<enum name="MAX_VERTEX_SHADER_STORAGE_BLOCKS" value="0x90D6" />
+<enum name="MAX_GEOMETRY_SHADER_STORAGE_BLOCKS" value="0x90D7" />
+<enum name="MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS" value="0x90D8" />
+<enum name="MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS" value="0x90D9" />
+<enum name="MAX_FRAGMENT_SHADER_STORAGE_BLOCKS" value="0x90DA" />
+<enum name="MAX_COMPUTE_SHADER_STORAGE_BLOCKS" value="0x90DB" />
+<enum name="MAX_COMBINED_SHADER_STORAGE_BLOCKS" value="0x90DC" />
+<enum name="MAX_SHADER_STORAGE_BUFFER_BINDINGS" value="0x90DD" />
+<enum name="MAX_SHADER_STORAGE_BLOCK_SIZE" value="0x90DE" />
+<enum name="SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT" value="0x90DF" />
+<enum name="SHADER_STORAGE_BARRIER_BIT" value="0x2000" />
+<enum name="MAX_COMBINED_SHADER_OUTPUT_RESOURCES" value="0x8F39" />
+
+<!-- Duplicated with GL3x.xml: BindBufferRange, BindBufferBase,
+ GetIntegeri_v -->
+
+<function name="ShaderStorageBlockBinding">
+ <param name="program" type="GLuint" />
+ <param name="shaderStorageBlockIndex" type="GLuint" />
+ <param name="shaderStorageBlockBinding" type="GLuint" />
+</function>
+
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/GL4x.xml b/src/mapi/glapi/gen/GL4x.xml
index 94ddfb7..c762439 100644
--- a/src/mapi/glapi/gen/GL4x.xml
+++ b/src/mapi/glapi/gen/GL4x.xml
@@ -41,7 +41,23 @@
</category>
<category name="4.3">
- <enum name="DEPTH_STENCIL_TEXTURE_MODE" value="0x90EA"/>
+ <enum name="SHADER_STORAGE_BARRIER_BIT" value="0x2000" />
+ <enum name="MAX_COMBINED_SHADER_OUTPUT_RESOURCES" value="0x8F39" />
+ <enum name="SHADER_STORAGE_BUFFER" value="0x90D2"/>
+ <enum name="SHADER_STORAGE_BUFFER_BINDING" value="0x90D3"/>
+ <enum name="SHADER_STORAGE_BUFFER_START" value="0x90D4"/>
+ <enum name="SHADER_STORAGE_BUFFER_SIZE" value="0x90D5"/>
+ <enum name="MAX_VERTEX_SHADER_STORAGE_BLOCKS" value="0x90D6" />
+ <enum name="MAX_GEOMETRY_SHADER_STORAGE_BLOCKS" value="0x90D7" />
+ <enum name="MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS" value="0x90D8" />
+ <enum name="MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS" value="0x90D9" />
+ <enum name="MAX_FRAGMENT_SHADER_STORAGE_BLOCKS" value="0x90DA" />
+ <enum name="MAX_COMPUTE_SHADER_STORAGE_BLOCKS" value="0x90DB" />
+ <enum name="MAX_COMBINED_SHADER_STORAGE_BLOCKS" value="0x90DC" />
+ <enum name="MAX_SHADER_STORAGE_BUFFER_BINDINGS" value="0x90DD" />
+ <enum name="MAX_SHADER_STORAGE_BLOCK_SIZE" value="0x90DE" />
+ <enum name="SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT" value="0x90DF" />
+ <enum name="DEPTH_STENCIL_TEXTURE_MODE" value="0x90EA"/>
</category>
</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/Makefile.am b/src/mapi/glapi/gen/Makefile.am
index 5b163b0..420993d 100644
--- a/src/mapi/glapi/gen/Makefile.am
+++ b/src/mapi/glapi/gen/Makefile.am
@@ -151,6 +151,7 @@ API_XML = \
ARB_separate_shader_objects.xml \
ARB_shader_atomic_counters.xml \
ARB_shader_image_load_store.xml \
+ ARB_shader_storage_buffer_object.xml \
ARB_sync.xml \
ARB_texture_barrier.xml \
ARB_texture_buffer_object.xml \
diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml
index 2f33075..ef91371 100644
--- a/src/mapi/glapi/gen/gl_API.xml
+++ b/src/mapi/glapi/gen/gl_API.xml
@@ -8205,7 +8205,11 @@
<xi:include href="ARB_program_interface_query.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-<!-- ARB extensions #135...#138 -->
+<!-- ARB extensions #135...#136 -->
+
+<xi:include href="ARB_shader_storage_buffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<!-- ARB extensions #138 -->
<xi:include href="ARB_texture_buffer_range.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
diff --git a/src/mapi/glapi/gen/static_data.py b/src/mapi/glapi/gen/static_data.py
index 142c503..7dd7edc 100644
--- a/src/mapi/glapi/gen/static_data.py
+++ b/src/mapi/glapi/gen/static_data.py
@@ -1305,6 +1305,7 @@ functions = [
"ShaderBinary",
"ShaderSource",
"ShaderSourceARB",
+ "ShaderStorageBlockBinding",
"StencilFunc",
"StencilFuncSeparate",
"StencilMask",
--
1.9.1
More information about the mesa-dev
mailing list