diff options
Diffstat (limited to 'llvm/test/Transforms/SimplifyCFG/PR25267.ll')
-rw-r--r-- | llvm/test/Transforms/SimplifyCFG/PR25267.ll | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/llvm/test/Transforms/SimplifyCFG/PR25267.ll b/llvm/test/Transforms/SimplifyCFG/PR25267.ll new file mode 100644 index 00000000000..a13d45a0f27 --- /dev/null +++ b/llvm/test/Transforms/SimplifyCFG/PR25267.ll @@ -0,0 +1,24 @@ +; RUN: opt < %s -simplifycfg -S | FileCheck %s + +define void @f() { +entry: + br label %for.cond + +for.cond: + %phi = phi i1 [ false, %entry ], [ true, %for.body ] + %select = select i1 %phi, i32 1, i32 2 + br label %for.body + +for.body: + switch i32 %select, label %for.cond [ + i32 1, label %return + i32 2, label %for.body + ] + +return: + ret void +} + +; CHECK-LABEL: define void @f( +; CHECK: br label %[[LABEL:.*]] +; CHECK: br label %[[LABEL]] |