1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -lcssa 2*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -passes=lcssa 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workertarget 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*9880d681SAndroid Build Coastguard Worker 6*9880d681SAndroid Build Coastguard Worker@.str12 = external constant [3 x i8], align 1 ; <[3 x i8]*> [#uses=1] 7*9880d681SAndroid Build Coastguard Worker@.str17175 = external constant [4 x i8], align 1 ; <[4 x i8]*> [#uses=1] 8*9880d681SAndroid Build Coastguard Worker@.str21179 = external constant [12 x i8], align 1 ; <[12 x i8]*> [#uses=1] 9*9880d681SAndroid Build Coastguard Worker@.str25183 = external constant [10 x i8], align 1 ; <[10 x i8]*> [#uses=1] 10*9880d681SAndroid Build Coastguard Worker@.str32190 = external constant [92 x i8], align 1 ; <[92 x i8]*> [#uses=1] 11*9880d681SAndroid Build Coastguard Worker@.str41 = external constant [25 x i8], align 1 ; <[25 x i8]*> [#uses=1] 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Workerdefine void @_ZN8EtherBus10initializeEv() personality i32 (...)* @__gxx_personality_v0 { 14*9880d681SAndroid Build Coastguard Workerentry: 15*9880d681SAndroid Build Coastguard Worker br i1 undef, label %_ZN7cObjectnwEj.exit, label %bb.i 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Workerbb.i: ; preds = %entry 18*9880d681SAndroid Build Coastguard Worker br label %_ZN7cObjectnwEj.exit 19*9880d681SAndroid Build Coastguard Worker 20*9880d681SAndroid Build Coastguard Worker_ZN7cObjectnwEj.exit: ; preds = %bb.i, %entry 21*9880d681SAndroid Build Coastguard Worker invoke void @_ZN7cObjectC2EPKc(i8* undef, i8* getelementptr ([12 x i8], [12 x i8]* @.str21179, i32 0, i32 0)) 22*9880d681SAndroid Build Coastguard Worker to label %bb1 unwind label %lpad 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Workerbb1: ; preds = %_ZN7cObjectnwEj.exit 25*9880d681SAndroid Build Coastguard Worker br i1 undef, label %_ZNK5cGate4sizeEv.exit, label %bb.i110 26*9880d681SAndroid Build Coastguard Worker 27*9880d681SAndroid Build Coastguard Workerbb.i110: ; preds = %bb1 28*9880d681SAndroid Build Coastguard Worker br label %_ZNK5cGate4sizeEv.exit 29*9880d681SAndroid Build Coastguard Worker 30*9880d681SAndroid Build Coastguard Worker_ZNK5cGate4sizeEv.exit: ; preds = %bb.i110, %bb1 31*9880d681SAndroid Build Coastguard Worker br i1 undef, label %_ZNK5cGate4sizeEv.exit122, label %bb.i120 32*9880d681SAndroid Build Coastguard Worker 33*9880d681SAndroid Build Coastguard Workerbb.i120: ; preds = %_ZNK5cGate4sizeEv.exit 34*9880d681SAndroid Build Coastguard Worker br label %_ZNK5cGate4sizeEv.exit122 35*9880d681SAndroid Build Coastguard Worker 36*9880d681SAndroid Build Coastguard Worker_ZNK5cGate4sizeEv.exit122: ; preds = %bb.i120, %_ZNK5cGate4sizeEv.exit 37*9880d681SAndroid Build Coastguard Worker br i1 undef, label %bb8, label %bb2 38*9880d681SAndroid Build Coastguard Worker 39*9880d681SAndroid Build Coastguard Workerbb2: ; preds = %_ZNK5cGate4sizeEv.exit122 40*9880d681SAndroid Build Coastguard Worker unreachable 41*9880d681SAndroid Build Coastguard Worker 42*9880d681SAndroid Build Coastguard Workerbb8: ; preds = %_ZNK5cGate4sizeEv.exit122 43*9880d681SAndroid Build Coastguard Worker %tmp = invoke i8* @_ZN7cModule3parEPKc(i8* undef, i8* getelementptr ([10 x i8], [10 x i8]* @.str25183, i32 0, i32 0)) 44*9880d681SAndroid Build Coastguard Worker to label %invcont9 unwind label %lpad119 ; <i8*> [#uses=1] 45*9880d681SAndroid Build Coastguard Worker 46*9880d681SAndroid Build Coastguard Workerinvcont9: ; preds = %bb8 47*9880d681SAndroid Build Coastguard Worker %tmp1 = invoke i8* @_ZN4cPar11stringValueEv(i8* %tmp) 48*9880d681SAndroid Build Coastguard Worker to label %invcont10 unwind label %lpad119 ; <i8*> [#uses=1] 49*9880d681SAndroid Build Coastguard Worker 50*9880d681SAndroid Build Coastguard Workerinvcont10: ; preds = %invcont9 51*9880d681SAndroid Build Coastguard Worker invoke void @_ZN8EtherBus8tokenizeEPKcRSt6vectorIdSaIdEE(i8* null, i8* %tmp1, i8* undef) 52*9880d681SAndroid Build Coastguard Worker to label %invcont11 unwind label %lpad119 53*9880d681SAndroid Build Coastguard Worker 54*9880d681SAndroid Build Coastguard Workerinvcont11: ; preds = %invcont10 55*9880d681SAndroid Build Coastguard Worker br i1 undef, label %bb12, label %bb18 56*9880d681SAndroid Build Coastguard Worker 57*9880d681SAndroid Build Coastguard Workerbb12: ; preds = %invcont11 58*9880d681SAndroid Build Coastguard Worker invoke void (i8*, i8*, ...) @_ZN6cEnvir6printfEPKcz(i8* null, i8* getelementptr ([3 x i8], [3 x i8]* @.str12, i32 0, i32 0), i32 undef) 59*9880d681SAndroid Build Coastguard Worker to label %bb.i.i159 unwind label %lpad119 60*9880d681SAndroid Build Coastguard Worker 61*9880d681SAndroid Build Coastguard Workerbb.i.i159: ; preds = %bb12 62*9880d681SAndroid Build Coastguard Worker unreachable 63*9880d681SAndroid Build Coastguard Worker 64*9880d681SAndroid Build Coastguard Workerbb18: ; preds = %invcont11 65*9880d681SAndroid Build Coastguard Worker br i1 undef, label %bb32, label %bb34 66*9880d681SAndroid Build Coastguard Worker 67*9880d681SAndroid Build Coastguard Workerbb32: ; preds = %bb18 68*9880d681SAndroid Build Coastguard Worker br i1 undef, label %bb.i.i123, label %bb34 69*9880d681SAndroid Build Coastguard Worker 70*9880d681SAndroid Build Coastguard Workerbb.i.i123: ; preds = %bb32 71*9880d681SAndroid Build Coastguard Worker br label %bb34 72*9880d681SAndroid Build Coastguard Worker 73*9880d681SAndroid Build Coastguard Workerbb34: ; preds = %bb.i.i123, %bb32, %bb18 74*9880d681SAndroid Build Coastguard Worker %tmp2 = invoke i8* @_Znaj(i32 undef) 75*9880d681SAndroid Build Coastguard Worker to label %invcont35 unwind label %lpad119 ; <i8*> [#uses=0] 76*9880d681SAndroid Build Coastguard Worker 77*9880d681SAndroid Build Coastguard Workerinvcont35: ; preds = %bb34 78*9880d681SAndroid Build Coastguard Worker br i1 undef, label %bb49, label %bb61 79*9880d681SAndroid Build Coastguard Worker 80*9880d681SAndroid Build Coastguard Workerbb49: ; preds = %invcont35 81*9880d681SAndroid Build Coastguard Worker invoke void (i8*, i8*, ...) @_ZNK13cSimpleModule5errorEPKcz(i8* undef, i8* getelementptr ([92 x i8], [92 x i8]* @.str32190, i32 0, i32 0)) 82*9880d681SAndroid Build Coastguard Worker to label %bb51 unwind label %lpad119 83*9880d681SAndroid Build Coastguard Worker 84*9880d681SAndroid Build Coastguard Workerbb51: ; preds = %bb49 85*9880d681SAndroid Build Coastguard Worker unreachable 86*9880d681SAndroid Build Coastguard Worker 87*9880d681SAndroid Build Coastguard Workerbb61: ; preds = %invcont35 88*9880d681SAndroid Build Coastguard Worker br label %bb106 89*9880d681SAndroid Build Coastguard Worker 90*9880d681SAndroid Build Coastguard Worker.noexc: ; preds = %bb106 91*9880d681SAndroid Build Coastguard Worker invoke void @_ZN7cObjectC2EPKc(i8* undef, i8* getelementptr ([25 x i8], [25 x i8]* @.str41, i32 0, i32 0)) 92*9880d681SAndroid Build Coastguard Worker to label %bb102 unwind label %lpad123 93*9880d681SAndroid Build Coastguard Worker 94*9880d681SAndroid Build Coastguard Workerbb102: ; preds = %.noexc 95*9880d681SAndroid Build Coastguard Worker invoke void undef(i8* undef, i8 zeroext 1) 96*9880d681SAndroid Build Coastguard Worker to label %invcont103 unwind label %lpad119 97*9880d681SAndroid Build Coastguard Worker 98*9880d681SAndroid Build Coastguard Workerinvcont103: ; preds = %bb102 99*9880d681SAndroid Build Coastguard Worker invoke void undef(i8* undef, double 1.000000e+07) 100*9880d681SAndroid Build Coastguard Worker to label %invcont104 unwind label %lpad119 101*9880d681SAndroid Build Coastguard Worker 102*9880d681SAndroid Build Coastguard Workerinvcont104: ; preds = %invcont103 103*9880d681SAndroid Build Coastguard Worker %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) 104*9880d681SAndroid Build Coastguard Worker to label %invcont105 unwind label %lpad119 ; <i32> [#uses=0] 105*9880d681SAndroid Build Coastguard Worker 106*9880d681SAndroid Build Coastguard Workerinvcont105: ; preds = %invcont104 107*9880d681SAndroid Build Coastguard Worker br label %bb106 108*9880d681SAndroid Build Coastguard Worker 109*9880d681SAndroid Build Coastguard Workerbb106: ; preds = %invcont105, %bb61 110*9880d681SAndroid Build Coastguard Worker %tmp4 = invoke i8* @_Znaj(i32 124) 111*9880d681SAndroid Build Coastguard Worker to label %.noexc unwind label %lpad119 ; <i8*> [#uses=1] 112*9880d681SAndroid Build Coastguard Worker 113*9880d681SAndroid Build Coastguard Workerlpad: ; preds = %_ZN7cObjectnwEj.exit 114*9880d681SAndroid Build Coastguard Worker %exn = landingpad {i8*, i32} 115*9880d681SAndroid Build Coastguard Worker cleanup 116*9880d681SAndroid Build Coastguard Worker br label %Unwind 117*9880d681SAndroid Build Coastguard Worker 118*9880d681SAndroid Build Coastguard Workerlpad119: ; preds = %bb106, %invcont104, %invcont103, %bb102, %bb49, %bb34, %bb12, %invcont10, %invcont9, %bb8 119*9880d681SAndroid Build Coastguard Worker %exn119 = landingpad {i8*, i32} 120*9880d681SAndroid Build Coastguard Worker cleanup 121*9880d681SAndroid Build Coastguard Worker unreachable 122*9880d681SAndroid Build Coastguard Worker 123*9880d681SAndroid Build Coastguard Workerlpad123: ; preds = %.noexc 124*9880d681SAndroid Build Coastguard Worker %exn123 = landingpad {i8*, i32} 125*9880d681SAndroid Build Coastguard Worker cleanup 126*9880d681SAndroid Build Coastguard Worker %tmp5 = icmp eq i8* %tmp4, null ; <i1> [#uses=1] 127*9880d681SAndroid Build Coastguard Worker br i1 %tmp5, label %Unwind, label %bb.i2 128*9880d681SAndroid Build Coastguard Worker 129*9880d681SAndroid Build Coastguard Workerbb.i2: ; preds = %lpad123 130*9880d681SAndroid Build Coastguard Worker br label %Unwind 131*9880d681SAndroid Build Coastguard Worker 132*9880d681SAndroid Build Coastguard WorkerUnwind: ; preds = %bb.i2, %lpad123, %lpad 133*9880d681SAndroid Build Coastguard Worker unreachable 134*9880d681SAndroid Build Coastguard Worker} 135*9880d681SAndroid Build Coastguard Worker 136*9880d681SAndroid Build Coastguard Workerdeclare i32 @__gxx_personality_v0(...) 137*9880d681SAndroid Build Coastguard Worker 138*9880d681SAndroid Build Coastguard Workerdeclare void @_ZN8EtherBus8tokenizeEPKcRSt6vectorIdSaIdEE(i8* nocapture, i8*, i8*) 139*9880d681SAndroid Build Coastguard Worker 140*9880d681SAndroid Build Coastguard Workerdeclare i8* @_Znaj(i32) 141*9880d681SAndroid Build Coastguard Worker 142*9880d681SAndroid Build Coastguard Workerdeclare void @_ZN6cEnvir6printfEPKcz(i8* nocapture, i8* nocapture, ...) 143*9880d681SAndroid Build Coastguard Worker 144*9880d681SAndroid Build Coastguard Workerdeclare void @_ZNK13cSimpleModule5errorEPKcz(i8* nocapture, i8* nocapture, ...) noreturn 145*9880d681SAndroid Build Coastguard Worker 146*9880d681SAndroid Build Coastguard Workerdeclare i8* @_ZN7cModule3parEPKc(i8*, i8*) 147*9880d681SAndroid Build Coastguard Worker 148*9880d681SAndroid Build Coastguard Workerdeclare i32 @_ZN13cSimpleModule11sendDelayedEP8cMessagedPKci(i8*, i8*, double, i8*, i32) 149*9880d681SAndroid Build Coastguard Worker 150*9880d681SAndroid Build Coastguard Workerdeclare void @_ZN7cObjectC2EPKc(i8*, i8*) 151*9880d681SAndroid Build Coastguard Worker 152*9880d681SAndroid Build Coastguard Workerdeclare i8* @_ZN4cPar11stringValueEv(i8*) 153