In some rare cases, the register allocator can spill registers but end up not utilizi...
[llvm/msp430.git] / test / Analysis / LoopInfo / 2003-05-15-NestingProblem.ll
blob34b9c4431810c8d8af1598281f5790ed6c7b65f8
1 ; This testcase was incorrectly computing that the loopentry.7 loop was
2 ; not a child of the loopentry.6 loop.
4 ; RUN: llvm-as < %s | opt -analyze -loops | \
5 ; RUN:   grep {^            Loop at depth 4 containing: %loopentry.7<header><latch><exit>}
7 define void @getAndMoveToFrontDecode() {
8         br label %endif.2
10 endif.2:                ; preds = %loopexit.5, %0
11         br i1 false, label %loopentry.5, label %UnifiedExitNode
13 loopentry.5:            ; preds = %loopexit.6, %endif.2
14         br i1 false, label %loopentry.6, label %UnifiedExitNode
16 loopentry.6:            ; preds = %loopentry.7, %loopentry.5
17         br i1 false, label %loopentry.7, label %loopexit.6
19 loopentry.7:            ; preds = %loopentry.7, %loopentry.6
20         br i1 false, label %loopentry.7, label %loopentry.6
22 loopexit.6:             ; preds = %loopentry.6
23         br i1 false, label %loopentry.5, label %loopexit.5
25 loopexit.5:             ; preds = %loopexit.6
26         br i1 false, label %endif.2, label %UnifiedExitNode
28 UnifiedExitNode:                ; preds = %loopexit.5, %loopentry.5, %endif.2
29         ret void