211 lines · plain
1; RUN: llc < %s -mtriple=x86_64-apple-darwin102; rdar://70594963 4 %struct.brinfo = type <{ ptr, ptr, ptr, i32, i32, i32, i8, i8, i8, i8 }>5 %struct.cadata = type <{ ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i8, i8, i8, i8 }>6 %struct.cline = type <{ ptr, i32, i8, i8, i8, i8, ptr, i32, i8, i8, i8, i8, ptr, i32, i8, i8, i8, i8, ptr, i32, i32, ptr, ptr, i32, i32 }>7 %struct.cmatch = type <{ ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i8, i8, i8, i8, ptr, ptr, ptr, ptr, i32, i32, i32, i32, i16, i8, i8, i16, i8, i8 }>8 %struct.cmatcher = type <{ i32, i8, i8, i8, i8, ptr, i32, i8, i8, i8, i8, ptr, i32, i8, i8, i8, i8, ptr, i32, i8, i8, i8, i8, ptr, i32, i8, i8, i8, i8, ptr, i32, i8, i8, i8, i8 }>9 %struct.cpattern = type <{ ptr, i32, i8, i8, i8, i8, %union.anon }>10 %struct.patprog = type <{ i64, i64, i64, i64, i32, i32, i32, i32, i8, i8, i8, i8, i8, i8, i8, i8 }>11 %union.anon = type <{ [8 x i8] }>12 13define i32 @addmatches(ptr %dat, ptr nocapture %argv) nounwind ssp {14entry:15 br i1 undef, label %if.else, label %if.then9116 17if.then91: ; preds = %entry18 br label %if.end9619 20if.else: ; preds = %entry21 br label %if.end9622 23if.end96: ; preds = %if.else, %if.then9124 br i1 undef, label %lor.lhs.false, label %if.then10525 26lor.lhs.false: ; preds = %if.end9627 br i1 undef, label %if.else139, label %if.then10528 29if.then105: ; preds = %lor.lhs.false, %if.end9630 unreachable31 32if.else139: ; preds = %lor.lhs.false33 br i1 undef, label %land.end, label %land.rhs34 35land.rhs: ; preds = %if.else13936 unreachable37 38land.end: ; preds = %if.else13939 br i1 undef, label %land.lhs.true285, label %if.then31540 41land.lhs.true285: ; preds = %land.end42 br i1 undef, label %if.end324, label %if.then32243 44if.then315: ; preds = %land.end45 unreachable46 47if.then322: ; preds = %land.lhs.true28548 unreachable49 50if.end324: ; preds = %land.lhs.true28551 br i1 undef, label %if.end384, label %if.then35852 53if.then358: ; preds = %if.end32454 unreachable55 56if.end384: ; preds = %if.end32457 br i1 undef, label %if.end394, label %land.lhs.true38758 59land.lhs.true387: ; preds = %if.end38460 unreachable61 62if.end394: ; preds = %if.end38463 br i1 undef, label %if.end498, label %land.lhs.true39964 65land.lhs.true399: ; preds = %if.end39466 br i1 undef, label %if.end498, label %if.then40667 68if.then406: ; preds = %land.lhs.true39969 unreachable70 71if.end498: ; preds = %land.lhs.true399, %if.end39472 br i1 undef, label %if.end514, label %if.then50373 74if.then503: ; preds = %if.end49875 unreachable76 77if.end514: ; preds = %if.end49878 br i1 undef, label %if.end585, label %if.then52079 80if.then520: ; preds = %if.end51481 br i1 undef, label %lor.lhs.false547, label %if.then56082 83lor.lhs.false547: ; preds = %if.then52084 unreachable85 86if.then560: ; preds = %if.then52087 br i1 undef, label %if.end585, label %land.lhs.true56688 89land.lhs.true566: ; preds = %if.then56090 br i1 undef, label %if.end585, label %if.then57391 92if.then573: ; preds = %land.lhs.true56693 unreachable94 95if.end585: ; preds = %land.lhs.true566, %if.then560, %if.end51496 br i1 undef, label %cond.true593, label %cond.false59997 98cond.true593: ; preds = %if.end58599 unreachable100 101cond.false599: ; preds = %if.end585102 br i1 undef, label %if.end647, label %if.then621103 104if.then621: ; preds = %cond.false599105 br i1 undef, label %cond.true624, label %cond.false630106 107cond.true624: ; preds = %if.then621108 br label %if.end647109 110cond.false630: ; preds = %if.then621111 unreachable112 113if.end647: ; preds = %cond.true624, %cond.false599114 br i1 undef, label %if.end723, label %if.then701115 116if.then701: ; preds = %if.end647117 br label %if.end723118 119if.end723: ; preds = %if.then701, %if.end647120 br i1 undef, label %if.else1090, label %if.then729121 122if.then729: ; preds = %if.end723123 br i1 undef, label %if.end887, label %if.then812124 125if.then812: ; preds = %if.then729126 unreachable127 128if.end887: ; preds = %if.then729129 br i1 undef, label %if.end972, label %if.then893130 131if.then893: ; preds = %if.end887132 br i1 undef, label %if.end919, label %if.then903133 134if.then903: ; preds = %if.then893135 unreachable136 137if.end919: ; preds = %if.then893138 br label %if.end972139 140if.end972: ; preds = %if.end919, %if.end887141 %sline.0 = phi ptr [ undef, %if.end919 ], [ null, %if.end887 ] ; <ptr> [#uses=5]142 %bcs.0 = phi i32 [ undef, %if.end919 ], [ 0, %if.end887 ] ; <i32> [#uses=5]143 br i1 undef, label %if.end1146, label %land.lhs.true975144 145land.lhs.true975: ; preds = %if.end972146 br i1 undef, label %if.end1146, label %if.then980147 148if.then980: ; preds = %land.lhs.true975149 br i1 undef, label %cond.false1025, label %cond.false1004150 151cond.false1004: ; preds = %if.then980152 unreachable153 154cond.false1025: ; preds = %if.then980155 br i1 undef, label %if.end1146, label %if.then1071156 157if.then1071: ; preds = %cond.false1025158 br i1 undef, label %if.then1074, label %if.end1081159 160if.then1074: ; preds = %if.then1071161 br label %if.end1081162 163if.end1081: ; preds = %if.then1074, %if.then1071164 %call1083 = call ptr @patcompile(ptr undef, i32 0, ptr null) nounwind ssp ; <ptr> [#uses=2]165 br i1 undef, label %if.end1146, label %if.then1086166 167if.then1086: ; preds = %if.end1081168 br label %if.end1146169 170if.else1090: ; preds = %if.end723171 br i1 undef, label %if.end1146, label %land.lhs.true1093172 173land.lhs.true1093: ; preds = %if.else1090174 br i1 undef, label %if.end1146, label %if.then1098175 176if.then1098: ; preds = %land.lhs.true1093177 unreachable178 179if.end1146: ; preds = %land.lhs.true1093, %if.else1090, %if.then1086, %if.end1081, %cond.false1025, %land.lhs.true975, %if.end972180 %cp.0 = phi ptr [ %call1083, %if.then1086 ], [ null, %if.end972 ], [ null, %land.lhs.true975 ], [ null, %cond.false1025 ], [ %call1083, %if.end1081 ], [ null, %if.else1090 ], [ null, %land.lhs.true1093 ] ; <ptr> [#uses=1]181 %sline.1 = phi ptr [ %sline.0, %if.then1086 ], [ %sline.0, %if.end972 ], [ %sline.0, %land.lhs.true975 ], [ %sline.0, %cond.false1025 ], [ %sline.0, %if.end1081 ], [ null, %if.else1090 ], [ null, %land.lhs.true1093 ] ; <ptr> [#uses=1]182 %bcs.1 = phi i32 [ %bcs.0, %if.then1086 ], [ %bcs.0, %if.end972 ], [ %bcs.0, %land.lhs.true975 ], [ %bcs.0, %cond.false1025 ], [ %bcs.0, %if.end1081 ], [ 0, %if.else1090 ], [ 0, %land.lhs.true1093 ] ; <i32> [#uses=1]183 br i1 undef, label %if.end1307, label %do.body1270184 185do.body1270: ; preds = %if.end1146186 unreachable187 188if.end1307: ; preds = %if.end1146189 br i1 undef, label %if.end1318, label %if.then1312190 191if.then1312: ; preds = %if.end1307192 unreachable193 194if.end1318: ; preds = %if.end1307195 br i1 undef, label %for.cond1330.preheader, label %if.then1323196 197if.then1323: ; preds = %if.end1318198 unreachable199 200for.cond1330.preheader: ; preds = %if.end1318201 %call1587 = call ptr @comp_match(ptr undef, ptr undef, ptr undef, ptr %cp.0, ptr undef, i32 0, ptr undef, i32 0, ptr undef, i32 %bcs.1, ptr undef) nounwind ssp ; <ptr> [#uses=0]202 %call1667 = call ptr @add_match_data(i32 0, ptr undef, ptr undef, ptr undef, ptr undef, ptr null, ptr undef, ptr undef, ptr undef, ptr undef, ptr null, ptr undef, ptr %sline.1, ptr undef, i32 undef, i32 undef) ssp ; <ptr> [#uses=0]203 unreachable204}205 206declare ptr @patcompile(ptr, i32, ptr) ssp207 208declare ptr @comp_match(ptr, ptr, ptr, ptr, ptr, i32, ptr, i32, ptr, i32, ptr) ssp209 210declare ptr @add_match_data(i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32) nounwind ssp211