2003-04-27 03:33:51 +08:00
|
|
|
; This testcase exposed a problem with the loop identification pass (LoopInfo).
|
|
|
|
; Basically, it was incorrectly calculating the loop nesting information.
|
|
|
|
;
|
2011-02-11 07:38:10 +08:00
|
|
|
; RUN: opt < %s -loop-simplify
|
2003-04-26 07:26:52 +08:00
|
|
|
|
2008-03-25 12:26:08 +08:00
|
|
|
define i32 @yylex() {
|
2003-04-26 07:26:52 +08:00
|
|
|
br label %loopentry.0
|
2008-03-25 12:26:08 +08:00
|
|
|
loopentry.0: ; preds = %else.4, %0
|
2003-04-26 07:26:52 +08:00
|
|
|
br label %loopexit.2
|
2008-03-25 12:26:08 +08:00
|
|
|
loopexit.2: ; preds = %else.4, %loopexit.2, %loopentry.0
|
|
|
|
br i1 false, label %loopexit.2, label %else.4
|
|
|
|
yy_find_action: ; preds = %else.4
|
2003-04-26 07:26:52 +08:00
|
|
|
br label %else.4
|
2008-03-25 12:26:08 +08:00
|
|
|
else.4: ; preds = %yy_find_action, %loopexit.2
|
|
|
|
switch i32 0, label %loopexit.2 [
|
|
|
|
i32 2, label %yy_find_action
|
|
|
|
i32 0, label %loopentry.0
|
2003-04-26 07:26:52 +08:00
|
|
|
]
|
|
|
|
}
|
2008-03-25 12:26:08 +08:00
|
|
|
|