blob: 66bf1a0caa97e7c88ad29e8dbbb71e61ca99cd2e [file] [log] [blame]
Chris Lattneraa709d02003-04-26 19:33:51 +00001; This testcase exposed a problem with the loop identification pass (LoopInfo).
2; Basically, it was incorrectly calculating the loop nesting information.
3;
Cameron Zwarich4a60b932011-02-10 23:38:10 +00004; RUN: opt < %s -loop-simplify
Chris Lattnerd96f1eb2003-04-25 23:26:52 +00005
Tanya Lattner6f729d62008-03-25 04:26:08 +00006define i32 @yylex() {
Chris Lattnerd96f1eb2003-04-25 23:26:52 +00007 br label %loopentry.0
Tanya Lattner6f729d62008-03-25 04:26:08 +00008loopentry.0: ; preds = %else.4, %0
Chris Lattnerd96f1eb2003-04-25 23:26:52 +00009 br label %loopexit.2
Tanya Lattner6f729d62008-03-25 04:26:08 +000010loopexit.2: ; preds = %else.4, %loopexit.2, %loopentry.0
11 br i1 false, label %loopexit.2, label %else.4
12yy_find_action: ; preds = %else.4
Chris Lattnerd96f1eb2003-04-25 23:26:52 +000013 br label %else.4
Tanya Lattner6f729d62008-03-25 04:26:08 +000014else.4: ; preds = %yy_find_action, %loopexit.2
15 switch i32 0, label %loopexit.2 [
16 i32 2, label %yy_find_action
17 i32 0, label %loopentry.0
Chris Lattnerd96f1eb2003-04-25 23:26:52 +000018 ]
19}
Tanya Lattner6f729d62008-03-25 04:26:08 +000020