149 lines · plain
1; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc-unknown-linux-gnu2 3 %struct.HDescriptor = type <{ i32, i32 }>4 5declare void @bcopy(ptr, ptr, i32)6 7define i32 @main(i32 %argc, ptr %argv) {8entry:9 br i1 false, label %bb31, label %bb10 11bb: ; preds = %entry12 ret i32 -613 14bb31: ; preds = %entry15 switch i32 0, label %bb189 [16 i32 73, label %cond_next20917 i32 74, label %bb7418 i32 77, label %bb5719 i32 78, label %cond_next20920 i32 85, label %cond_next20921 i32 97, label %cond_next20922 i32 100, label %cond_next20923 i32 107, label %cond_next20924 i32 109, label %bb5725 i32 112, label %bb4326 i32 115, label %cond_next20927 i32 117, label %bb5128 ]29 30bb43: ; preds = %bb3131 br i1 false, label %cond_true48, label %cond_true200.critedge211732 33cond_true48: ; preds = %bb4334 br i1 false, label %cond_next372, label %AllDone35 36bb51: ; preds = %bb3137 ret i32 038 39bb57: ; preds = %bb31, %bb3140 ret i32 041 42bb74: ; preds = %bb3143 ret i32 044 45bb189: ; preds = %bb3146 ret i32 047 48cond_true200.critedge2117: ; preds = %bb4349 ret i32 050 51cond_next209: ; preds = %bb31, %bb31, %bb31, %bb31, %bb31, %bb31, %bb3152 ret i32 053 54cond_next372: ; preds = %cond_true4855 switch i32 0, label %bb1728 [56 i32 73, label %bb172357 i32 74, label %cond_true170058 i32 78, label %bb171859 i32 85, label %bb171360 i32 97, label %bb162061 i32 107, label %AllDone62 i32 112, label %cond_next42363 i32 117, label %cond_next145364 ]65 66cond_next423: ; preds = %cond_next37267 switch i16 0, label %cond_next691 [68 i16 18475, label %cond_next80769 i16 18520, label %cond_next80770 ]71 72cond_next691: ; preds = %cond_next42373 ret i32 074 75cond_next807: ; preds = %cond_next423, %cond_next42376 switch i16 0, label %cond_true1192 [77 i16 18475, label %cond_next21.i78 i16 18520, label %cond_next21.i79 ]80 81cond_next21.i: ; preds = %cond_next807, %cond_next80782 br i1 false, label %cond_next934, label %free.i83 84free.i: ; preds = %cond_next21.i85 ret i32 086 87cond_next934: ; preds = %bb1005, %cond_next21.i88 %listsize.1 = phi i32 [ 0, %bb1005 ], [ 64, %cond_next21.i ] ; <i32> [#uses=1]89 %catalogExtents.2 = phi ptr [ %catalogExtents.1.reg2mem.1, %bb1005 ], [ null, %cond_next21.i ] ; <%struct.HDescriptor*> [#uses=3]90 br i1 false, label %cond_next942, label %Return102091 92cond_next942: ; preds = %cond_next93493 br i1 false, label %bb1005, label %bb94794 95bb947: ; preds = %cond_next971, %cond_next94296 %indvar = phi i32 [ 0, %cond_next942 ], [ %indvar.next2140, %cond_next971 ] ; <i32> [#uses=2]97 %catalogExtents.1.reg2mem.0 = phi ptr [ %catalogExtents.2, %cond_next942 ], [ %tmp977978, %cond_next971 ] ; <%struct.HDescriptor*> [#uses=1]98 %extents.0.reg2mem.0 = phi ptr [ null, %cond_next942 ], [ %tmp977978, %cond_next971 ] ; <%struct.HDescriptor*> [#uses=1]99 br i1 false, label %cond_next971, label %Return1020100 101cond_next971: ; preds = %bb947102 %tmp = shl i32 %indvar, 6 ; <i32> [#uses=1]103 %listsize.0.reg2mem.0 = add i32 %tmp, %listsize.1 ; <i32> [#uses=1]104 %tmp973 = add i32 %listsize.0.reg2mem.0, 64 ; <i32> [#uses=1]105 %tmp974975 = bitcast ptr %extents.0.reg2mem.0 to ptr ; <i8*> [#uses=1]106 %tmp977 = call ptr @realloc( ptr %tmp974975, i32 %tmp973 ) ; <i8*> [#uses=1]107 %tmp977978 = bitcast ptr %tmp977 to ptr ; <%struct.HDescriptor*> [#uses=3]108 call void @bcopy( ptr null, ptr null, i32 64 )109 %indvar.next2140 = add i32 %indvar, 1 ; <i32> [#uses=1]110 br i1 false, label %bb1005, label %bb947111 112bb1005: ; preds = %cond_next971, %cond_next942113 %catalogExtents.1.reg2mem.1 = phi ptr [ %catalogExtents.2, %cond_next942 ], [ %tmp977978, %cond_next971 ] ; <%struct.HDescriptor*> [#uses=2]114 br i1 false, label %Return1020, label %cond_next934115 116Return1020: ; preds = %bb1005, %bb947, %cond_next934117 %catalogExtents.3 = phi ptr [ %catalogExtents.1.reg2mem.0, %bb947 ], [ %catalogExtents.2, %cond_next934 ], [ %catalogExtents.1.reg2mem.1, %bb1005 ] ; <%struct.HDescriptor*> [#uses=0]118 ret i32 0119 120cond_true1192: ; preds = %cond_next807121 ret i32 0122 123cond_next1453: ; preds = %cond_next372124 ret i32 0125 126bb1620: ; preds = %cond_next372127 ret i32 0128 129cond_true1700: ; preds = %cond_next372130 ret i32 0131 132bb1713: ; preds = %cond_next372133 ret i32 0134 135bb1718: ; preds = %cond_next372136 ret i32 0137 138bb1723: ; preds = %cond_next372139 ret i32 0140 141bb1728: ; preds = %cond_next372142 ret i32 -6143 144AllDone: ; preds = %cond_next372, %cond_true48145 ret i32 0146}147 148declare ptr @realloc(ptr, i32)149