aboutsummaryrefslogtreecommitdiffstats
path: root/test/Transforms/TailDup/2004-04-01-DemoteRegToStack.llx
diff options
context:
space:
mode:
Diffstat (limited to 'test/Transforms/TailDup/2004-04-01-DemoteRegToStack.llx')
-rw-r--r--test/Transforms/TailDup/2004-04-01-DemoteRegToStack.llx22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/Transforms/TailDup/2004-04-01-DemoteRegToStack.llx b/test/Transforms/TailDup/2004-04-01-DemoteRegToStack.llx
new file mode 100644
index 0000000..21a3ffa
--- /dev/null
+++ b/test/Transforms/TailDup/2004-04-01-DemoteRegToStack.llx
@@ -0,0 +1,22 @@
+; RUN: llvm-as < %s | opt -tailduplicate -disable-output
+
+void %interpret() {
+entry:
+ br label %retry
+
+retry:
+ %tmp.8 = call int %interp()
+ switch uint 0, label %endif.4 [
+ uint 4294967271, label %return
+ uint 4294967280, label %return
+ ]
+
+endif.4:
+ br bool false, label %return, label %retry
+
+return:
+ %result.0 = phi int [ %tmp.8, %retry ], [%tmp.8, %retry], [ %tmp.8, %endif.4 ]
+ ret void
+}
+
+declare int %interp()