diff options
| author | Eric Christopher <echristo@gmail.com> | 2019-04-17 04:52:47 +0000 |
|---|---|---|
| committer | Eric Christopher <echristo@gmail.com> | 2019-04-17 04:52:47 +0000 |
| commit | cee313d288a4faf0355d76fb6e0e927e211d08a5 (patch) | |
| tree | d386075318d761197779a96e5d8fc0dc7b06342b /llvm/test/Transforms/InstCombine/switch-constant-expr.ll | |
| parent | c3d6a929fdd92fd06d4304675ade8d7210ee711a (diff) | |
| download | bcm5719-llvm-cee313d288a4faf0355d76fb6e0e927e211d08a5.tar.gz bcm5719-llvm-cee313d288a4faf0355d76fb6e0e927e211d08a5.zip | |
Revert "Temporarily Revert "Add basic loop fusion pass.""
The reversion apparently deleted the test/Transforms directory.
Will be re-reverting again.
llvm-svn: 358552
Diffstat (limited to 'llvm/test/Transforms/InstCombine/switch-constant-expr.ll')
| -rw-r--r-- | llvm/test/Transforms/InstCombine/switch-constant-expr.ll | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/llvm/test/Transforms/InstCombine/switch-constant-expr.ll b/llvm/test/Transforms/InstCombine/switch-constant-expr.ll new file mode 100644 index 00000000000..c2ea83b2adb --- /dev/null +++ b/llvm/test/Transforms/InstCombine/switch-constant-expr.ll @@ -0,0 +1,44 @@ +; NOTE: Assertions have been autogenerated by utils/update_test_checks.py +; RUN: opt < %s -instcombine -S | FileCheck %s + +@g = global i32 0 + +; PR30486 +define i32 @single_case() { +; CHECK-LABEL: @single_case( +; CHECK-NEXT: switch i32 ptrtoint (i32* @g to i32), label %x [ +; CHECK-NEXT: ] +; CHECK: x: +; CHECK-NEXT: ret i32 0 +; + switch i32 add (i32 ptrtoint (i32* @g to i32), i32 -1), label %x [] +x: + ret i32 0 +} + +define i32 @multiple_cases() { +; CHECK-LABEL: @multiple_cases( +; CHECK-NEXT: switch i32 ptrtoint (i32* @g to i32), label %x [ +; CHECK-NEXT: i32 2, label %one +; CHECK-NEXT: i32 3, label %two +; CHECK-NEXT: ] +; CHECK: x: +; CHECK-NEXT: ret i32 0 +; CHECK: one: +; CHECK-NEXT: ret i32 1 +; CHECK: two: +; CHECK-NEXT: ret i32 2 +; + switch i32 add (i32 ptrtoint (i32* @g to i32), i32 -1), label %x [ + i32 1, label %one + i32 2, label %two + ] +x: + ret i32 0 + +one: + ret i32 1 + +two: + ret i32 2 +} |

