summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>2017-06-26 14:13:01 +0200
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>2017-06-28 10:25:13 +0200
commit836b48a8361a5e8409d0313c527ceb6800ebe870 (patch)
treea0cd81b44f7884f5352fc5b15e480147f74c049b /src
parent89510d26a998886f1cf3a3af81dd07929da8a9c9 (diff)
mesa: add KHR_no_error support for gl*ProgramPipelines()
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Diffstat (limited to 'src')
-rw-r--r--src/mapi/glapi/gen/ARB_direct_state_access.xml2
-rw-r--r--src/mapi/glapi/gen/ARB_separate_shader_objects.xml2
-rw-r--r--src/mesa/main/pipelineobj.c14
-rw-r--r--src/mesa/main/pipelineobj.h6
4 files changed, 22 insertions, 2 deletions
diff --git a/src/mapi/glapi/gen/ARB_direct_state_access.xml b/src/mapi/glapi/gen/ARB_direct_state_access.xml
index e8526d1c528..444d59d7098 100644
--- a/src/mapi/glapi/gen/ARB_direct_state_access.xml
+++ b/src/mapi/glapi/gen/ARB_direct_state_access.xml
@@ -682,7 +682,7 @@
<!-- Program Pipeline object functions -->
- <function name="CreateProgramPipelines">
+ <function name="CreateProgramPipelines" no_error="true">
<param name="n" type="GLsizei" />
<param name="pipelines" type="GLuint *" />
</function>
diff --git a/src/mapi/glapi/gen/ARB_separate_shader_objects.xml b/src/mapi/glapi/gen/ARB_separate_shader_objects.xml
index 54c1be3fe73..2273b4875d7 100644
--- a/src/mapi/glapi/gen/ARB_separate_shader_objects.xml
+++ b/src/mapi/glapi/gen/ARB_separate_shader_objects.xml
@@ -37,7 +37,7 @@
<param name="n" type="GLsizei" />
<param name="pipelines" type="const GLuint *" />
</function>
- <function name="GenProgramPipelines" es2="3.1">
+ <function name="GenProgramPipelines" es2="3.1" no_error="true">
<param name="n" type="GLsizei" />
<param name="pipelines" type="GLuint *" />
</function>
diff --git a/src/mesa/main/pipelineobj.c b/src/mesa/main/pipelineobj.c
index 89ab9cfb13c..f40111108c4 100644
--- a/src/mesa/main/pipelineobj.c
+++ b/src/mesa/main/pipelineobj.c
@@ -647,6 +647,13 @@ create_program_pipelines_err(struct gl_context *ctx, GLsizei n,
}
void GLAPIENTRY
+_mesa_GenProgramPipelines_no_error(GLsizei n, GLuint *pipelines)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ create_program_pipelines(ctx, n, pipelines, false);
+}
+
+void GLAPIENTRY
_mesa_GenProgramPipelines(GLsizei n, GLuint *pipelines)
{
GET_CURRENT_CONTEXT(ctx);
@@ -658,6 +665,13 @@ _mesa_GenProgramPipelines(GLsizei n, GLuint *pipelines)
}
void GLAPIENTRY
+_mesa_CreateProgramPipelines_no_error(GLsizei n, GLuint *pipelines)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ create_program_pipelines(ctx, n, pipelines, true);
+}
+
+void GLAPIENTRY
_mesa_CreateProgramPipelines(GLsizei n, GLuint *pipelines)
{
GET_CURRENT_CONTEXT(ctx);
diff --git a/src/mesa/main/pipelineobj.h b/src/mesa/main/pipelineobj.h
index 1bf6b713169..8cc5954eec7 100644
--- a/src/mesa/main/pipelineobj.h
+++ b/src/mesa/main/pipelineobj.h
@@ -90,10 +90,16 @@ _mesa_BindProgramPipeline(GLuint pipeline);
extern void GLAPIENTRY
_mesa_DeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
+void GLAPIENTRY
+_mesa_GenProgramPipelines_no_error(GLsizei n, GLuint *pipelines);
+
extern void GLAPIENTRY
_mesa_GenProgramPipelines(GLsizei n, GLuint *pipelines);
void GLAPIENTRY
+_mesa_CreateProgramPipelines_no_error(GLsizei n, GLuint *pipelines);
+
+void GLAPIENTRY
_mesa_CreateProgramPipelines(GLsizei n, GLuint *pipelines);
extern GLboolean GLAPIENTRY