When removing a function from the function set and adding it to deferred, we
[llvm.git] / test / Transforms / LoopSimplify / unreachable-loop-pred.ll
blobfaaaf97d72fa4bf4d34bd0a6fd0e7cae269b9cd4
1 ; RUN: opt -S -loopsimplify -disable-output -verify-loop-info -verify-dom-info < %s
2 ; PR5235
4 ; When loopsimplify inserts a preheader for this loop, it should add the new
5 ; block to the enclosing loop and not get confused by the unreachable
6 ; bogus loop entry.
8 define void @is_extract_cab() nounwind {
9 entry:
10   br label %header
12 header:                                       ; preds = %if.end206, %cond.end66, %if.end23
13   br label %while.body115
15 while.body115:                                    ; preds = %9, %if.end192, %if.end101
16   br i1 undef, label %header, label %while.body115
18 foo:
19   br label %while.body115