mesa: add KHR_no_error support to glTextureSubImage*D()
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 19 Jul 2017 13:36:01 +0000 (15:36 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Mon, 31 Jul 2017 11:53:40 +0000 (13:53 +0200)
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
src/mapi/glapi/gen/ARB_direct_state_access.xml
src/mesa/main/teximage.c
src/mesa/main/teximage.h

index f85d2d5ed14eaa3a1b321606e06b72bc312fe727..1c62ac6f2e46990b8a432f3235d1372631748080 100644 (file)
       <param name="fixedsamplelocations" type="GLboolean" />
    </function>
 
-   <function name="TextureSubImage1D">
+   <function name="TextureSubImage1D" no_error="true">
       <param name="texture" type="GLuint" />
       <param name="level" type="GLint" />
       <param name="xoffset" type="GLint" />
       <param name="pixels" type="const GLvoid *" />
    </function>
 
-   <function name="TextureSubImage2D">
+   <function name="TextureSubImage2D" no_error="true">
       <param name="texture" type="GLuint" />
       <param name="level" type="GLint" />
       <param name="xoffset" type="GLint" />
       <param name="pixels" type="const GLvoid *" />
    </function>
 
-   <function name="TextureSubImage3D">
+   <function name="TextureSubImage3D" no_error="true">
       <param name="texture" type="GLuint" />
       <param name="level" type="GLint" />
       <param name="xoffset" type="GLint" />
index 3839c9fede41e42085f1d78a5065bbd536864cd4..7523b9fc9811a68c82a0b89caa101a505423ace2 100644 (file)
@@ -3494,6 +3494,20 @@ texturesubimage_error(struct gl_context *ctx, GLuint dims,
 }
 
 
+static void
+texturesubimage_no_error(struct gl_context *ctx, GLuint dims,
+                         GLuint texture, GLint level,
+                         GLint xoffset, GLint yoffset, GLint zoffset,
+                         GLsizei width, GLsizei height, GLsizei depth,
+                         GLenum format, GLenum type, const GLvoid *pixels,
+                         const char *callerName)
+{
+   texturesubimage(ctx, dims, texture, level, xoffset, yoffset, zoffset,
+                   width, height, depth, format, type, pixels, callerName,
+                   true);
+}
+
+
 void GLAPIENTRY
 _mesa_TexSubImage1D_no_error(GLenum target, GLint level,
                              GLint xoffset, GLsizei width,
@@ -3581,6 +3595,18 @@ _mesa_TexSubImage3D( GLenum target, GLint level,
                    format, type, pixels, "glTexSubImage3D");
 }
 
+
+void GLAPIENTRY
+_mesa_TextureSubImage1D_no_error(GLuint texture, GLint level, GLint xoffset,
+                                 GLsizei width, GLenum format, GLenum type,
+                                 const GLvoid *pixels)
+{
+   GET_CURRENT_CONTEXT(ctx);
+   texturesubimage_no_error(ctx, 1, texture, level, xoffset, 0, 0, width, 1, 1,
+                            format, type, pixels, "glTextureSubImage1D");
+}
+
+
 void GLAPIENTRY
 _mesa_TextureSubImage1D(GLuint texture, GLint level,
                         GLint xoffset, GLsizei width,
@@ -3593,6 +3619,19 @@ _mesa_TextureSubImage1D(GLuint texture, GLint level,
 }
 
 
+void GLAPIENTRY
+_mesa_TextureSubImage2D_no_error(GLuint texture, GLint level, GLint xoffset,
+                                 GLint yoffset, GLsizei width, GLsizei height,
+                                 GLenum format, GLenum type,
+                                 const GLvoid *pixels)
+{
+   GET_CURRENT_CONTEXT(ctx);
+   texturesubimage_no_error(ctx, 2, texture, level, xoffset, yoffset, 0, width,
+                            height, 1, format, type, pixels,
+                            "glTextureSubImage2D");
+}
+
+
 void GLAPIENTRY
 _mesa_TextureSubImage2D(GLuint texture, GLint level,
                         GLint xoffset, GLint yoffset,
@@ -3607,6 +3646,19 @@ _mesa_TextureSubImage2D(GLuint texture, GLint level,
 }
 
 
+void GLAPIENTRY
+_mesa_TextureSubImage3D_no_error(GLuint texture, GLint level, GLint xoffset,
+                                 GLint yoffset, GLint zoffset, GLsizei width,
+                                 GLsizei height, GLsizei depth, GLenum format,
+                                 GLenum type, const GLvoid *pixels)
+{
+   GET_CURRENT_CONTEXT(ctx);
+   texturesubimage_no_error(ctx, 3, texture, level, xoffset, yoffset, zoffset,
+                            width, height, depth, format, type, pixels,
+                            "glTextureSubImage3D");
+}
+
+
 void GLAPIENTRY
 _mesa_TextureSubImage3D(GLuint texture, GLint level,
                         GLint xoffset, GLint yoffset, GLint zoffset,
index 04ddbb90e55b58fd48cc8c12dc9bb12ec5b7fd35..42c34489cfdb695b936c3e15ec38b58991248450 100644 (file)
@@ -318,12 +318,22 @@ _mesa_TexSubImage3D( GLenum target, GLint level,
                      GLenum format, GLenum type,
                      const GLvoid *pixels );
 
+void GLAPIENTRY
+_mesa_TextureSubImage1D_no_error(GLuint texture, GLint level, GLint xoffset,
+                                 GLsizei width, GLenum format, GLenum type,
+                                 const GLvoid *pixels);
+
 extern void GLAPIENTRY
 _mesa_TextureSubImage1D(GLuint texture, GLint level, GLint xoffset,
                         GLsizei width,
                         GLenum format, GLenum type,
                         const GLvoid *pixels);
 
+void GLAPIENTRY
+_mesa_TextureSubImage2D_no_error(GLuint texture, GLint level, GLint xoffset,
+                                 GLint yoffset, GLsizei width, GLsizei height,
+                                 GLenum format, GLenum type,
+                                 const GLvoid *pixels);
 
 extern void GLAPIENTRY
 _mesa_TextureSubImage2D(GLuint texture, GLint level,
@@ -332,6 +342,12 @@ _mesa_TextureSubImage2D(GLuint texture, GLint level,
                         GLenum format, GLenum type,
                         const GLvoid *pixels);
 
+void GLAPIENTRY
+_mesa_TextureSubImage3D_no_error(GLuint texture, GLint level, GLint xoffset,
+                                 GLint yoffset, GLint zoffset, GLsizei width,
+                                 GLsizei height, GLsizei depth, GLenum format,
+                                 GLenum type, const GLvoid *pixels);
+
 extern void GLAPIENTRY
 _mesa_TextureSubImage3D(GLuint texture, GLint level,
                         GLint xoffset, GLint yoffset, GLint zoffset,