Dan Gohman | 1880092 | 2009-09-11 18:01:28 +0000 | [diff] [blame] | 1 | ; RUN: opt < %s -lcssa |
Easwaran Raman | e12c487 | 2016-06-09 19:44:46 +0000 | [diff] [blame] | 2 | ; RUN: opt < %s -passes=lcssa |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 3 | |
| 4 | target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32" |
| 5 | |
| 6 | @.str12 = external constant [3 x i8], align 1 ; <[3 x i8]*> [#uses=1] |
| 7 | @.str17175 = external constant [4 x i8], align 1 ; <[4 x i8]*> [#uses=1] |
| 8 | @.str21179 = external constant [12 x i8], align 1 ; <[12 x i8]*> [#uses=1] |
| 9 | @.str25183 = external constant [10 x i8], align 1 ; <[10 x i8]*> [#uses=1] |
| 10 | @.str32190 = external constant [92 x i8], align 1 ; <[92 x i8]*> [#uses=1] |
| 11 | @.str41 = external constant [25 x i8], align 1 ; <[25 x i8]*> [#uses=1] |
| 12 | |
David Majnemer | 7fddecc | 2015-06-17 20:52:32 +0000 | [diff] [blame] | 13 | define void @_ZN8EtherBus10initializeEv() personality i32 (...)* @__gxx_personality_v0 { |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 14 | entry: |
| 15 | br i1 undef, label %_ZN7cObjectnwEj.exit, label %bb.i |
| 16 | |
| 17 | bb.i: ; preds = %entry |
| 18 | br label %_ZN7cObjectnwEj.exit |
| 19 | |
| 20 | _ZN7cObjectnwEj.exit: ; preds = %bb.i, %entry |
David Blaikie | f72d05b | 2015-03-13 18:20:45 +0000 | [diff] [blame] | 21 | invoke void @_ZN7cObjectC2EPKc(i8* undef, i8* getelementptr ([12 x i8], [12 x i8]* @.str21179, i32 0, i32 0)) |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 22 | to label %bb1 unwind label %lpad |
| 23 | |
| 24 | bb1: ; preds = %_ZN7cObjectnwEj.exit |
| 25 | br i1 undef, label %_ZNK5cGate4sizeEv.exit, label %bb.i110 |
| 26 | |
| 27 | bb.i110: ; preds = %bb1 |
| 28 | br label %_ZNK5cGate4sizeEv.exit |
| 29 | |
| 30 | _ZNK5cGate4sizeEv.exit: ; preds = %bb.i110, %bb1 |
| 31 | br i1 undef, label %_ZNK5cGate4sizeEv.exit122, label %bb.i120 |
| 32 | |
| 33 | bb.i120: ; preds = %_ZNK5cGate4sizeEv.exit |
| 34 | br label %_ZNK5cGate4sizeEv.exit122 |
| 35 | |
| 36 | _ZNK5cGate4sizeEv.exit122: ; preds = %bb.i120, %_ZNK5cGate4sizeEv.exit |
| 37 | br i1 undef, label %bb8, label %bb2 |
| 38 | |
| 39 | bb2: ; preds = %_ZNK5cGate4sizeEv.exit122 |
| 40 | unreachable |
| 41 | |
| 42 | bb8: ; preds = %_ZNK5cGate4sizeEv.exit122 |
David Blaikie | f72d05b | 2015-03-13 18:20:45 +0000 | [diff] [blame] | 43 | %tmp = invoke i8* @_ZN7cModule3parEPKc(i8* undef, i8* getelementptr ([10 x i8], [10 x i8]* @.str25183, i32 0, i32 0)) |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 44 | to label %invcont9 unwind label %lpad119 ; <i8*> [#uses=1] |
| 45 | |
| 46 | invcont9: ; preds = %bb8 |
| 47 | %tmp1 = invoke i8* @_ZN4cPar11stringValueEv(i8* %tmp) |
| 48 | to label %invcont10 unwind label %lpad119 ; <i8*> [#uses=1] |
| 49 | |
| 50 | invcont10: ; preds = %invcont9 |
| 51 | invoke void @_ZN8EtherBus8tokenizeEPKcRSt6vectorIdSaIdEE(i8* null, i8* %tmp1, i8* undef) |
| 52 | to label %invcont11 unwind label %lpad119 |
| 53 | |
| 54 | invcont11: ; preds = %invcont10 |
| 55 | br i1 undef, label %bb12, label %bb18 |
| 56 | |
| 57 | bb12: ; preds = %invcont11 |
David Blaikie | 445e3fb | 2015-04-24 19:32:54 +0000 | [diff] [blame] | 58 | invoke void (i8*, i8*, ...) @_ZN6cEnvir6printfEPKcz(i8* null, i8* getelementptr ([3 x i8], [3 x i8]* @.str12, i32 0, i32 0), i32 undef) |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 59 | to label %bb.i.i159 unwind label %lpad119 |
| 60 | |
| 61 | bb.i.i159: ; preds = %bb12 |
| 62 | unreachable |
| 63 | |
| 64 | bb18: ; preds = %invcont11 |
| 65 | br i1 undef, label %bb32, label %bb34 |
| 66 | |
| 67 | bb32: ; preds = %bb18 |
| 68 | br i1 undef, label %bb.i.i123, label %bb34 |
| 69 | |
| 70 | bb.i.i123: ; preds = %bb32 |
| 71 | br label %bb34 |
| 72 | |
| 73 | bb34: ; preds = %bb.i.i123, %bb32, %bb18 |
| 74 | %tmp2 = invoke i8* @_Znaj(i32 undef) |
| 75 | to label %invcont35 unwind label %lpad119 ; <i8*> [#uses=0] |
| 76 | |
| 77 | invcont35: ; preds = %bb34 |
| 78 | br i1 undef, label %bb49, label %bb61 |
| 79 | |
| 80 | bb49: ; preds = %invcont35 |
David Blaikie | 445e3fb | 2015-04-24 19:32:54 +0000 | [diff] [blame] | 81 | invoke void (i8*, i8*, ...) @_ZNK13cSimpleModule5errorEPKcz(i8* undef, i8* getelementptr ([92 x i8], [92 x i8]* @.str32190, i32 0, i32 0)) |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 82 | to label %bb51 unwind label %lpad119 |
| 83 | |
| 84 | bb51: ; preds = %bb49 |
| 85 | unreachable |
| 86 | |
| 87 | bb61: ; preds = %invcont35 |
| 88 | br label %bb106 |
| 89 | |
| 90 | .noexc: ; preds = %bb106 |
David Blaikie | f72d05b | 2015-03-13 18:20:45 +0000 | [diff] [blame] | 91 | invoke void @_ZN7cObjectC2EPKc(i8* undef, i8* getelementptr ([25 x i8], [25 x i8]* @.str41, i32 0, i32 0)) |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 92 | to label %bb102 unwind label %lpad123 |
| 93 | |
| 94 | bb102: ; preds = %.noexc |
| 95 | invoke void undef(i8* undef, i8 zeroext 1) |
| 96 | to label %invcont103 unwind label %lpad119 |
| 97 | |
| 98 | invcont103: ; preds = %bb102 |
| 99 | invoke void undef(i8* undef, double 1.000000e+07) |
| 100 | to label %invcont104 unwind label %lpad119 |
| 101 | |
| 102 | invcont104: ; preds = %invcont103 |
David Blaikie | f72d05b | 2015-03-13 18:20:45 +0000 | [diff] [blame] | 103 | %tmp3 = invoke i32 @_ZN13cSimpleModule11sendDelayedEP8cMessagedPKci(i8* undef, i8* undef, double 0.000000e+00, i8* getelementptr ([4 x i8], [4 x i8]* @.str17175, i32 0, i32 0), i32 undef) |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 104 | to label %invcont105 unwind label %lpad119 ; <i32> [#uses=0] |
| 105 | |
| 106 | invcont105: ; preds = %invcont104 |
| 107 | br label %bb106 |
| 108 | |
| 109 | bb106: ; preds = %invcont105, %bb61 |
| 110 | %tmp4 = invoke i8* @_Znaj(i32 124) |
| 111 | to label %.noexc unwind label %lpad119 ; <i8*> [#uses=1] |
| 112 | |
| 113 | lpad: ; preds = %_ZN7cObjectnwEj.exit |
David Majnemer | 7fddecc | 2015-06-17 20:52:32 +0000 | [diff] [blame] | 114 | %exn = landingpad {i8*, i32} |
Bill Wendling | 4aa2573 | 2011-09-02 22:41:11 +0000 | [diff] [blame] | 115 | cleanup |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 116 | br label %Unwind |
| 117 | |
| 118 | lpad119: ; preds = %bb106, %invcont104, %invcont103, %bb102, %bb49, %bb34, %bb12, %invcont10, %invcont9, %bb8 |
David Majnemer | 7fddecc | 2015-06-17 20:52:32 +0000 | [diff] [blame] | 119 | %exn119 = landingpad {i8*, i32} |
Bill Wendling | 4aa2573 | 2011-09-02 22:41:11 +0000 | [diff] [blame] | 120 | cleanup |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 121 | unreachable |
| 122 | |
| 123 | lpad123: ; preds = %.noexc |
David Majnemer | 7fddecc | 2015-06-17 20:52:32 +0000 | [diff] [blame] | 124 | %exn123 = landingpad {i8*, i32} |
Bill Wendling | 4aa2573 | 2011-09-02 22:41:11 +0000 | [diff] [blame] | 125 | cleanup |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 126 | %tmp5 = icmp eq i8* %tmp4, null ; <i1> [#uses=1] |
| 127 | br i1 %tmp5, label %Unwind, label %bb.i2 |
| 128 | |
| 129 | bb.i2: ; preds = %lpad123 |
| 130 | br label %Unwind |
| 131 | |
| 132 | Unwind: ; preds = %bb.i2, %lpad123, %lpad |
| 133 | unreachable |
| 134 | } |
| 135 | |
Bill Wendling | 4aa2573 | 2011-09-02 22:41:11 +0000 | [diff] [blame] | 136 | declare i32 @__gxx_personality_v0(...) |
| 137 | |
Dan Gohman | 7eaf50e | 2009-06-26 00:31:13 +0000 | [diff] [blame] | 138 | declare void @_ZN8EtherBus8tokenizeEPKcRSt6vectorIdSaIdEE(i8* nocapture, i8*, i8*) |
| 139 | |
| 140 | declare i8* @_Znaj(i32) |
| 141 | |
| 142 | declare void @_ZN6cEnvir6printfEPKcz(i8* nocapture, i8* nocapture, ...) |
| 143 | |
| 144 | declare void @_ZNK13cSimpleModule5errorEPKcz(i8* nocapture, i8* nocapture, ...) noreturn |
| 145 | |
| 146 | declare i8* @_ZN7cModule3parEPKc(i8*, i8*) |
| 147 | |
| 148 | declare i32 @_ZN13cSimpleModule11sendDelayedEP8cMessagedPKci(i8*, i8*, double, i8*, i32) |
| 149 | |
| 150 | declare void @_ZN7cObjectC2EPKc(i8*, i8*) |
| 151 | |
| 152 | declare i8* @_ZN4cPar11stringValueEv(i8*) |