This patch is Reviewed-by: Ian Romanick <ian.d.roman...@intel.com>
On 02/06/2015 06:56 AM, Ilia Mirkin wrote: > From: Dave Airlie <airl...@redhat.com> > > Just add the xml file covering this extension, > and dummy interface files in mesa, and fix up > sanity tests. > > v2: > Enable ProgramUniform*d* from ARB_separate_shader_objects (Ian) > use 40 instead of 43 for dispatch_sanity.cpp (Chris) > uncomment PU sanity tests. > > Signed-off-by: Dave Airlie <airl...@redhat.com> > --- > src/mapi/glapi/gen/ARB_gpu_shader_fp64.xml | 143 +++++++++++++++ > src/mapi/glapi/gen/ARB_separate_shader_objects.xml | 2 - > src/mapi/glapi/gen/Makefile.am | 1 + > src/mapi/glapi/gen/gl_API.xml | 2 + > src/mesa/main/tests/dispatch_sanity.cpp | 70 ++++---- > src/mesa/main/uniforms.c | 195 > +++++++++++++++++++++ > src/mesa/main/uniforms.h | 89 ++++++++++ > 7 files changed, 465 insertions(+), 37 deletions(-) > create mode 100644 src/mapi/glapi/gen/ARB_gpu_shader_fp64.xml > > diff --git a/src/mapi/glapi/gen/ARB_gpu_shader_fp64.xml > b/src/mapi/glapi/gen/ARB_gpu_shader_fp64.xml > new file mode 100644 > index 0000000..4f860ef > --- /dev/null > +++ b/src/mapi/glapi/gen/ARB_gpu_shader_fp64.xml > @@ -0,0 +1,143 @@ > +<?xml version="1.0"?> > +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> > + > +<OpenGLAPI> > + > +<category name="GL_ARB_gpu_shader_fp64" number="89"> > + > + <function name="Uniform1d" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="x" type="GLdouble"/> > + </function> > + > + <function name="Uniform2d" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="x" type="GLdouble"/> > + <param name="y" type="GLdouble"/> > + </function> > + > + <function name="Uniform3d" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="x" type="GLdouble"/> > + <param name="y" type="GLdouble"/> > + <param name="z" type="GLdouble"/> > + </function> > + > + <function name="Uniform4d" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="x" type="GLdouble"/> > + <param name="y" type="GLdouble"/> > + <param name="z" type="GLdouble"/> > + <param name="w" type="GLdouble"/> > + </function> > + > + <function name="Uniform1dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="Uniform2dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="Uniform3dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="Uniform4dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="UniformMatrix2dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="transpose" type="GLboolean"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="UniformMatrix3dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="transpose" type="GLboolean"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="UniformMatrix4dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="transpose" type="GLboolean"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="UniformMatrix2x3dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="transpose" type="GLboolean"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="UniformMatrix2x4dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="transpose" type="GLboolean"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="UniformMatrix3x2dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="transpose" type="GLboolean"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="UniformMatrix3x4dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="transpose" type="GLboolean"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="UniformMatrix4x2dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="transpose" type="GLboolean"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="UniformMatrix4x3dv" offset="assign"> > + <param name="location" type="GLint"/> > + <param name="count" type="GLsizei"/> > + <param name="transpose" type="GLboolean"/> > + <param name="value" type="const GLdouble *"/> > + </function> > + > + <function name="GetUniformdv" offset="assign"> > + <param name="program" type="GLuint"/> > + <param name="location" type="GLint"/> > + <param name="params" type="GLdouble *"/> > + </function> > + > + <enum name="DOUBLE_VEC2" value="0x8FFC"/> > + <enum name="DOUBLE_VEC3" value="0x8FFD"/> > + <enum name="DOUBLE_VEC4" value="0x8FFE"/> > + > + <enum name="DOUBLE_MAT2" value="0x8F46"/> > + <enum name="DOUBLE_MAT3" value="0x8F47"/> > + <enum name="DOUBLE_MAT4" value="0x8F48"/> > + <enum name="DOUBLE_MAT2x3" value="0x8F49"/> > + <enum name="DOUBLE_MAT2x4" value="0x8F4A"/> > + <enum name="DOUBLE_MAT3x2" value="0x8F4B"/> > + <enum name="DOUBLE_MAT3x4" value="0x8F4C"/> > + <enum name="DOUBLE_MAT4x2" value="0x8F4D"/> > + <enum name="DOUBLE_MAT4x3" value="0x8F4E"/> > +</category> > + > +</OpenGLAPI> > + > diff --git a/src/mapi/glapi/gen/ARB_separate_shader_objects.xml > b/src/mapi/glapi/gen/ARB_separate_shader_objects.xml > index d006917..96ae2b9 100644 > --- a/src/mapi/glapi/gen/ARB_separate_shader_objects.xml > +++ b/src/mapi/glapi/gen/ARB_separate_shader_objects.xml > @@ -282,7 +282,6 @@ > <param name="infoLog" type="GLchar *" /> > </function> > > - <!-- depends on GL_ARB_gpu_shader_fp64 > <function name="ProgramUniform1d" offset="assign" > static_dispatch="false"> > <param name="program" type="GLuint" /> > <param name="location" type="GLint" /> > @@ -396,6 +395,5 @@ > <param name="count" type="GLsizei" /> > <param name="value" type="const GLdouble *" /> > </function> > - --> > </category> > </OpenGLAPI> > diff --git a/src/mapi/glapi/gen/Makefile.am b/src/mapi/glapi/gen/Makefile.am > index 35d9d01..fe2c78c 100644 > --- a/src/mapi/glapi/gen/Makefile.am > +++ b/src/mapi/glapi/gen/Makefile.am > @@ -132,6 +132,7 @@ API_XML = \ > ARB_framebuffer_object.xml \ > ARB_geometry_shader4.xml \ > ARB_get_program_binary.xml \ > + ARB_gpu_shader_fp64.xml \ > ARB_gpu_shader5.xml \ > ARB_instanced_arrays.xml \ > ARB_internalformat_query.xml \ > diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml > index 17bf62a..a780d5f 100644 > --- a/src/mapi/glapi/gen/gl_API.xml > +++ b/src/mapi/glapi/gen/gl_API.xml > @@ -8213,6 +8213,8 @@ > > <xi:include href="ARB_gpu_shader5.xml" > xmlns:xi="http://www.w3.org/2001/XInclude"/> > > +<xi:include href="ARB_gpu_shader_fp64.xml" > xmlns:xi="http://www.w3.org/2001/XInclude"/> > + > <category name="GL_ARB_transform_feedback3" number="94"> > <enum name="MAX_TRANSFORM_FEEDBACK_BUFFERS" value="0x8E70"/> > <enum name="MAX_VERTEX_STREAMS" value="0x8E71"/> > diff --git a/src/mesa/main/tests/dispatch_sanity.cpp > b/src/mesa/main/tests/dispatch_sanity.cpp > index 1f1a3a8..c14ad32 100644 > --- a/src/mesa/main/tests/dispatch_sanity.cpp > +++ b/src/mesa/main/tests/dispatch_sanity.cpp > @@ -669,24 +669,24 @@ const struct function gl_core_functions_possible[] = { > { "glVertexAttribP4uiv", 43, -1 }, > { "glDrawArraysIndirect", 43, -1 }, > { "glDrawElementsIndirect", 43, -1 }, > -// { "glUniform1d", 43, -1 }, // XXX: Add to xml > -// { "glUniform2d", 43, -1 }, // XXX: Add to xml > -// { "glUniform3d", 43, -1 }, // XXX: Add to xml > -// { "glUniform4d", 43, -1 }, // XXX: Add to xml > -// { "glUniform1dv", 43, -1 }, // XXX: Add to xml > -// { "glUniform2dv", 43, -1 }, // XXX: Add to xml > -// { "glUniform3dv", 43, -1 }, // XXX: Add to xml > -// { "glUniform4dv", 43, -1 }, // XXX: Add to xml > -// { "glUniformMatrix2dv", 43, -1 }, // XXX: Add to xml > -// { "glUniformMatrix3dv", 43, -1 }, // XXX: Add to xml > -// { "glUniformMatrix4dv", 43, -1 }, // XXX: Add to xml > -// { "glUniformMatrix2x3dv", 43, -1 }, // XXX: Add to xml > -// { "glUniformMatrix2x4dv", 43, -1 }, // XXX: Add to xml > -// { "glUniformMatrix3x2dv", 43, -1 }, // XXX: Add to xml > -// { "glUniformMatrix3x4dv", 43, -1 }, // XXX: Add to xml > -// { "glUniformMatrix4x2dv", 43, -1 }, // XXX: Add to xml > -// { "glUniformMatrix4x3dv", 43, -1 }, // XXX: Add to xml > -// { "glGetUniformdv", 43, -1 }, // XXX: Add to xml > + { "glUniform1d", 40, -1 }, > + { "glUniform2d", 40, -1 }, > + { "glUniform3d", 40, -1 }, > + { "glUniform4d", 40, -1 }, > + { "glUniform1dv", 40, -1 }, > + { "glUniform2dv", 40, -1 }, > + { "glUniform3dv", 40, -1 }, > + { "glUniform4dv", 40, -1 }, > + { "glUniformMatrix2dv", 40, -1 }, > + { "glUniformMatrix3dv", 40, -1 }, > + { "glUniformMatrix4dv", 40, -1 }, > + { "glUniformMatrix2x3dv", 40, -1 }, > + { "glUniformMatrix2x4dv", 40, -1 }, > + { "glUniformMatrix3x2dv", 40, -1 }, > + { "glUniformMatrix3x4dv", 40, -1 }, > + { "glUniformMatrix4x2dv", 40, -1 }, > + { "glUniformMatrix4x3dv", 40, -1 }, > + { "glGetUniformdv", 43, -1 }, > // { "glGetSubroutineUniformLocation", 43, -1 }, // XXX: Add to xml > // { "glGetSubroutineIndex", 43, -1 }, // XXX: Add to xml > // { "glGetActiveSubroutineUniformiv", 43, -1 }, // XXX: Add to xml > @@ -728,52 +728,52 @@ const struct function gl_core_functions_possible[] = { > { "glProgramUniform1iv", 43, -1 }, > { "glProgramUniform1f", 43, -1 }, > { "glProgramUniform1fv", 43, -1 }, > -// { "glProgramUniform1d", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniform1dv", 43, -1 }, // XXX: Add to xml > + { "glProgramUniform1d", 40, -1 }, > + { "glProgramUniform1dv", 40, -1 }, > { "glProgramUniform1ui", 43, -1 }, > { "glProgramUniform1uiv", 43, -1 }, > { "glProgramUniform2i", 43, -1 }, > { "glProgramUniform2iv", 43, -1 }, > { "glProgramUniform2f", 43, -1 }, > { "glProgramUniform2fv", 43, -1 }, > -// { "glProgramUniform2d", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniform2dv", 43, -1 }, // XXX: Add to xml > + { "glProgramUniform2d", 40, -1 }, > + { "glProgramUniform2dv", 40, -1 }, > { "glProgramUniform2ui", 43, -1 }, > { "glProgramUniform2uiv", 43, -1 }, > { "glProgramUniform3i", 43, -1 }, > { "glProgramUniform3iv", 43, -1 }, > { "glProgramUniform3f", 43, -1 }, > { "glProgramUniform3fv", 43, -1 }, > -// { "glProgramUniform3d", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniform3dv", 43, -1 }, // XXX: Add to xml > + { "glProgramUniform3d", 40, -1 }, > + { "glProgramUniform3dv", 40, -1 }, > { "glProgramUniform3ui", 43, -1 }, > { "glProgramUniform3uiv", 43, -1 }, > { "glProgramUniform4i", 43, -1 }, > { "glProgramUniform4iv", 43, -1 }, > { "glProgramUniform4f", 43, -1 }, > { "glProgramUniform4fv", 43, -1 }, > -// { "glProgramUniform4d", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniform4dv", 43, -1 }, // XXX: Add to xml > + { "glProgramUniform4d", 40, -1 }, > + { "glProgramUniform4dv", 40, -1 }, > { "glProgramUniform4ui", 43, -1 }, > { "glProgramUniform4uiv", 43, -1 }, > { "glProgramUniformMatrix2fv", 43, -1 }, > { "glProgramUniformMatrix3fv", 43, -1 }, > { "glProgramUniformMatrix4fv", 43, -1 }, > -// { "glProgramUniformMatrix2dv", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniformMatrix3dv", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniformMatrix4dv", 43, -1 }, // XXX: Add to xml > + { "glProgramUniformMatrix2dv", 40, -1 }, > + { "glProgramUniformMatrix3dv", 40, -1 }, > + { "glProgramUniformMatrix4dv", 40, -1 }, > { "glProgramUniformMatrix2x3fv", 43, -1 }, > { "glProgramUniformMatrix3x2fv", 43, -1 }, > { "glProgramUniformMatrix2x4fv", 43, -1 }, > { "glProgramUniformMatrix4x2fv", 43, -1 }, > { "glProgramUniformMatrix3x4fv", 43, -1 }, > { "glProgramUniformMatrix4x3fv", 43, -1 }, > -// { "glProgramUniformMatrix2x3dv", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniformMatrix3x2dv", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniformMatrix2x4dv", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniformMatrix4x2dv", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniformMatrix3x4dv", 43, -1 }, // XXX: Add to xml > -// { "glProgramUniformMatrix4x3dv", 43, -1 }, // XXX: Add to xml > + { "glProgramUniformMatrix2x3dv", 40, -1 }, > + { "glProgramUniformMatrix3x2dv", 40, -1 }, > + { "glProgramUniformMatrix2x4dv", 40, -1 }, > + { "glProgramUniformMatrix4x2dv", 40, -1 }, > + { "glProgramUniformMatrix3x4dv", 40, -1 }, > + { "glProgramUniformMatrix4x3dv", 40, -1 }, > { "glValidateProgramPipeline", 43, -1 }, > { "glGetProgramPipelineInfoLog", 43, -1 }, > // { "glVertexAttribL1d", 43, -1 }, // XXX: Add to xml > diff --git a/src/mesa/main/uniforms.c b/src/mesa/main/uniforms.c > index d2d70e7..4e3c1ab 100644 > --- a/src/mesa/main/uniforms.c > +++ b/src/mesa/main/uniforms.c > @@ -1338,3 +1338,198 @@ _mesa_GetActiveAtomicCounterBufferiv(GLuint program, > GLuint bufferIndex, > return; > } > } > + > +void GLAPIENTRY > +_mesa_Uniform1d(GLint location, GLdouble v0) > +{ > +} > + > +void GLAPIENTRY > +_mesa_Uniform2d(GLint location, GLdouble v0, GLdouble v1) > +{ > +} > + > +void GLAPIENTRY > +_mesa_Uniform3d(GLint location, GLdouble v0, GLdouble v1, GLdouble v2) > +{ > +} > + > +void GLAPIENTRY > +_mesa_Uniform4d(GLint location, GLdouble v0, GLdouble v1, GLdouble v2, > + GLdouble v3) > +{ > +} > + > +void GLAPIENTRY > +_mesa_Uniform1dv(GLint location, GLsizei count, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_Uniform2dv(GLint location, GLsizei count, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_Uniform3dv(GLint location, GLsizei count, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_Uniform4dv(GLint location, GLsizei count, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_UniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_UniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_UniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_UniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_UniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_UniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_UniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_UniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_UniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniform1d(GLuint program, GLint location, GLdouble v0) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble > v1) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble > v1, > + GLdouble v2) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble > v1, > + GLdouble v2, GLdouble v3) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniform1dv(GLuint program, GLint location, GLsizei count, > + const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniform2dv(GLuint program, GLint location, GLsizei count, > + const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniform3dv(GLuint program, GLint location, GLsizei count, > + const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniform4dv(GLuint program, GLint location, GLsizei count, > + const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, > + GLboolean transpose, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, > + GLboolean transpose, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, > + GLboolean transpose, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble * value) > +{ > +} > + > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble * value) > +{ > +} > diff --git a/src/mesa/main/uniforms.h b/src/mesa/main/uniforms.h > index 0a9ee7d..520fbbf 100644 > --- a/src/mesa/main/uniforms.h > +++ b/src/mesa/main/uniforms.h > @@ -254,6 +254,95 @@ _mesa_GetActiveUniformsiv(GLuint program, > void GLAPIENTRY > _mesa_GetUniformiv(GLuint, GLint, GLint *); > > +void GLAPIENTRY > +_mesa_Uniform1d(GLint, GLdouble); > +void GLAPIENTRY > +_mesa_Uniform2d(GLint, GLdouble, GLdouble); > +void GLAPIENTRY > +_mesa_Uniform3d(GLint, GLdouble, GLdouble, GLdouble); > +void GLAPIENTRY > +_mesa_Uniform4d(GLint, GLdouble, GLdouble, GLdouble, GLdouble); > + > +void GLAPIENTRY > +_mesa_Uniform1dv(GLint, GLsizei, const GLdouble *); > +void GLAPIENTRY > +_mesa_Uniform2dv(GLint, GLsizei, const GLdouble *); > +void GLAPIENTRY > +_mesa_Uniform3dv(GLint, GLsizei, const GLdouble *); > +void GLAPIENTRY > +_mesa_Uniform4dv(GLint, GLsizei, const GLdouble *); > + > +void GLAPIENTRY > +_mesa_UniformMatrix2dv(GLint, GLsizei, GLboolean, const GLdouble *); > +void GLAPIENTRY > +_mesa_UniformMatrix3dv(GLint, GLsizei, GLboolean, const GLdouble *); > +void GLAPIENTRY > +_mesa_UniformMatrix4dv(GLint, GLsizei, GLboolean, const GLdouble *); > +void GLAPIENTRY > +_mesa_UniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value); > +void GLAPIENTRY > +_mesa_UniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value); > +void GLAPIENTRY > +_mesa_UniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value); > +void GLAPIENTRY > +_mesa_UniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value); > +void GLAPIENTRY > +_mesa_UniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value); > +void GLAPIENTRY > +_mesa_UniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, > + const GLdouble *value); > + > +void GLAPIENTRY > +_mesa_ProgramUniform1d(GLuint program, GLint, GLdouble); > +void GLAPIENTRY > +_mesa_ProgramUniform2d(GLuint program, GLint, GLdouble, GLdouble); > +void GLAPIENTRY > +_mesa_ProgramUniform3d(GLuint program, GLint, GLdouble, GLdouble, GLdouble); > +void GLAPIENTRY > +_mesa_ProgramUniform4d(GLuint program, GLint, GLdouble, GLdouble, GLdouble, > GLdouble); > + > +void GLAPIENTRY > +_mesa_ProgramUniform1dv(GLuint program, GLint, GLsizei, const GLdouble *); > +void GLAPIENTRY > +_mesa_ProgramUniform2dv(GLuint program, GLint, GLsizei, const GLdouble *); > +void GLAPIENTRY > +_mesa_ProgramUniform3dv(GLuint program, GLint, GLsizei, const GLdouble *); > +void GLAPIENTRY > +_mesa_ProgramUniform4dv(GLuint program, GLint, GLsizei, const GLdouble *); > + > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix2dv(GLuint program, GLint, GLsizei, GLboolean, > + const GLdouble *); > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix3dv(GLuint program, GLint, GLsizei, GLboolean, > + const GLdouble *); > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix4dv(GLuint program, GLint, GLsizei, GLboolean, > + const GLdouble *); > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble *value); > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble *value); > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble *value); > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble *value); > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble *value); > +void GLAPIENTRY > +_mesa_ProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei > count, > + GLboolean transpose, const GLdouble *value); > + > long > _mesa_parse_program_resource_name(const GLchar *name, > const GLchar **out_base_name_end); > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev