summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/bgfx/3rdparty/glslang/Test/spv.dead-complex-merge-after-return.vert
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/bgfx/3rdparty/glslang/Test/spv.dead-complex-merge-after-return.vert')
-rw-r--r--3rdparty/bgfx/3rdparty/glslang/Test/spv.dead-complex-merge-after-return.vert23
1 files changed, 23 insertions, 0 deletions
diff --git a/3rdparty/bgfx/3rdparty/glslang/Test/spv.dead-complex-merge-after-return.vert b/3rdparty/bgfx/3rdparty/glslang/Test/spv.dead-complex-merge-after-return.vert
new file mode 100644
index 00000000000..2fff1a29738
--- /dev/null
+++ b/3rdparty/bgfx/3rdparty/glslang/Test/spv.dead-complex-merge-after-return.vert
@@ -0,0 +1,23 @@
+#version 450
+
+layout(location =0 ) in int c;
+layout(location =0 ) out int o;
+
+void main() {
+ int i = 0;
+ o = 1;
+ do {
+ o = 2;
+ return;
+ o = 3;
+ } while(i++ < 5);
+
+ // All this is a dead merge block.
+ o = 4;
+ if (c==4) {
+ o = 100;
+ } else {
+ o = 200;
+ }
+ o = 300;
+}