summaryrefslogtreecommitdiffstats
path: root/src/mapi/glapi
diff options
context:
space:
mode:
authorChris Forbes <chrisf@ijw.co.nz>2014-08-10 20:38:53 +1200
committerDave Airlie <airlied@redhat.com>2015-07-23 17:25:13 +1000
commitb8f3e316bca2c9abd3c885a9447ecf29446d0ccb (patch)
treebfb25ee910ca52562ff8d840cfdc0a4502872edf /src/mapi/glapi
parent2ffe9b542116580571b157de8a89476b22694ea9 (diff)
glapi: Add ARB_shader_subroutine functions and enums (v2)
v2: fix output="true" and LENGTH typo Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Signed-off-by: Chris Forbes <chrisf@ijw.co.nz> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'src/mapi/glapi')
-rw-r--r--src/mapi/glapi/gen/ARB_shader_subroutine.xml84
-rw-r--r--src/mapi/glapi/gen/Makefile.am1
-rw-r--r--src/mapi/glapi/gen/gl_API.xml4
3 files changed, 88 insertions, 1 deletions
diff --git a/src/mapi/glapi/gen/ARB_shader_subroutine.xml b/src/mapi/glapi/gen/ARB_shader_subroutine.xml
new file mode 100644
index 00000000000..04b75cb8f59
--- /dev/null
+++ b/src/mapi/glapi/gen/ARB_shader_subroutine.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+<OpenGLAPI>
+
+<category name="GL_ARB_shader_subroutine" number="90">
+
+ <function name="GetSubroutineUniformLocation" offset="assign">
+ <param name="program" type="GLuint"/>
+ <param name="shadertype" type="GLenum"/>
+ <param name="name" type="const GLchar *"/>
+ <return type="GLint"/>
+ </function>
+
+ <function name="GetSubroutineIndex" offset="assign">
+ <param name="program" type="GLuint"/>
+ <param name="shadertype" type="GLenum"/>
+ <param name="name" type="const GLchar *"/>
+ <return type="GLuint"/>
+ </function>
+
+ <function name="GetActiveSubroutineUniformiv" offset="assign">
+ <param name="program" type="GLuint"/>
+ <param name="shadertype" type="GLenum"/>
+ <param name="index" type="GLuint"/>
+ <param name="pname" type="GLenum"/>
+ <param name="values" type="GLint *" output="true"/>
+ </function>
+
+ <function name="GetActiveSubroutineUniformName" offset="assign">
+ <param name="program" type="GLuint"/>
+ <param name="shadertype" type="GLenum"/>
+ <param name="index" type="GLuint"/>
+ <param name="bufsize" type="GLsizei"/>
+ <param name="length" type="GLsizei *" output="true"/>
+ <param name="name" type="GLchar *" output="true"/>
+ </function>
+
+ <function name="GetActiveSubroutineName" offset="assign">
+ <param name="program" type="GLuint"/>
+ <param name="shadertype" type="GLenum"/>
+ <param name="index" type="GLuint"/>
+ <param name="bufsize" type="GLsizei"/>
+ <param name="length" type="GLsizei *" output="true"/>
+ <param name="name" type="GLchar *" output="true"/>
+ </function>
+
+ <function name="UniformSubroutinesuiv" offset="assign">
+ <param name="shadertype" type="GLenum"/>
+ <param name="count" type="GLsizei"/>
+ <param name="indices" type="const GLuint *"/>
+ </function>
+
+ <function name="GetUniformSubroutineuiv" offset="assign">
+ <param name="shadertype" type="GLenum"/>
+ <param name="location" type="GLint"/>
+ <param name="params" type="GLuint *" output="true"/>
+ </function>
+
+ <function name="GetProgramStageiv" offset="assign">
+ <param name="program" type="GLuint"/>
+ <param name="shadertype" type="GLenum"/>
+ <param name="pname" type="GLenum"/>
+ <param name="values" type="GLint *" output="true"/>
+ </function>
+
+ <enum name="ACTIVE_SUBROUTINES" value="0x8DE5"/>
+ <enum name="ACTIVE_SUBROUTINE_UNIFORMS" value="0x8DE6"/>
+ <enum name="ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS" value="0x8E47"/>
+ <enum name="ACTIVE_SUBROUTINE_MAX_LENGTH" value="0x8E48"/>
+ <enum name="ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH" value="0x8E49"/>
+
+ <enum name="MAX_SUBROUTINES" value="0x8DE7"/>
+ <enum name="MAX_SUBROUTINE_UNIFORM_LOCATIONS" value="0x8DE8"/>
+
+ <enum name="NUM_COMPATIBLE_SUBROUTINES" value="0x8E4A"/>
+ <enum name="COMPATIBLE_SUBROUTINES" value="0x8E4B"/>
+
+ <!-- UNIFORM_SIZE, UNIFORM_NAME_LENGTH already in GL3.1 -->
+
+</category>
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/Makefile.am b/src/mapi/glapi/gen/Makefile.am
index 170898c60ea..7d9d1a61215 100644
--- a/src/mapi/glapi/gen/Makefile.am
+++ b/src/mapi/glapi/gen/Makefile.am
@@ -152,6 +152,7 @@ API_XML = \
ARB_separate_shader_objects.xml \
ARB_shader_atomic_counters.xml \
ARB_shader_image_load_store.xml \
+ ARB_shader_subroutine.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 4bcce3c3240..658efa485f6 100644
--- a/src/mapi/glapi/gen/gl_API.xml
+++ b/src/mapi/glapi/gen/gl_API.xml
@@ -8072,7 +8072,9 @@
<xi:include href="ARB_vertex_type_2_10_10_10_rev.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-<!-- ARB extensions #86...#90 -->
+<!-- ARB extensions #86...#89 -->
+
+<xi:include href="ARB_shader_subroutine.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
<xi:include href="ARB_tessellation_shader.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>