summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/JumpThreading/crash.ll
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-12-01 06:04:43 +0000
committerChris Lattner <sabre@nondot.org>2009-12-01 06:04:43 +0000
commit3c9aca907970255d37da45528e6578f436de6e22 (patch)
tree79de30b8e0e014243992d34dbafae47b97b412db /llvm/test/Transforms/JumpThreading/crash.ll
parent3a438a93366e13b26ad08a1a3363c0fc0d3e2213 (diff)
downloadbcm5719-llvm-3c9aca907970255d37da45528e6578f436de6e22.tar.gz
bcm5719-llvm-3c9aca907970255d37da45528e6578f436de6e22.zip
fix PR5640 by tracking whether a block is the header of a loop more
precisely, which prevents us from infinitely peeling the loop. llvm-svn: 90211
Diffstat (limited to 'llvm/test/Transforms/JumpThreading/crash.ll')
-rw-r--r--llvm/test/Transforms/JumpThreading/crash.ll20
1 files changed, 20 insertions, 0 deletions
diff --git a/llvm/test/Transforms/JumpThreading/crash.ll b/llvm/test/Transforms/JumpThreading/crash.ll
index 7e2a2a047d1..b2b9d69e16d 100644
--- a/llvm/test/Transforms/JumpThreading/crash.ll
+++ b/llvm/test/Transforms/JumpThreading/crash.ll
@@ -192,3 +192,23 @@ bb61:
ret void
}
+
+; PR5640
+define fastcc void @test6(i1 %tmp, i1 %tmp1) nounwind ssp {
+entry:
+ br i1 %tmp, label %bb12, label %bb14
+
+bb12:
+ br label %bb14
+
+bb14:
+ %A = phi i1 [ %A, %bb13 ], [ true, %bb12 ], [%tmp1, %entry]
+ br label %bb13
+
+bb13:
+ br i1 %A, label %bb14, label %bb61
+
+
+bb61:
+ ret void
+}
OpenPOWER on IntegriCloud