New testcase
[oota-llvm.git] / test / Transforms / CodeExtractor / 2004-03-14-DominanceProblem.ll
1 ; RUN: llvm-as < %s | opt -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.
4
5 implementation   ; Functions:
6
7 int %ab(int %alpha, int %beta) {
8 entry:
9         br label %loopentry.1.preheader
10
11 loopentry.1.preheader:          ; preds = %then.1
12         br label %loopentry.1
13
14 loopentry.1:            ; preds = %loopentry.1.preheader, %no_exit.1
15         br bool false, label %no_exit.1, label %loopexit.0.loopexit1
16
17 no_exit.1:              ; preds = %loopentry.1
18         %tmp.53 = load int* null                ; <int> [#uses=1]
19         br bool false, label %shortcirc_next.2, label %loopentry.1
20
21 shortcirc_next.2:               ; preds = %no_exit.1
22         %tmp.563 = call int %wins( int 0, int %tmp.53, int 3 )          ; <int> [#uses=0]
23         ret int 0
24
25 loopexit.0.loopexit1:           ; preds = %loopentry.1
26         br label %loopexit.0
27
28 loopexit.0:             ; preds = %loopexit.0.loopexit, %loopexit.0.loopexit1
29         ret int 0
30 }
31
32 declare int %wins(int, int, int)
33
34 declare ushort %ab_code()