Added tests to check that all the layout-qualifier-ids in more than
one layout-qualifier in a single non-variable buffer declaration are
taken into account.
The tests check that this works for non-value layout-qualifier-ids. So
far, there is no value layout-qualifier-ids with which to check.
From the ARB_shading_language_420pack spec:
"More than one layout qualifier may appear in a single declaration."
Signed-off-by: Andres Gomez <[email protected]>
---
...e-layout-qualifier-in-single-declaration-1.vert | 31 ++++++++++++++++++++++
...e-layout-qualifier-in-single-declaration-2.vert | 31 ++++++++++++++++++++++
2 files changed, 62 insertions(+)
create mode 100644
tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-buffer-non-value-layout-qualifier-in-single-declaration-1.vert
create mode 100644
tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-buffer-non-value-layout-qualifier-in-single-declaration-2.vert
diff --git
a/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-buffer-non-value-layout-qualifier-in-single-declaration-1.vert
b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-buffer-non-value-layout-qualifier-in-single-declaration-1.vert
new file mode 100644
index 0000000..65e6ac6
--- /dev/null
+++
b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-buffer-non-value-layout-qualifier-in-single-declaration-1.vert
@@ -0,0 +1,31 @@
+// [config]
+// expect_result: pass
+// glsl_version: 1.40
+// require_extensions: GL_ARB_shading_language_420pack GL_ARB_enhanced_layouts
GL_ARB_shader_storage_buffer_object
+// [end config]
+//
+// From the ARB_shading_language_420pack spec:
+//
+// "More than one layout qualifier may appear in a single declaration."
+//
+// ARB_enhanced_layouts spec says:
+//
+// "The *align* qualifier can only be used on blocks or block
+// members, and only for blocks declared with *std140* or *std430*
+// layouts."
+
+#version 140
+#extension GL_ARB_shading_language_420pack: enable
+#extension GL_ARB_enhanced_layouts : enable
+#extension GL_ARB_shader_storage_buffer_object : enable
+
+layout(std140) layout(row_major) buffer;
+
+layout(align = 32) buffer b {
+ vec4 var1;
+ vec4 var2;
+};
+
+void main()
+{
+}
diff --git
a/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-buffer-non-value-layout-qualifier-in-single-declaration-2.vert
b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-buffer-non-value-layout-qualifier-in-single-declaration-2.vert
new file mode 100644
index 0000000..65e6ac6
--- /dev/null
+++
b/tests/spec/arb_shading_language_420pack/compiler/layout-qualifiers/multiple-buffer-non-value-layout-qualifier-in-single-declaration-2.vert
@@ -0,0 +1,31 @@
+// [config]
+// expect_result: pass
+// glsl_version: 1.40
+// require_extensions: GL_ARB_shading_language_420pack GL_ARB_enhanced_layouts
GL_ARB_shader_storage_buffer_object
+// [end config]
+//
+// From the ARB_shading_language_420pack spec:
+//
+// "More than one layout qualifier may appear in a single declaration."
+//
+// ARB_enhanced_layouts spec says:
+//
+// "The *align* qualifier can only be used on blocks or block
+// members, and only for blocks declared with *std140* or *std430*
+// layouts."
+
+#version 140
+#extension GL_ARB_shading_language_420pack: enable
+#extension GL_ARB_enhanced_layouts : enable
+#extension GL_ARB_shader_storage_buffer_object : enable
+
+layout(std140) layout(row_major) buffer;
+
+layout(align = 32) buffer b {
+ vec4 var1;
+ vec4 var2;
+};
+
+void main()
+{
+}
--
2.9.3
_______________________________________________
Piglit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/piglit