diff options
author | Samuel Pitoiset <[email protected]> | 2017-06-01 12:43:24 +0200 |
---|---|---|
committer | Samuel Pitoiset <[email protected]> | 2017-06-07 11:04:40 +0200 |
commit | 98d5667f4b5ba67a482d34779471ddfbbc521d84 (patch) | |
tree | f09a71a27bef395fd5b7b060e1a30555820c5c43 | |
parent | 7b104d9c50bb258ee8de6838a01c7ad0863bf4d4 (diff) |
mesa: add KHR_no_error support for glTexSubImage*D()
Signed-off-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Timothy Arceri <[email protected]>
-rw-r--r-- | src/mapi/glapi/gen/gl_API.xml | 6 | ||||
-rw-r--r-- | src/mesa/main/teximage.c | 43 | ||||
-rw-r--r-- | src/mesa/main/teximage.h | 18 |
3 files changed, 64 insertions, 3 deletions
diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml index 5058c8c7779..2ee3186b3ed 100644 --- a/src/mapi/glapi/gen/gl_API.xml +++ b/src/mapi/glapi/gen/gl_API.xml @@ -3299,7 +3299,7 @@ <glx rop="4122"/> </function> - <function name="TexSubImage1D"> + <function name="TexSubImage1D" no_error="true"> <param name="target" type="GLenum"/> <param name="level" type="GLint"/> <param name="xoffset" type="GLint"/> @@ -3311,7 +3311,7 @@ <glx rop="4099" large="true"/> </function> - <function name="TexSubImage2D" es1="1.0" es2="2.0"> + <function name="TexSubImage2D" es1="1.0" es2="2.0" no_error="true"> <param name="target" type="GLenum"/> <param name="level" type="GLint"/> <param name="xoffset" type="GLint"/> @@ -4025,7 +4025,7 @@ <glx rop="4114" large="true"/> </function> - <function name="TexSubImage3D" es2="3.0"> + <function name="TexSubImage3D" es2="3.0" no_error="true"> <param name="target" type="GLenum"/> <param name="level" type="GLint"/> <param name="xoffset" type="GLint"/> diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index f4c14d8e7d3..34d3e0864dc 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -3414,6 +3414,20 @@ texturesubimage(struct gl_context *ctx, GLuint dims, void GLAPIENTRY +_mesa_TexSubImage1D_no_error(GLenum target, GLint level, + GLint xoffset, GLsizei width, + GLenum format, GLenum type, + const GLvoid *pixels) +{ + GET_CURRENT_CONTEXT(ctx); + texsubimage(ctx, 1, target, level, + xoffset, 0, 0, + width, 1, 1, + format, type, pixels); +} + + +void GLAPIENTRY _mesa_TexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, @@ -3428,6 +3442,21 @@ _mesa_TexSubImage1D( GLenum target, GLint level, void GLAPIENTRY +_mesa_TexSubImage2D_no_error(GLenum target, GLint level, + GLint xoffset, GLint yoffset, + GLsizei width, GLsizei height, + GLenum format, GLenum type, + const GLvoid *pixels) +{ + GET_CURRENT_CONTEXT(ctx); + texsubimage(ctx, 2, target, level, + xoffset, yoffset, 0, + width, height, 1, + format, type, pixels); +} + + +void GLAPIENTRY _mesa_TexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, @@ -3442,6 +3471,20 @@ _mesa_TexSubImage2D( GLenum target, GLint level, } +void GLAPIENTRY +_mesa_TexSubImage3D_no_error(GLenum target, 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); + texsubimage(ctx, 3, target, level, + xoffset, yoffset, zoffset, + width, height, depth, + format, type, pixels); +} + void GLAPIENTRY _mesa_TexSubImage3D( GLenum target, GLint level, diff --git a/src/mesa/main/teximage.h b/src/mesa/main/teximage.h index bc4e235d387..295e35abb15 100644 --- a/src/mesa/main/teximage.h +++ b/src/mesa/main/teximage.h @@ -271,12 +271,24 @@ _mesa_TexImage3DEXT( GLenum target, GLint level, GLenum internalformat, extern void GLAPIENTRY _mesa_EGLImageTargetTexture2DOES( GLenum target, GLeglImageOES image ); +void GLAPIENTRY +_mesa_TexSubImage1D_no_error(GLenum target, GLint level, GLint xoffset, + GLsizei width, + GLenum format, GLenum type, + const GLvoid *pixels); + extern void GLAPIENTRY _mesa_TexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels ); +void GLAPIENTRY +_mesa_TexSubImage2D_no_error(GLenum target, GLint level, + GLint xoffset, GLint yoffset, + GLsizei width, GLsizei height, + GLenum format, GLenum type, + const GLvoid *pixels); extern void GLAPIENTRY _mesa_TexSubImage2D( GLenum target, GLint level, @@ -285,6 +297,12 @@ _mesa_TexSubImage2D( GLenum target, GLint level, GLenum format, GLenum type, const GLvoid *pixels ); +void GLAPIENTRY +_mesa_TexSubImage3D_no_error(GLenum target, 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_TexSubImage3D( GLenum target, GLint level, |