summaryrefslogtreecommitdiffstats
path: root/tests/bugs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/bugs')
-rw-r--r--tests/bugs/matrix-mult.glsl28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/bugs/matrix-mult.glsl b/tests/bugs/matrix-mult.glsl
new file mode 100644
index 000000000..b427dee14
--- /dev/null
+++ b/tests/bugs/matrix-mult.glsl
@@ -0,0 +1,28 @@
+//TEST:COMPARE_GLSL:-profile glsl_fragment_450 -no-checking
+// matrix-mult.glsl
+#version 450
+
+// Confirm that we don't exchange the operands
+// to a matrix-vector multiply when we recognize
+// one in "raw" GLSL code.
+
+#ifdef __SLANG__
+__import empty;
+#endif
+
+layout(binding = 0)
+uniform C
+{
+ mat4x4 m;
+};
+
+layout(location = 0)
+in vec4 v;
+
+layout(location = 0)
+out vec4 r;
+
+void main()
+{
+ r = m * v;
+}