Make the llvm-runtest function much more amenable by eliminating all the
[oota-llvm.git] / test / Transforms / TailDup / 2003-08-23-InvalidatedPointers.ll
1 ; RUN: llvm-upgrade < %s | llvm-as | opt -tailduplicate -disable-output
2
3 implementation
4
5 int %sell_haggle() {
6 entry:          ; No predecessors!
7         br bool false, label %then.5, label %UnifiedExitNode
8
9 then.5:         ; preds = %entry
10         br bool false, label %loopentry.1.preheader, label %else.1
11
12 else.1:         ; preds = %then.5
13         br label %loopentry.1.preheader
14
15 loopentry.1.preheader:          ; preds = %then.5, %else.1
16         %final_ask.0 = phi int [ 0, %else.1 ], [ 0, %then.5 ]           ; <int> [#uses=2]
17         br label %loopentry.1
18
19 loopentry.1:            ; preds = %loopentry.1.preheader, %endif.17
20         switch uint 0, label %UnifiedExitNode [
21                  uint 2, label %UnifiedExitNode
22                  uint 1, label %endif.16
23         ]
24
25 endif.16:               ; preds = %loopentry.1
26         br bool false, label %then.17, label %UnifiedExitNode
27
28 then.17:                ; preds = %endif.16
29         br bool false, label %then.18, label %endif.17
30
31 then.18:                ; preds = %then.17
32         br bool false, label %endif.17, label %UnifiedExitNode
33
34 endif.17:               ; preds = %then.17, %then.18
35         %cur_ask.3 = phi int [ %final_ask.0, %then.17 ], [ %final_ask.0, %then.18 ]             ; <int> [#uses=0]
36         br bool false, label %loopentry.1, label %UnifiedExitNode
37
38 UnifiedExitNode:                ; preds = %entry, %endif.17, %then.18, %endif.16, %loopentry.1, %loopentry.1
39         ret int 0
40 }