[Piglit] [PATCH 09/10] arb_enhanced_layouts: add another xfb_stride overflow test
Andres Gomez
agomez at igalia.com
Fri Feb 1 17:55:23 UTC 2019
Additional check to address a bug in mesa in which a stride which
is a divisor of the declared offset for an overflowing varying
won't fail.
>From the GL_ARB_enhanced_layouts spec:
" It is a compile-time or link-time error to have any *xfb_offset*
that overflows *xfb_stride*, whether stated on declarations before
or after the *xfb_stride*, or in different compilation units."
Cc: Timothy Arceri <tarceri at itsqueeze.com>
Signed-off-by: Andres Gomez <agomez at igalia.com>
---
.../xfb_stride/variable-stride-overflow2.vert | 28 +++++++++++++++++++
1 file changed, 28 insertions(+)
create mode 100644 tests/spec/arb_enhanced_layouts/compiler/transform-feedback-layout-qualifiers/xfb_stride/variable-stride-overflow2.vert
diff --git a/tests/spec/arb_enhanced_layouts/compiler/transform-feedback-layout-qualifiers/xfb_stride/variable-stride-overflow2.vert b/tests/spec/arb_enhanced_layouts/compiler/transform-feedback-layout-qualifiers/xfb_stride/variable-stride-overflow2.vert
new file mode 100644
index 000000000..469c5e430
--- /dev/null
+++ b/tests/spec/arb_enhanced_layouts/compiler/transform-feedback-layout-qualifiers/xfb_stride/variable-stride-overflow2.vert
@@ -0,0 +1,28 @@
+// [config]
+// expect_result: fail
+// glsl_version: 1.40
+// check_link: true
+// require_extensions: GL_ARB_enhanced_layouts
+// [end config]
+//
+// Additional check to address a bug in mesa in which a stride which
+// is a divisor of the declared offset for an overflowing varying
+// won't fail.
+//
+// From the GL_ARB_enhanced_layouts spec:
+//
+// "It is a compile-time or link-time error to have any *xfb_offset*
+// that overflows *xfb_stride*, whether stated on declarations before or
+// after the *xfb_stride*, or in different compilation units."
+
+#version 140
+#extension GL_ARB_enhanced_layouts: require
+
+layout(xfb_stride = 16) out vec4 var;
+layout(xfb_offset = 16) out vec4 var2;
+
+void main()
+{
+ var = vec4(1.0);
+ var2 = vec4(0.0);
+}
--
2.20.1
More information about the Piglit
mailing list