1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=powerpc-apple-darwin 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker %struct.HDescriptor = type <{ i32, i32 }> 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Workerdeclare void @bcopy(i8*, i8*, i32) 6*9880d681SAndroid Build Coastguard Worker 7*9880d681SAndroid Build Coastguard Workerdefine i32 @main(i32 %argc, i8** %argv) { 8*9880d681SAndroid Build Coastguard Workerentry: 9*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb31, label %bb 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Workerbb: ; preds = %entry 12*9880d681SAndroid Build Coastguard Worker ret i32 -6 13*9880d681SAndroid Build Coastguard Worker 14*9880d681SAndroid Build Coastguard Workerbb31: ; preds = %entry 15*9880d681SAndroid Build Coastguard Worker switch i32 0, label %bb189 [ 16*9880d681SAndroid Build Coastguard Worker i32 73, label %cond_next209 17*9880d681SAndroid Build Coastguard Worker i32 74, label %bb74 18*9880d681SAndroid Build Coastguard Worker i32 77, label %bb57 19*9880d681SAndroid Build Coastguard Worker i32 78, label %cond_next209 20*9880d681SAndroid Build Coastguard Worker i32 85, label %cond_next209 21*9880d681SAndroid Build Coastguard Worker i32 97, label %cond_next209 22*9880d681SAndroid Build Coastguard Worker i32 100, label %cond_next209 23*9880d681SAndroid Build Coastguard Worker i32 107, label %cond_next209 24*9880d681SAndroid Build Coastguard Worker i32 109, label %bb57 25*9880d681SAndroid Build Coastguard Worker i32 112, label %bb43 26*9880d681SAndroid Build Coastguard Worker i32 115, label %cond_next209 27*9880d681SAndroid Build Coastguard Worker i32 117, label %bb51 28*9880d681SAndroid Build Coastguard Worker ] 29*9880d681SAndroid Build Coastguard Worker 30*9880d681SAndroid Build Coastguard Workerbb43: ; preds = %bb31 31*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true48, label %cond_true200.critedge2117 32*9880d681SAndroid Build Coastguard Worker 33*9880d681SAndroid Build Coastguard Workercond_true48: ; preds = %bb43 34*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next372, label %AllDone 35*9880d681SAndroid Build Coastguard Worker 36*9880d681SAndroid Build Coastguard Workerbb51: ; preds = %bb31 37*9880d681SAndroid Build Coastguard Worker ret i32 0 38*9880d681SAndroid Build Coastguard Worker 39*9880d681SAndroid Build Coastguard Workerbb57: ; preds = %bb31, %bb31 40*9880d681SAndroid Build Coastguard Worker ret i32 0 41*9880d681SAndroid Build Coastguard Worker 42*9880d681SAndroid Build Coastguard Workerbb74: ; preds = %bb31 43*9880d681SAndroid Build Coastguard Worker ret i32 0 44*9880d681SAndroid Build Coastguard Worker 45*9880d681SAndroid Build Coastguard Workerbb189: ; preds = %bb31 46*9880d681SAndroid Build Coastguard Worker ret i32 0 47*9880d681SAndroid Build Coastguard Worker 48*9880d681SAndroid Build Coastguard Workercond_true200.critedge2117: ; preds = %bb43 49*9880d681SAndroid Build Coastguard Worker ret i32 0 50*9880d681SAndroid Build Coastguard Worker 51*9880d681SAndroid Build Coastguard Workercond_next209: ; preds = %bb31, %bb31, %bb31, %bb31, %bb31, %bb31, %bb31 52*9880d681SAndroid Build Coastguard Worker ret i32 0 53*9880d681SAndroid Build Coastguard Worker 54*9880d681SAndroid Build Coastguard Workercond_next372: ; preds = %cond_true48 55*9880d681SAndroid Build Coastguard Worker switch i32 0, label %bb1728 [ 56*9880d681SAndroid Build Coastguard Worker i32 73, label %bb1723 57*9880d681SAndroid Build Coastguard Worker i32 74, label %cond_true1700 58*9880d681SAndroid Build Coastguard Worker i32 78, label %bb1718 59*9880d681SAndroid Build Coastguard Worker i32 85, label %bb1713 60*9880d681SAndroid Build Coastguard Worker i32 97, label %bb1620 61*9880d681SAndroid Build Coastguard Worker i32 107, label %AllDone 62*9880d681SAndroid Build Coastguard Worker i32 112, label %cond_next423 63*9880d681SAndroid Build Coastguard Worker i32 117, label %cond_next1453 64*9880d681SAndroid Build Coastguard Worker ] 65*9880d681SAndroid Build Coastguard Worker 66*9880d681SAndroid Build Coastguard Workercond_next423: ; preds = %cond_next372 67*9880d681SAndroid Build Coastguard Worker switch i16 0, label %cond_next691 [ 68*9880d681SAndroid Build Coastguard Worker i16 18475, label %cond_next807 69*9880d681SAndroid Build Coastguard Worker i16 18520, label %cond_next807 70*9880d681SAndroid Build Coastguard Worker ] 71*9880d681SAndroid Build Coastguard Worker 72*9880d681SAndroid Build Coastguard Workercond_next691: ; preds = %cond_next423 73*9880d681SAndroid Build Coastguard Worker ret i32 0 74*9880d681SAndroid Build Coastguard Worker 75*9880d681SAndroid Build Coastguard Workercond_next807: ; preds = %cond_next423, %cond_next423 76*9880d681SAndroid Build Coastguard Worker switch i16 0, label %cond_true1192 [ 77*9880d681SAndroid Build Coastguard Worker i16 18475, label %cond_next21.i 78*9880d681SAndroid Build Coastguard Worker i16 18520, label %cond_next21.i 79*9880d681SAndroid Build Coastguard Worker ] 80*9880d681SAndroid Build Coastguard Worker 81*9880d681SAndroid Build Coastguard Workercond_next21.i: ; preds = %cond_next807, %cond_next807 82*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next934, label %free.i 83*9880d681SAndroid Build Coastguard Worker 84*9880d681SAndroid Build Coastguard Workerfree.i: ; preds = %cond_next21.i 85*9880d681SAndroid Build Coastguard Worker ret i32 0 86*9880d681SAndroid Build Coastguard Worker 87*9880d681SAndroid Build Coastguard Workercond_next934: ; preds = %bb1005, %cond_next21.i 88*9880d681SAndroid Build Coastguard Worker %listsize.1 = phi i32 [ 0, %bb1005 ], [ 64, %cond_next21.i ] ; <i32> [#uses=1] 89*9880d681SAndroid Build Coastguard Worker %catalogExtents.2 = phi %struct.HDescriptor* [ %catalogExtents.1.reg2mem.1, %bb1005 ], [ null, %cond_next21.i ] ; <%struct.HDescriptor*> [#uses=3] 90*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next942, label %Return1020 91*9880d681SAndroid Build Coastguard Worker 92*9880d681SAndroid Build Coastguard Workercond_next942: ; preds = %cond_next934 93*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb1005, label %bb947 94*9880d681SAndroid Build Coastguard Worker 95*9880d681SAndroid Build Coastguard Workerbb947: ; preds = %cond_next971, %cond_next942 96*9880d681SAndroid Build Coastguard Worker %indvar = phi i32 [ 0, %cond_next942 ], [ %indvar.next2140, %cond_next971 ] ; <i32> [#uses=2] 97*9880d681SAndroid Build Coastguard Worker %catalogExtents.1.reg2mem.0 = phi %struct.HDescriptor* [ %catalogExtents.2, %cond_next942 ], [ %tmp977978, %cond_next971 ] ; <%struct.HDescriptor*> [#uses=1] 98*9880d681SAndroid Build Coastguard Worker %extents.0.reg2mem.0 = phi %struct.HDescriptor* [ null, %cond_next942 ], [ %tmp977978, %cond_next971 ] ; <%struct.HDescriptor*> [#uses=1] 99*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next971, label %Return1020 100*9880d681SAndroid Build Coastguard Worker 101*9880d681SAndroid Build Coastguard Workercond_next971: ; preds = %bb947 102*9880d681SAndroid Build Coastguard Worker %tmp = shl i32 %indvar, 6 ; <i32> [#uses=1] 103*9880d681SAndroid Build Coastguard Worker %listsize.0.reg2mem.0 = add i32 %tmp, %listsize.1 ; <i32> [#uses=1] 104*9880d681SAndroid Build Coastguard Worker %tmp973 = add i32 %listsize.0.reg2mem.0, 64 ; <i32> [#uses=1] 105*9880d681SAndroid Build Coastguard Worker %tmp974975 = bitcast %struct.HDescriptor* %extents.0.reg2mem.0 to i8* ; <i8*> [#uses=1] 106*9880d681SAndroid Build Coastguard Worker %tmp977 = call i8* @realloc( i8* %tmp974975, i32 %tmp973 ) ; <i8*> [#uses=1] 107*9880d681SAndroid Build Coastguard Worker %tmp977978 = bitcast i8* %tmp977 to %struct.HDescriptor* ; <%struct.HDescriptor*> [#uses=3] 108*9880d681SAndroid Build Coastguard Worker call void @bcopy( i8* null, i8* null, i32 64 ) 109*9880d681SAndroid Build Coastguard Worker %indvar.next2140 = add i32 %indvar, 1 ; <i32> [#uses=1] 110*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb1005, label %bb947 111*9880d681SAndroid Build Coastguard Worker 112*9880d681SAndroid Build Coastguard Workerbb1005: ; preds = %cond_next971, %cond_next942 113*9880d681SAndroid Build Coastguard Worker %catalogExtents.1.reg2mem.1 = phi %struct.HDescriptor* [ %catalogExtents.2, %cond_next942 ], [ %tmp977978, %cond_next971 ] ; <%struct.HDescriptor*> [#uses=2] 114*9880d681SAndroid Build Coastguard Worker br i1 false, label %Return1020, label %cond_next934 115*9880d681SAndroid Build Coastguard Worker 116*9880d681SAndroid Build Coastguard WorkerReturn1020: ; preds = %bb1005, %bb947, %cond_next934 117*9880d681SAndroid Build Coastguard Worker %catalogExtents.3 = phi %struct.HDescriptor* [ %catalogExtents.1.reg2mem.0, %bb947 ], [ %catalogExtents.2, %cond_next934 ], [ %catalogExtents.1.reg2mem.1, %bb1005 ] ; <%struct.HDescriptor*> [#uses=0] 118*9880d681SAndroid Build Coastguard Worker ret i32 0 119*9880d681SAndroid Build Coastguard Worker 120*9880d681SAndroid Build Coastguard Workercond_true1192: ; preds = %cond_next807 121*9880d681SAndroid Build Coastguard Worker ret i32 0 122*9880d681SAndroid Build Coastguard Worker 123*9880d681SAndroid Build Coastguard Workercond_next1453: ; preds = %cond_next372 124*9880d681SAndroid Build Coastguard Worker ret i32 0 125*9880d681SAndroid Build Coastguard Worker 126*9880d681SAndroid Build Coastguard Workerbb1620: ; preds = %cond_next372 127*9880d681SAndroid Build Coastguard Worker ret i32 0 128*9880d681SAndroid Build Coastguard Worker 129*9880d681SAndroid Build Coastguard Workercond_true1700: ; preds = %cond_next372 130*9880d681SAndroid Build Coastguard Worker ret i32 0 131*9880d681SAndroid Build Coastguard Worker 132*9880d681SAndroid Build Coastguard Workerbb1713: ; preds = %cond_next372 133*9880d681SAndroid Build Coastguard Worker ret i32 0 134*9880d681SAndroid Build Coastguard Worker 135*9880d681SAndroid Build Coastguard Workerbb1718: ; preds = %cond_next372 136*9880d681SAndroid Build Coastguard Worker ret i32 0 137*9880d681SAndroid Build Coastguard Worker 138*9880d681SAndroid Build Coastguard Workerbb1723: ; preds = %cond_next372 139*9880d681SAndroid Build Coastguard Worker ret i32 0 140*9880d681SAndroid Build Coastguard Worker 141*9880d681SAndroid Build Coastguard Workerbb1728: ; preds = %cond_next372 142*9880d681SAndroid Build Coastguard Worker ret i32 -6 143*9880d681SAndroid Build Coastguard Worker 144*9880d681SAndroid Build Coastguard WorkerAllDone: ; preds = %cond_next372, %cond_true48 145*9880d681SAndroid Build Coastguard Worker ret i32 0 146*9880d681SAndroid Build Coastguard Worker} 147*9880d681SAndroid Build Coastguard Worker 148*9880d681SAndroid Build Coastguard Workerdeclare i8* @realloc(i8*, i32) 149