Mesa (master): mesa: add KHR_no_error support for glBindFragDataLocation*( )
Timothy Arceri
tarceri at kemper.freedesktop.org
Wed Jun 28 22:54:33 UTC 2017
Module: Mesa
Branch: master
Commit: 87bc32166afc00dedd1e95b1e11ceef26a994fe0
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=87bc32166afc00dedd1e95b1e11ceef26a994fe0
Author: Timothy Arceri <tarceri at itsqueeze.com>
Date: Wed Jun 28 14:46:06 2017 +1000
mesa: add KHR_no_error support for glBindFragDataLocation*()
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
---
src/mapi/glapi/gen/ARB_blend_func_extended.xml | 2 +-
src/mapi/glapi/gen/GL3x.xml | 2 +-
src/mesa/main/shader_query.cpp | 30 ++++++++++++++++++++++++++
src/mesa/main/shaderapi.h | 8 +++++++
4 files changed, 40 insertions(+), 2 deletions(-)
diff --git a/src/mapi/glapi/gen/ARB_blend_func_extended.xml b/src/mapi/glapi/gen/ARB_blend_func_extended.xml
index 406140f7dd..10d85a7662 100644
--- a/src/mapi/glapi/gen/ARB_blend_func_extended.xml
+++ b/src/mapi/glapi/gen/ARB_blend_func_extended.xml
@@ -8,7 +8,7 @@
<category name="GL_ARB_blend_func_extended" number="78">
- <function name="BindFragDataLocationIndexed">
+ <function name="BindFragDataLocationIndexed" no_error="true">
<param name="program" type="GLuint"/>
<param name="colorNumber" type="GLuint"/>
<param name="index" type="GLuint"/>
diff --git a/src/mapi/glapi/gen/GL3x.xml b/src/mapi/glapi/gen/GL3x.xml
index f488ba36ae..24490da7e3 100644
--- a/src/mapi/glapi/gen/GL3x.xml
+++ b/src/mapi/glapi/gen/GL3x.xml
@@ -200,7 +200,7 @@
<return type="GLint"/>
</function>
- <function name="BindFragDataLocation">
+ <function name="BindFragDataLocation" no_error="true">
<param name="program" type="GLuint"/>
<param name="colorNumber" type="GLuint"/>
<param name="name" type="const GLchar *"/>
diff --git a/src/mesa/main/shader_query.cpp b/src/mesa/main/shader_query.cpp
index 6e373ef641..f2bdcaab12 100644
--- a/src/mesa/main/shader_query.cpp
+++ b/src/mesa/main/shader_query.cpp
@@ -280,6 +280,21 @@ _mesa_BindFragDataLocation(GLuint program, GLuint colorNumber,
}
void GLAPIENTRY
+_mesa_BindFragDataLocation_no_error(GLuint program, GLuint colorNumber,
+ const GLchar *name)
+{
+ GET_CURRENT_CONTEXT(ctx);
+
+ if (!name)
+ return;
+
+ struct gl_shader_program *const shProg =
+ _mesa_lookup_shader_program(ctx, program);
+
+ bind_frag_data_location(shProg, name, colorNumber, 0);
+}
+
+void GLAPIENTRY
_mesa_BindFragDataLocationIndexed(GLuint program, GLuint colorNumber,
GLuint index, const GLchar *name)
{
@@ -316,6 +331,21 @@ _mesa_BindFragDataLocationIndexed(GLuint program, GLuint colorNumber,
bind_frag_data_location(shProg, name, colorNumber, index);
}
+void GLAPIENTRY
+_mesa_BindFragDataLocationIndexed_no_error(GLuint program, GLuint colorNumber,
+ GLuint index, const GLchar *name)
+{
+ GET_CURRENT_CONTEXT(ctx);
+
+ if (!name)
+ return;
+
+ struct gl_shader_program *const shProg =
+ _mesa_lookup_shader_program(ctx, program);
+
+ bind_frag_data_location(shProg, name, colorNumber, index);
+}
+
GLint GLAPIENTRY
_mesa_GetFragDataIndex(GLuint program, const GLchar *name)
{
diff --git a/src/mesa/main/shaderapi.h b/src/mesa/main/shaderapi.h
index b2229f7ced..b7ba7ab84a 100644
--- a/src/mesa/main/shaderapi.h
+++ b/src/mesa/main/shaderapi.h
@@ -158,6 +158,14 @@ _mesa_BindFragDataLocationIndexed(GLuint program, GLuint colorNumber,
GLuint index, const GLchar *name);
extern void GLAPIENTRY
+_mesa_BindFragDataLocation_no_error(GLuint program, GLuint colorNumber,
+ const GLchar *name);
+
+extern void GLAPIENTRY
+_mesa_BindFragDataLocationIndexed_no_error(GLuint program, GLuint colorNumber,
+ GLuint index, const GLchar *name);
+
+extern void GLAPIENTRY
_mesa_GetActiveAttrib(GLuint, GLuint, GLsizei, GLsizei *, GLint *,
GLenum *, GLchar *);
More information about the mesa-commit
mailing list