1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210
|
; RUN: llc < %s -mtriple=x86_64-apple-darwin10
; rdar://7059496
%struct.brinfo = type <{ ptr, ptr, ptr, i32, i32, i32, i8, i8, i8, i8 }>
%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 }>
%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 }>
%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 }>
%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 }>
%struct.cpattern = type <{ ptr, i32, i8, i8, i8, i8, %union.anon }>
%struct.patprog = type <{ i64, i64, i64, i64, i32, i32, i32, i32, i8, i8, i8, i8, i8, i8, i8, i8 }>
%union.anon = type <{ [8 x i8] }>
define i32 @addmatches(ptr %dat, ptr nocapture %argv) nounwind ssp {
entry:
br i1 undef, label %if.else, label %if.then91
if.then91: ; preds = %entry
br label %if.end96
if.else: ; preds = %entry
br label %if.end96
if.end96: ; preds = %if.else, %if.then91
br i1 undef, label %lor.lhs.false, label %if.then105
lor.lhs.false: ; preds = %if.end96
br i1 undef, label %if.else139, label %if.then105
if.then105: ; preds = %lor.lhs.false, %if.end96
unreachable
if.else139: ; preds = %lor.lhs.false
br i1 undef, label %land.end, label %land.rhs
land.rhs: ; preds = %if.else139
unreachable
land.end: ; preds = %if.else139
br i1 undef, label %land.lhs.true285, label %if.then315
land.lhs.true285: ; preds = %land.end
br i1 undef, label %if.end324, label %if.then322
if.then315: ; preds = %land.end
unreachable
if.then322: ; preds = %land.lhs.true285
unreachable
if.end324: ; preds = %land.lhs.true285
br i1 undef, label %if.end384, label %if.then358
if.then358: ; preds = %if.end324
unreachable
if.end384: ; preds = %if.end324
br i1 undef, label %if.end394, label %land.lhs.true387
land.lhs.true387: ; preds = %if.end384
unreachable
if.end394: ; preds = %if.end384
br i1 undef, label %if.end498, label %land.lhs.true399
land.lhs.true399: ; preds = %if.end394
br i1 undef, label %if.end498, label %if.then406
if.then406: ; preds = %land.lhs.true399
unreachable
if.end498: ; preds = %land.lhs.true399, %if.end394
br i1 undef, label %if.end514, label %if.then503
if.then503: ; preds = %if.end498
unreachable
if.end514: ; preds = %if.end498
br i1 undef, label %if.end585, label %if.then520
if.then520: ; preds = %if.end514
br i1 undef, label %lor.lhs.false547, label %if.then560
lor.lhs.false547: ; preds = %if.then520
unreachable
if.then560: ; preds = %if.then520
br i1 undef, label %if.end585, label %land.lhs.true566
land.lhs.true566: ; preds = %if.then560
br i1 undef, label %if.end585, label %if.then573
if.then573: ; preds = %land.lhs.true566
unreachable
if.end585: ; preds = %land.lhs.true566, %if.then560, %if.end514
br i1 undef, label %cond.true593, label %cond.false599
cond.true593: ; preds = %if.end585
unreachable
cond.false599: ; preds = %if.end585
br i1 undef, label %if.end647, label %if.then621
if.then621: ; preds = %cond.false599
br i1 undef, label %cond.true624, label %cond.false630
cond.true624: ; preds = %if.then621
br label %if.end647
cond.false630: ; preds = %if.then621
unreachable
if.end647: ; preds = %cond.true624, %cond.false599
br i1 undef, label %if.end723, label %if.then701
if.then701: ; preds = %if.end647
br label %if.end723
if.end723: ; preds = %if.then701, %if.end647
br i1 undef, label %if.else1090, label %if.then729
if.then729: ; preds = %if.end723
br i1 undef, label %if.end887, label %if.then812
if.then812: ; preds = %if.then729
unreachable
if.end887: ; preds = %if.then729
br i1 undef, label %if.end972, label %if.then893
if.then893: ; preds = %if.end887
br i1 undef, label %if.end919, label %if.then903
if.then903: ; preds = %if.then893
unreachable
if.end919: ; preds = %if.then893
br label %if.end972
if.end972: ; preds = %if.end919, %if.end887
%sline.0 = phi ptr [ undef, %if.end919 ], [ null, %if.end887 ] ; <ptr> [#uses=5]
%bcs.0 = phi i32 [ undef, %if.end919 ], [ 0, %if.end887 ] ; <i32> [#uses=5]
br i1 undef, label %if.end1146, label %land.lhs.true975
land.lhs.true975: ; preds = %if.end972
br i1 undef, label %if.end1146, label %if.then980
if.then980: ; preds = %land.lhs.true975
br i1 undef, label %cond.false1025, label %cond.false1004
cond.false1004: ; preds = %if.then980
unreachable
cond.false1025: ; preds = %if.then980
br i1 undef, label %if.end1146, label %if.then1071
if.then1071: ; preds = %cond.false1025
br i1 undef, label %if.then1074, label %if.end1081
if.then1074: ; preds = %if.then1071
br label %if.end1081
if.end1081: ; preds = %if.then1074, %if.then1071
%call1083 = call ptr @patcompile(ptr undef, i32 0, ptr null) nounwind ssp ; <ptr> [#uses=2]
br i1 undef, label %if.end1146, label %if.then1086
if.then1086: ; preds = %if.end1081
br label %if.end1146
if.else1090: ; preds = %if.end723
br i1 undef, label %if.end1146, label %land.lhs.true1093
land.lhs.true1093: ; preds = %if.else1090
br i1 undef, label %if.end1146, label %if.then1098
if.then1098: ; preds = %land.lhs.true1093
unreachable
if.end1146: ; preds = %land.lhs.true1093, %if.else1090, %if.then1086, %if.end1081, %cond.false1025, %land.lhs.true975, %if.end972
%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]
%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]
%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]
br i1 undef, label %if.end1307, label %do.body1270
do.body1270: ; preds = %if.end1146
unreachable
if.end1307: ; preds = %if.end1146
br i1 undef, label %if.end1318, label %if.then1312
if.then1312: ; preds = %if.end1307
unreachable
if.end1318: ; preds = %if.end1307
br i1 undef, label %for.cond1330.preheader, label %if.then1323
if.then1323: ; preds = %if.end1318
unreachable
for.cond1330.preheader: ; preds = %if.end1318
%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]
%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]
unreachable
}
declare ptr @patcompile(ptr, i32, ptr) ssp
declare ptr @comp_match(ptr, ptr, ptr, ptr, ptr, i32, ptr, i32, ptr, i32, ptr) ssp
declare ptr @add_match_data(i32, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32) nounwind ssp
|