1; RUN: opt -S -loop-simplify -disable-output -verify-loop-info -verify-dom-info < %s
2; PR5235
3
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.
7
8define void @is_extract_cab() nounwind {
9entry:
10  br label %header
11
12header:                                       ; preds = %if.end206, %cond.end66, %if.end23
13  br label %while.body115
14
15while.body115:                                    ; preds = %9, %if.end192, %if.end101
16  br i1 undef, label %header, label %while.body115
17
18foo:
19  br label %while.body115
20}
21