Merge branch 'master' into msp430
[llvm/msp430.git] / test / Transforms / TailDup / 2003-08-23-InvalidatedPointers.ll
blob1fae77b0892e80139138b6a319c5eb301eee2b36
1 ; RUN: llvm-as < %s | opt -tailduplicate -disable-output
3 define i32 @sell_haggle() {
4 entry:
5         br i1 false, label %then.5, label %UnifiedExitNode
6 then.5:         ; preds = %entry
7         br i1 false, label %loopentry.1.preheader, label %else.1
8 else.1:         ; preds = %then.5
9         br label %loopentry.1.preheader
10 loopentry.1.preheader:          ; preds = %else.1, %then.5
11         %final_ask.0 = phi i32 [ 0, %else.1 ], [ 0, %then.5 ]           ; <i32> [#uses=2]
12         br label %loopentry.1
13 loopentry.1:            ; preds = %endif.17, %loopentry.1.preheader
14         switch i32 0, label %UnifiedExitNode [
15                  i32 2, label %UnifiedExitNode
16                  i32 1, label %endif.16
17         ]
18 endif.16:               ; preds = %loopentry.1
19         br i1 false, label %then.17, label %UnifiedExitNode
20 then.17:                ; preds = %endif.16
21         br i1 false, label %then.18, label %endif.17
22 then.18:                ; preds = %then.17
23         br i1 false, label %endif.17, label %UnifiedExitNode
24 endif.17:               ; preds = %then.18, %then.17
25         %cur_ask.3 = phi i32 [ %final_ask.0, %then.17 ], [ %final_ask.0, %then.18 ]             ; <i32> [#uses=0]
26         br i1 false, label %loopentry.1, label %UnifiedExitNode
27 UnifiedExitNode:                ; preds = %endif.17, %then.18, %endif.16, %loopentry.1, %loopentry.1, %entry
28         ret i32 0