new testcase, contributed by Eric Kidd.
authorChris Lattner <sabre@nondot.org>
Sun, 19 Mar 2006 19:36:32 +0000 (19:36 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 19 Mar 2006 19:36:32 +0000 (19:36 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26871 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/CorrelatedExprs/switch.ll [new file with mode: 0644]

diff --git a/test/Transforms/CorrelatedExprs/switch.ll b/test/Transforms/CorrelatedExprs/switch.ll
new file mode 100644 (file)
index 0000000..8bf8964
--- /dev/null
@@ -0,0 +1,20 @@
+; RUN: llvm-as < %s | opt -cee -constprop -instcombine -dce | llvm-dis | not grep 'REMOVE'
+
+int %test_case_values_should_propagate(int %A) {
+    switch int %A, label %D [
+        int 40, label %C1
+        int 41, label %C2
+        int 42, label %C3
+    ]
+C1:
+    %REMOVE1 = add int %A, 2     ; Should be 42.
+    ret int %REMOVE1
+C2:
+    %REMOVE2 = add int %A, 3     ; Should be 44.
+    ret int %REMOVE2
+C3:
+    %REMOVE3 = add int %A, 4     ; Should be 46.
+    ret int %REMOVE3
+D:
+    ret int 10
+}