aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndres Gomez <agomez@igalia.com>2016-10-25 17:18:40 +0300
committerAndres Gomez <agomez@igalia.com>2016-11-26 02:39:55 +0200
commit86e56903fdb19e6940cd7f9b8bd8df587f870bc2 (patch)
tree3cadb2648ee103939f301f6af43d75603b251eae
parent444f17e89e4933025ec5387925a4272514fe8422 (diff)
downloadpiglit-86e56903fdb19e6940cd7f9b8bd8df587f870bc2.tar.gz
arb_shading_language_420pack: Add multiple layout qualifiers in a single output declaration tests
This adds tests to check that all layout-qualifier-ids are taken into account when spread across multiple layout-qualifiers for a single global output declaration. The tests check that this works for value and non-value layout-qualifier-ids. From the ARB_shading_language_420pack spec: "More than one layout qualifier may appear in a single declaration." Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com> Signed-off-by: Andres Gomez <agomez@igalia.com>
-rw-r--r--tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-non-value-layout-qualifier-in-single-declaration-1.geom25
-rw-r--r--tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-non-value-layout-qualifier-in-single-declaration-2.geom25
-rw-r--r--tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-value-layout-qualifier-in-single-declaration-3.geom25
-rw-r--r--tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-value-layout-qualifier-in-single-declaration-4.geom25
4 files changed, 100 insertions, 0 deletions
diff --git a/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-non-value-layout-qualifier-in-single-declaration-1.geom b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-non-value-layout-qualifier-in-single-declaration-1.geom
new file mode 100644
index 000000000..50cc6576e
--- /dev/null
+++ b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-non-value-layout-qualifier-in-single-declaration-1.geom
@@ -0,0 +1,25 @@
+// [config]
+// expect_result: fail
+// glsl_version: 1.50
+// require_extensions: GL_ARB_shading_language_420pack
+// [end config]
+//
+// From the ARB_shading_language_420pack spec:
+//
+// "More than one layout qualifier may appear in a single declaration."
+//
+// From section 4.3.8.2(Output Layout Qualifiers) of the GLSL 1.50 spec says:
+//
+// "All geometry shader output layout declarations in a program must declare the
+// same layout and same value for max_vertices."
+
+#version 150
+#extension GL_ARB_shading_language_420pack: enable
+
+layout(lines) in;
+layout(triangle_strip) layout(max_vertices=3) out;
+layout(points) out;
+
+void main()
+{
+}
diff --git a/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-non-value-layout-qualifier-in-single-declaration-2.geom b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-non-value-layout-qualifier-in-single-declaration-2.geom
new file mode 100644
index 000000000..11ec500ae
--- /dev/null
+++ b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-non-value-layout-qualifier-in-single-declaration-2.geom
@@ -0,0 +1,25 @@
+// [config]
+// expect_result: fail
+// glsl_version: 1.50
+// require_extensions: GL_ARB_shading_language_420pack
+// [end config]
+//
+// From the ARB_shading_language_420pack spec:
+//
+// "More than one layout qualifier may appear in a single declaration."
+//
+// From section 4.3.8.2(Output Layout Qualifiers) of the GLSL 1.50 spec says:
+//
+// "All geometry shader output layout declarations in a program must declare the
+// same layout and same value for max_vertices."
+
+#version 150
+#extension GL_ARB_shading_language_420pack: enable
+
+layout(lines) in;
+layout(max_vertices=3) layout(triangle_strip) out;
+layout(points) out;
+
+void main()
+{
+}
diff --git a/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-value-layout-qualifier-in-single-declaration-3.geom b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-value-layout-qualifier-in-single-declaration-3.geom
new file mode 100644
index 000000000..d2cc48b91
--- /dev/null
+++ b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-value-layout-qualifier-in-single-declaration-3.geom
@@ -0,0 +1,25 @@
+// [config]
+// expect_result: fail
+// glsl_version: 1.50
+// require_extensions: GL_ARB_shading_language_420pack
+// [end config]
+//
+// From the ARB_shading_language_420pack spec:
+//
+// "More than one layout qualifier may appear in a single declaration."
+//
+// From section 4.3.8.2(Output Layout Qualifiers) of the GLSL 1.50 spec says:
+//
+// "All geometry shader output layout declarations in a program must declare the
+// same layout and same value for max_vertices."
+
+#version 150
+#extension GL_ARB_shading_language_420pack: enable
+
+layout(lines) in;
+layout(triangle_strip) layout(max_vertices=3) out;
+layout(max_vertices=2) out;
+
+void main()
+{
+}
diff --git a/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-value-layout-qualifier-in-single-declaration-4.geom b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-value-layout-qualifier-in-single-declaration-4.geom
new file mode 100644
index 000000000..21b3259fe
--- /dev/null
+++ b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-output-value-layout-qualifier-in-single-declaration-4.geom
@@ -0,0 +1,25 @@
+// [config]
+// expect_result: fail
+// glsl_version: 1.50
+// require_extensions: GL_ARB_shading_language_420pack
+// [end config]
+//
+// From the ARB_shading_language_420pack spec:
+//
+// "More than one layout qualifier may appear in a single declaration."
+//
+// From section 4.3.8.2(Output Layout Qualifiers) of the GLSL 1.50 spec says:
+//
+// "All geometry shader output layout declarations in a program must declare the
+// same layout and same value for max_vertices."
+
+#version 150
+#extension GL_ARB_shading_language_420pack: enable
+
+layout(lines) in;
+layout(max_vertices=3) layout(triangle_strip) out;
+layout(max_vertices=2) out;
+
+void main()
+{
+}