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.
5 implementation ; Functions:
7 int %ab(int %alpha, int %beta) {
9 br label %loopentry.1.preheader
11 loopentry.1.preheader: ; preds = %then.1
14 loopentry.1: ; preds = %loopentry.1.preheader, %no_exit.1
15 br bool false, label %no_exit.1, label %loopexit.0.loopexit1
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
21 shortcirc_next.2: ; preds = %no_exit.1
22 %tmp.563 = call int %wins( int 0, int %tmp.53, int 3 ) ; <int> [#uses=0]
25 loopexit.0.loopexit1: ; preds = %loopentry.1
28 loopexit.0: ; preds = %loopexit.0.loopexit, %loopexit.0.loopexit1
32 declare int %wins(int, int, int)
34 declare ushort %ab_code()