[Mesa-dev] [PATCH v2 01/28] glapi: add ARB_gpu_shader_fp64 (v2)

Ian Romanick idr at freedesktop.org
Thu Feb 5 23:13:51 PST 2015


This patch is

Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

On 02/06/2015 06:56 AM, Ilia Mirkin wrote:
> From: Dave Airlie <airlied at 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 <airlied at 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);
> 



More information about the mesa-dev mailing list