summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIlia Mirkin <[email protected]>2016-09-16 13:38:36 -0400
committerIlia Mirkin <[email protected]>2016-09-22 20:42:30 -0400
commit411a72d4a2eb69e45701c5e19049f6c543a78f24 (patch)
tree5283ec0bd5db29475253904da2193f6d31547156
parente66a2b879b73bf48800fec7353dafe8fc693ecdb (diff)
mesa: add new entrypoints for GL_OES_viewport_array
Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Anuj Phogat <[email protected]>
-rw-r--r--src/mapi/glapi/gen/apiexec.py12
-rw-r--r--src/mapi/glapi/gen/es_EXT.xml50
-rw-r--r--src/mesa/main/tests/dispatch_sanity.cpp11
-rw-r--r--src/mesa/main/viewport.c12
-rw-r--r--src/mesa/main/viewport.h6
5 files changed, 85 insertions, 6 deletions
diff --git a/src/mapi/glapi/gen/apiexec.py b/src/mapi/glapi/gen/apiexec.py
index b4f4cf6831b..4bdc95d68e2 100644
--- a/src/mapi/glapi/gen/apiexec.py
+++ b/src/mapi/glapi/gen/apiexec.py
@@ -133,12 +133,12 @@ functions = {
#
# Mesa does not support either of the geometry shader extensions, so
# OpenGL 3.2 is required.
- "ViewportArrayv": exec_info(core=32),
- "ViewportIndexedf": exec_info(core=32),
- "ViewportIndexedfv": exec_info(core=32),
- "ScissorArrayv": exec_info(core=32),
- "ScissorIndexed": exec_info(core=32),
- "ScissorIndexedv": exec_info(core=32),
+ "ViewportArrayv": exec_info(core=32, es2=31),
+ "ViewportIndexedf": exec_info(core=32, es2=31),
+ "ViewportIndexedfv": exec_info(core=32, es2=31),
+ "ScissorArrayv": exec_info(core=32, es2=31),
+ "ScissorIndexed": exec_info(core=32, es2=31),
+ "ScissorIndexedv": exec_info(core=32, es2=31),
"DepthRangeArrayv": exec_info(core=32),
"DepthRangeIndexed": exec_info(core=32),
# GetFloati_v also GL_ARB_shader_atomic_counters
diff --git a/src/mapi/glapi/gen/es_EXT.xml b/src/mapi/glapi/gen/es_EXT.xml
index 332dc5eb7bd..3e705eb4092 100644
--- a/src/mapi/glapi/gen/es_EXT.xml
+++ b/src/mapi/glapi/gen/es_EXT.xml
@@ -1342,4 +1342,54 @@
</category>
+<category name="GL_OES_viewport_array" number="267">
+ <function name="ViewportArrayvOES" es2="3.1" alias="ViewportArrayv">
+ <param name="first" type="GLuint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="v" type="const GLfloat *"/>
+ </function>
+ <function name="ViewportIndexedfOES" es2="3.1" alias="ViewportIndexedf">
+ <param name="index" type="GLuint"/>
+ <param name="x" type="GLfloat"/>
+ <param name="y" type="GLfloat"/>
+ <param name="w" type="GLfloat"/>
+ <param name="h" type="GLfloat"/>
+ </function>
+ <function name="ViewportIndexedfvOES" es2="3.1" alias="ViewportIndexedfv">
+ <param name="index" type="GLuint"/>
+ <param name="v" type="const GLfloat *"/>
+ </function>
+ <function name="ScissorArrayvOES" es2="3.1" alias="ScissorArrayv">
+ <param name="first" type="GLuint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="v" type="const int *"/>
+ </function>
+ <function name="ScissorIndexedOES" es2="3.1" alias="ScissorIndexed">
+ <param name="index" type="GLuint"/>
+ <param name="left" type="GLint"/>
+ <param name="bottom" type="GLint"/>
+ <param name="width" type="GLsizei"/>
+ <param name="height" type="GLsizei"/>
+ </function>
+ <function name="ScissorIndexedvOES" es2="3.1" alias="ScissorIndexedv">
+ <param name="index" type="GLuint"/>
+ <param name="v" type="const GLint *"/>
+ </function>
+ <function name="DepthRangeArrayfvOES" es2="3.1" desktop="false">
+ <param name="first" type="GLuint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="v" type="const GLfloat *"/>
+ </function>
+ <function name="DepthRangeIndexedfOES" es2="3.1" desktop="false">
+ <param name="index" type="GLuint"/>
+ <param name="n" type="GLfloat"/>
+ <param name="f" type="GLfloat"/>
+ </function>
+ <function name="GetFloati_vOES" es2="3.1" alias="GetFloati_v">
+ <param name="target" type="GLenum"/>
+ <param name="index" type="GLuint"/>
+ <param name="data" type="GLfloat *"/>
+ </function>
+</category>
+
</OpenGLAPI>
diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp
index c87b1dc19c9..0d3b6abea39 100644
--- a/src/mesa/main/tests/dispatch_sanity.cpp
+++ b/src/mesa/main/tests/dispatch_sanity.cpp
@@ -2613,5 +2613,16 @@ const struct function gles31_functions_possible[] = {
/* GL_OES_primitive_bound_box */
{ "glPrimitiveBoundingBoxOES", 31, -1 },
+ /* GL_OES_viewport_array */
+ { "glViewportArrayvOES", 31, -1 },
+ { "glViewportIndexedfOES", 31, -1 },
+ { "glViewportIndexedfvOES", 31, -1 },
+ { "glScissorArrayvOES", 31, -1 },
+ { "glScissorIndexedOES", 31, -1 },
+ { "glScissorIndexedvOES", 31, -1 },
+ { "glDepthRangeArrayfvOES", 31, -1 },
+ { "glDepthRangeIndexedfOES", 31, -1 },
+ { "glGetFloati_vOES", 31, -1 },
+
{ NULL, 0, -1 },
};
diff --git a/src/mesa/main/viewport.c b/src/mesa/main/viewport.c
index 681e46bfcf7..f6eaa0f30a9 100644
--- a/src/mesa/main/viewport.c
+++ b/src/mesa/main/viewport.c
@@ -330,6 +330,12 @@ _mesa_DepthRangeArrayv(GLuint first, GLsizei count, const GLclampd *v)
ctx->Driver.DepthRange(ctx);
}
+void GLAPIENTRY
+_mesa_DepthRangeArrayfvOES(GLuint first, GLsizei count, const GLfloat *v)
+{
+
+}
+
/**
* Update a single DepthRange
*
@@ -358,6 +364,12 @@ _mesa_DepthRangeIndexed(GLuint index, GLclampd nearval, GLclampd farval)
_mesa_set_depth_range(ctx, index, nearval, farval);
}
+void GLAPIENTRY
+_mesa_DepthRangeIndexedfOES(GLuint index, GLfloat nearval, GLfloat farval)
+{
+
+}
+
/**
* Initialize the context viewport attribute group.
* \param ctx the GL context.
diff --git a/src/mesa/main/viewport.h b/src/mesa/main/viewport.h
index b0675db1096..395131982cf 100644
--- a/src/mesa/main/viewport.h
+++ b/src/mesa/main/viewport.h
@@ -58,8 +58,14 @@ extern void GLAPIENTRY
_mesa_DepthRangeArrayv(GLuint first, GLsizei count, const GLclampd * v);
extern void GLAPIENTRY
+_mesa_DepthRangeArrayfvOES(GLuint first, GLsizei count, const GLfloat * v);
+
+extern void GLAPIENTRY
_mesa_DepthRangeIndexed(GLuint index, GLclampd n, GLclampd f);
+extern void GLAPIENTRY
+_mesa_DepthRangeIndexedfOES(GLuint index, GLfloat n, GLfloat f);
+
extern void
_mesa_set_depth_range(struct gl_context *ctx, unsigned idx,
GLclampd nearval, GLclampd farval);