[Piglit] [PATCH 1/2] arb_program_interface_query: add more arrays of arrays tests
Timothy Arceri
t_arceri at yahoo.com.au
Fri Jul 3 17:17:39 PDT 2015
>From the ARB_program_interface_query spec (issue 8):
We only accept entries of the form "a[2][1][0]" or
"a[2][1]", which is consistent with the existing rules that only allow
applications to omit the last index of a bottom-level array that has
been rolled up.
Test results: Nvidia GeForce 840M - NVIDIA 346.47: pass
Cc: Tapani Pälli <tapani.palli at intel.com>
---
tests/spec/arb_program_interface_query/common.h | 9 ++++++++
.../getprogramresourceindex.c | 26 ++++++++++++++++++++++
2 files changed, 35 insertions(+)
diff --git a/tests/spec/arb_program_interface_query/common.h b/tests/spec/arb_program_interface_query/common.h
index e083a6e..39e5f24 100755
--- a/tests/spec/arb_program_interface_query/common.h
+++ b/tests/spec/arb_program_interface_query/common.h
@@ -63,6 +63,15 @@ static const char vs_aofa[] =
" gl_Position = vs_input2[0][0] + vs_input3[0][0][0];\n"
"}";
+static const char vs_aofa2[] =
+ "#version 150\n"
+ "#extension GL_ARB_arrays_of_arrays : require\n"
+ "in vec4 vs_input2[2][2];\n"
+ "uniform vec4 vs_uni[2][2][2];\n"
+ "void main() {\n"
+ " gl_Position = vs_input2[1][0] + vs_uni[1][0][1];\n"
+ "}";
+
static const char vs_std[] =
"#version 150\n"
"struct vs_struct {\n"
diff --git a/tests/spec/arb_program_interface_query/getprogramresourceindex.c b/tests/spec/arb_program_interface_query/getprogramresourceindex.c
index 889b5e1..bc865e5 100755
--- a/tests/spec/arb_program_interface_query/getprogramresourceindex.c
+++ b/tests/spec/arb_program_interface_query/getprogramresourceindex.c
@@ -175,6 +175,32 @@ static const struct subtest_index_t index_subtests[] = {
ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input2[0][0]", 0, GL_NO_ERROR),
ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input2[1][0]", -1, GL_NO_ERROR),
ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input2[0][1]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input2[1][1]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input3", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input3[0]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input3[0][0]", 0, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input3[0][0][0]", 0, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT,"vs_input3[0][0][00]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT,"vs_input3[0][00][0]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT,"vs_input3[00][0][0]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input3[0][0][1]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input3[0][1][0]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input3[1][0][0]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input3[1][0][1]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input3[1][1][0]", -1, GL_NO_ERROR),
+ ST( vs_aofa, GL_PROGRAM_INPUT, "vs_input3[1][1][1]", -1, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni", -1, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[1]", -1, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[0]", -1, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[0][0]", -1, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[1][0]", 0, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[0][0][0]", -1, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[0][0][1]", -1, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[0][1][0]", -1, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[1][0][0]", 0, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[1][0][1]", -1, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[1][1][0]", -1, GL_NO_ERROR),
+ ST( vs_aofa2, GL_UNIFORM, "vs_uni[1][1][1]", -1, GL_NO_ERROR),
ST( vs_sub, GL_VERTEX_SUBROUTINE, "vss", 0, GL_NO_ERROR),
ST(vs_empty, GL_TRANSFORM_FEEDBACK_VARYING, "gl_NextBuffer", -1, GL_NO_ERROR),
ST(vs_empty, GL_TRANSFORM_FEEDBACK_VARYING, "gl_SkipComponents1", -1, GL_NO_ERROR),
--
2.4.3
More information about the Piglit
mailing list