summaryrefslogtreecommitdiff
path: root/test/Transforms/SimplifyCFG
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2011-01-29 02:43:04 +0000
committerEvan Cheng <evan.cheng@apple.com>2011-01-29 02:43:04 +0000
commitb0a42fdb36b575a8ad939ca9624105908aeedf51 (patch)
tree5ea1ef8b97500d011b703e296c66a2056782b0a3 /test/Transforms/SimplifyCFG
parent5e6940788fb2f8cf3ce4219d3ac0f78317f54696 (diff)
downloadllvm-b0a42fdb36b575a8ad939ca9624105908aeedf51.tar.gz
llvm-b0a42fdb36b575a8ad939ca9624105908aeedf51.tar.bz2
llvm-b0a42fdb36b575a8ad939ca9624105908aeedf51.tar.xz
Revert r124518. It broke Linux self-host.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124522 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/SimplifyCFG')
-rw-r--r--test/Transforms/SimplifyCFG/MagicPointer.ll1
-rw-r--r--test/Transforms/SimplifyCFG/basictest.ll10
-rw-r--r--test/Transforms/SimplifyCFG/switch_create.ll28
-rw-r--r--test/Transforms/SimplifyCFG/switch_formation.dbg.ll14
4 files changed, 15 insertions, 38 deletions
diff --git a/test/Transforms/SimplifyCFG/MagicPointer.ll b/test/Transforms/SimplifyCFG/MagicPointer.ll
index 93b9a276ea..54e5b14880 100644
--- a/test/Transforms/SimplifyCFG/MagicPointer.ll
+++ b/test/Transforms/SimplifyCFG/MagicPointer.ll
@@ -8,6 +8,7 @@
; CHECK: i64 2, label
; CHECK: i64 3, label
; CHECK: i64 4, label
+; CHECK-NOT: br
; CHECK: }
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
diff --git a/test/Transforms/SimplifyCFG/basictest.ll b/test/Transforms/SimplifyCFG/basictest.ll
index 052e10667d..b485f6ab05 100644
--- a/test/Transforms/SimplifyCFG/basictest.ll
+++ b/test/Transforms/SimplifyCFG/basictest.ll
@@ -25,6 +25,16 @@ define void @test3(i1 %T) {
}
+define void @test4() {
+ br label %return
+return:
+ ret void
+; CHECK: @test4
+; CHECK-NEXT: ret void
+}
+@test4g = global i8* blockaddress(@test4, %return)
+
+
; PR5795
define void @test5(i32 %A) {
switch i32 %A, label %return [
diff --git a/test/Transforms/SimplifyCFG/switch_create.ll b/test/Transforms/SimplifyCFG/switch_create.ll
index 4e199bc859..da7f65a6ca 100644
--- a/test/Transforms/SimplifyCFG/switch_create.ll
+++ b/test/Transforms/SimplifyCFG/switch_create.ll
@@ -147,7 +147,7 @@ UnifiedReturnBlock: ; preds = %shortcirc_done.4, %shortcirc_next.4
; CHECK: i32 16, label %UnifiedReturnBlock
; CHECK: i32 17, label %UnifiedReturnBlock
; CHECK: i32 18, label %UnifiedReturnBlock
-; CHECK: i32 19, label %UnifiedReturnBlock
+; CHECK: i32 19, label %switch.edge
; CHECK: ]
}
@@ -441,29 +441,3 @@ if.end:
; CHECK-NOT: switch
; CHECK: ret void
}
-
-; PR8675
-; rdar://5134905
-define zeroext i1 @test16(i32 %x) nounwind {
-entry:
-; CHECK: @test16
-; CHECK: switch i32 %x, label %lor.rhs [
-; CHECK: i32 1, label %lor.end
-; CHECK: i32 2, label %lor.end
-; CHECK: i32 3, label %lor.end
-; CHECK: ]
- %cmp.i = icmp eq i32 %x, 1
- br i1 %cmp.i, label %lor.end, label %lor.lhs.false
-
-lor.lhs.false:
- %cmp.i2 = icmp eq i32 %x, 2
- br i1 %cmp.i2, label %lor.end, label %lor.rhs
-
-lor.rhs:
- %cmp.i1 = icmp eq i32 %x, 3
- br label %lor.end
-
-lor.end:
- %0 = phi i1 [ true, %lor.lhs.false ], [ true, %entry ], [ %cmp.i1, %lor.rhs ]
- ret i1 %0
-}
diff --git a/test/Transforms/SimplifyCFG/switch_formation.dbg.ll b/test/Transforms/SimplifyCFG/switch_formation.dbg.ll
index 357ffb60e1..f1c820ec43 100644
--- a/test/Transforms/SimplifyCFG/switch_formation.dbg.ll
+++ b/test/Transforms/SimplifyCFG/switch_formation.dbg.ll
@@ -1,4 +1,5 @@
-; RUN: opt < %s -simplifycfg -S | FileCheck %s
+; RUN: opt < %s -simplifycfg -S | not grep br
+
%llvm.dbg.anchor.type = type { i32, i32 }
%llvm.dbg.compile_unit.type = type { i32, { }*, i32, i8*, i8*, i8*, i1, i1, i8* }
@@ -12,16 +13,7 @@
declare void @llvm.dbg.stoppoint(i32, i32, { }*) nounwind
-define i1 @t({ i32, i32 }* %I) {
-; CHECK: t
-; CHECK: switch i32 %tmp.2.i, label %shortcirc_next.4 [
-; CHECK: i32 14, label %UnifiedReturnBlock
-; CHECK: i32 15, label %UnifiedReturnBlock
-; CHECK: i32 16, label %UnifiedReturnBlock
-; CHECK: i32 17, label %UnifiedReturnBlock
-; CHECK: i32 18, label %UnifiedReturnBlock
-; CHECK: i32 19, label %UnifiedReturnBlock
-; CHECK: ]
+define i1 @_ZN4llvm11SetCondInst7classofEPKNS_11InstructionE({ i32, i32 }* %I) {
entry:
%tmp.1.i = getelementptr { i32, i32 }* %I, i64 0, i32 1 ; <i32*> [#uses=1]
%tmp.2.i = load i32* %tmp.1.i ; <i32> [#uses=6]