summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVadym Shovkoplias <vadim.shovkoplias@gmail.com>2018-10-29 12:56:42 +0200
committerTimothy Arceri <tarceri@itsqueeze.com>2018-10-30 10:26:46 +1100
commit95bf6388f315086dd7321f66c7bfb51f14af5828 (patch)
treebafc0ecc1a59669e0ea4ac4fd777d0bf181b6e26
parent7155d936a55d3b89ca3cabab9576ac0c1e36fa95 (diff)
glsl-1.30: update linker test for inter stage in/out vars usage
Adding additional in/out variable which exposes a new GLSL linker bug, where we were using a variable in the IR which was later freed because we forgot to clone it. The test fails with the following error message: Failed to link: error: fragment shader input `bar' has no matching output in the previous stage Signed-off-by: Vadym Shovkoplias <vadym.shovkoplias@globallogic.com> Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
-rw-r--r--tests/spec/glsl-1.30/linker/interstage-multiple-vertex-objects.shader_test5
1 files changed, 4 insertions, 1 deletions
diff --git a/tests/spec/glsl-1.30/linker/interstage-multiple-vertex-objects.shader_test b/tests/spec/glsl-1.30/linker/interstage-multiple-vertex-objects.shader_test
index dd168d434..39838b1f2 100644
--- a/tests/spec/glsl-1.30/linker/interstage-multiple-vertex-objects.shader_test
+++ b/tests/spec/glsl-1.30/linker/interstage-multiple-vertex-objects.shader_test
@@ -8,8 +8,10 @@ GLSL >= 1.30
[vertex shader]
out vec4 foo;
+out vec4 bar;
void unused()
{
+ bar=vec4(0);
foo=vec4(1);
}
@@ -22,11 +24,12 @@ void main()
[fragment shader]
in vec4 foo;
+in vec4 bar;
out vec4 color;
void main()
{
- gl_FragColor=foo;
+ gl_FragColor=foo*bar;
}
[test]