When removing a function from the function set and adding it to deferred, we
[llvm.git] / test / Transforms / CodeExtractor / 2004-03-14-DominanceProblem.ll
bloba6ee63ec45aef96a384386c61d6f2628f878c36e
1 ; RUN: opt < %s -loop-extract -disable-output
2 ; This testcase is failing the loop extractor because not all exit blocks 
3 ; are dominated by all of the live-outs.
5 define i32 @ab(i32 %alpha, i32 %beta) {
6 entry:
7         br label %loopentry.1.preheader
9 loopentry.1.preheader:          ; preds = %entry
10         br label %loopentry.1
12 loopentry.1:            ; preds = %no_exit.1, %loopentry.1.preheader
13         br i1 false, label %no_exit.1, label %loopexit.0.loopexit1
15 no_exit.1:              ; preds = %loopentry.1
16         %tmp.53 = load i32* null                ; <i32> [#uses=1]
17         br i1 false, label %shortcirc_next.2, label %loopentry.1
19 shortcirc_next.2:               ; preds = %no_exit.1
20         %tmp.563 = call i32 @wins( i32 0, i32 %tmp.53, i32 3 )          ; <i32> [#uses=0]
21         ret i32 0
23 loopexit.0.loopexit1:           ; preds = %loopentry.1
24         br label %loopexit.0
26 loopexit.0:             ; preds = %loopexit.0.loopexit1
27         ret i32 0
30 declare i32 @wins(i32, i32, i32)
32 declare i16 @ab_code()