blob: a3da5232bb88f8798e23dca9345c947695573cc2 [file] [log] [blame]
Chris Lattnered69ad72003-05-15 18:03:03 +00001; This testcase was incorrectly computing that the loopentry.7 loop was
2; not a child of the loopentry.6 loop.
3;
Tanya Lattnerdcd188d2008-02-14 06:56:27 +00004; RUN: llvm-as < %s | opt -analyze -loops | \
Reid Spencereb1d74e2007-04-16 17:36:08 +00005; RUN: grep {^ Loop Containing: %loopentry.7}
Chris Lattnered69ad72003-05-15 18:03:03 +00006
Tanya Lattnerdcd188d2008-02-14 06:56:27 +00007define void @getAndMoveToFrontDecode() {
Chris Lattnered69ad72003-05-15 18:03:03 +00008 br label %endif.2
9
Tanya Lattnerdcd188d2008-02-14 06:56:27 +000010endif.2: ; preds = %loopexit.5, %0
11 br i1 false, label %loopentry.5, label %UnifiedExitNode
Chris Lattnered69ad72003-05-15 18:03:03 +000012
Tanya Lattnerdcd188d2008-02-14 06:56:27 +000013loopentry.5: ; preds = %loopexit.6, %endif.2
14 br i1 false, label %loopentry.6, label %UnifiedExitNode
Chris Lattnered69ad72003-05-15 18:03:03 +000015
Tanya Lattnerdcd188d2008-02-14 06:56:27 +000016loopentry.6: ; preds = %loopentry.7, %loopentry.5
17 br i1 false, label %loopentry.7, label %loopexit.6
Chris Lattnered69ad72003-05-15 18:03:03 +000018
Tanya Lattnerdcd188d2008-02-14 06:56:27 +000019loopentry.7: ; preds = %loopentry.7, %loopentry.6
20 br i1 false, label %loopentry.7, label %loopentry.6
Chris Lattnered69ad72003-05-15 18:03:03 +000021
22loopexit.6: ; preds = %loopentry.6
Tanya Lattnerdcd188d2008-02-14 06:56:27 +000023 br i1 false, label %loopentry.5, label %loopexit.5
Chris Lattnered69ad72003-05-15 18:03:03 +000024
25loopexit.5: ; preds = %loopexit.6
Tanya Lattnerdcd188d2008-02-14 06:56:27 +000026 br i1 false, label %endif.2, label %UnifiedExitNode
Chris Lattnered69ad72003-05-15 18:03:03 +000027
Tanya Lattnerdcd188d2008-02-14 06:56:27 +000028UnifiedExitNode: ; preds = %loopexit.5, %loopentry.5, %endif.2
Chris Lattnered69ad72003-05-15 18:03:03 +000029 ret void
30}