diff options
Diffstat (limited to 'llvm/test/Transforms/LoopSimplify/unreachable-loop-pred.ll')
-rw-r--r-- | llvm/test/Transforms/LoopSimplify/unreachable-loop-pred.ll | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/llvm/test/Transforms/LoopSimplify/unreachable-loop-pred.ll b/llvm/test/Transforms/LoopSimplify/unreachable-loop-pred.ll deleted file mode 100644 index 1e92ee4ee3b..00000000000 --- a/llvm/test/Transforms/LoopSimplify/unreachable-loop-pred.ll +++ /dev/null @@ -1,69 +0,0 @@ -; RUN: opt -S -loop-simplify -disable-output -verify-loop-info -verify-dom-info < %s -; PR5235 - -; When loopsimplify inserts a preheader for this loop, it should add the new -; block to the enclosing loop and not get confused by the unreachable -; bogus loop entry. - -define void @is_extract_cab() nounwind { -entry: - br label %header - -header: ; preds = %if.end206, %cond.end66, %if.end23 - br label %while.body115 - -while.body115: ; preds = %9, %if.end192, %if.end101 - br i1 undef, label %header, label %while.body115 - -foo: - br label %while.body115 -} - -; When loopsimplify generates dedicated exit block for blocks that are landing -; pads (i.e. innerLoopExit in this test), we should not get confused with the -; unreachable pred (unreachableB) to innerLoopExit. -define align 8 void @baz(i32 %trip) personality i32* ()* @wobble { -entry: - br label %outerHeader - -outerHeader: - invoke void @foo() - to label %innerPreheader unwind label %innerLoopExit - -innerPreheader: - br label %innerH - -innerH: - %tmp50 = invoke i8 * undef() - to label %innerLatch unwind label %innerLoopExit - -innerLatch: - %cmp = icmp slt i32 %trip, 42 - br i1 %cmp, label %innerH, label %retblock - -unreachableB: ; No predecessors! - %tmp62 = invoke i8 * undef() - to label %retblock unwind label %innerLoopExit - -; undedicated exit block (preds from inner and outer loop) -; Also has unreachableB as pred. -innerLoopExit: - %tmp65 = landingpad { i8*, i32 } - cleanup - invoke void @foo() - to label %outerHeader unwind label %unwindblock - -unwindblock: - %tmp67 = landingpad { i8*, i32 } - cleanup - ret void - -retblock: - ret void -} - -; Function Attrs: nounwind -declare i32* @wobble() - -; Function Attrs: uwtable -declare void @foo() |