1 ; RUN: opt < %s -simplifycfg -disable-output 2 ; END. 3 4 define void @main(i32 %c) { 5 entry: 6 %tmp.9 = icmp eq i32 %c, 2 ; <i1> [#uses=1] 7 br i1 %tmp.9, label %endif.0, label %then.0 8 then.0: ; preds = %entry 9 ret void 10 endif.0: ; preds = %entry 11 br i1 false, label %then.1, label %endif.1 12 then.1: ; preds = %endif.0 13 ret void 14 endif.1: ; preds = %endif.0 15 br i1 false, label %then.2, label %endif.2 16 then.2: ; preds = %endif.1 17 ret void 18 endif.2: ; preds = %endif.1 19 br i1 false, label %then.3, label %loopentry.0 20 then.3: ; preds = %endif.2 21 ret void 22 loopentry.0: ; preds = %endif.2 23 br i1 false, label %no_exit.0.preheader, label %loopexit.0 24 no_exit.0.preheader: ; preds = %loopentry.0 25 br label %no_exit.0 26 no_exit.0: ; preds = %endif.4, %no_exit.0.preheader 27 br i1 false, label %then.4, label %endif.4 28 then.4: ; preds = %no_exit.0 29 ret void 30 endif.4: ; preds = %no_exit.0 31 br i1 false, label %no_exit.0, label %loopexit.0.loopexit 32 loopexit.0.loopexit: ; preds = %endif.4 33 br label %loopexit.0 34 loopexit.0: ; preds = %loopexit.0.loopexit, %loopentry.0 35 br i1 false, label %then.5, label %loopentry.1 36 then.5: ; preds = %loopexit.0 37 ret void 38 loopentry.1: ; preds = %loopexit.0 39 %tmp.143 = icmp sgt i32 0, 0 ; <i1> [#uses=4] 40 br i1 %tmp.143, label %no_exit.1.preheader, label %loopexit.1 41 no_exit.1.preheader: ; preds = %loopentry.1 42 br label %no_exit.1 43 no_exit.1: ; preds = %endif.6, %no_exit.1.preheader 44 br i1 false, label %then.6, label %shortcirc_next.3 45 shortcirc_next.3: ; preds = %no_exit.1 46 br i1 false, label %then.6, label %shortcirc_next.4 47 shortcirc_next.4: ; preds = %shortcirc_next.3 48 br i1 false, label %then.6, label %endif.6 49 then.6: ; preds = %shortcirc_next.4, %shortcirc_next.3, %no_exit.1 50 ret void 51 endif.6: ; preds = %shortcirc_next.4 52 br i1 false, label %no_exit.1, label %loopexit.1.loopexit 53 loopexit.1.loopexit: ; preds = %endif.6 54 br label %loopexit.1 55 loopexit.1: ; preds = %loopexit.1.loopexit, %loopentry.1 56 br i1 false, label %then.i, label %loopentry.0.i 57 then.i: ; preds = %loopexit.1 58 ret void 59 loopentry.0.i: ; preds = %loopexit.1 60 br i1 %tmp.143, label %no_exit.0.i.preheader, label %readvector.exit 61 no_exit.0.i.preheader: ; preds = %loopentry.0.i 62 br label %no_exit.0.i 63 no_exit.0.i: ; preds = %loopexit.1.i, %no_exit.0.i.preheader 64 br i1 false, label %no_exit.1.i.preheader, label %loopexit.1.i 65 no_exit.1.i.preheader: ; preds = %no_exit.0.i 66 br label %no_exit.1.i 67 no_exit.1.i: ; preds = %loopexit.2.i, %no_exit.1.i.preheader 68 br i1 false, label %no_exit.2.i.preheader, label %loopexit.2.i 69 no_exit.2.i.preheader: ; preds = %no_exit.1.i 70 br label %no_exit.2.i 71 no_exit.2.i: ; preds = %no_exit.2.i, %no_exit.2.i.preheader 72 br i1 false, label %no_exit.2.i, label %loopexit.2.i.loopexit 73 loopexit.2.i.loopexit: ; preds = %no_exit.2.i 74 br label %loopexit.2.i 75 loopexit.2.i: ; preds = %loopexit.2.i.loopexit, %no_exit.1.i 76 br i1 false, label %no_exit.1.i, label %loopexit.1.i.loopexit 77 loopexit.1.i.loopexit: ; preds = %loopexit.2.i 78 br label %loopexit.1.i 79 loopexit.1.i: ; preds = %loopexit.1.i.loopexit, %no_exit.0.i 80 br i1 false, label %no_exit.0.i, label %readvector.exit.loopexit 81 readvector.exit.loopexit: ; preds = %loopexit.1.i 82 br label %readvector.exit 83 readvector.exit: ; preds = %readvector.exit.loopexit, %loopentry.0.i 84 br i1 %tmp.143, label %loopentry.1.preheader.i, label %loopexit.0.i 85 loopentry.1.preheader.i: ; preds = %readvector.exit 86 br label %loopentry.1.outer.i 87 loopentry.1.outer.i: ; preds = %loopexit.1.i110, %loopentry.1.preheader.i 88 br label %loopentry.1.i85 89 loopentry.1.i85.loopexit: ; preds = %hamming.exit16.i 90 br label %loopentry.1.i85 91 loopentry.1.i85: ; preds = %loopentry.1.i85.loopexit, %loopentry.1.outer.i 92 br i1 false, label %no_exit.1.preheader.i, label %loopexit.1.i110.loopexit1 93 no_exit.1.preheader.i: ; preds = %loopentry.1.i85 94 br label %no_exit.1.i87 95 no_exit.1.i87: ; preds = %then.1.i107, %no_exit.1.preheader.i 96 br i1 false, label %no_exit.i.i101.preheader, label %hamming.exit.i104 97 no_exit.i.i101.preheader: ; preds = %no_exit.1.i87 98 br label %no_exit.i.i101 99 no_exit.i.i101: ; preds = %no_exit.i.i101, %no_exit.i.i101.preheader 100 br i1 false, label %no_exit.i.i101, label %hamming.exit.i104.loopexit 101 hamming.exit.i104.loopexit: ; preds = %no_exit.i.i101 102 br label %hamming.exit.i104 103 hamming.exit.i104: ; preds = %hamming.exit.i104.loopexit, %no_exit.1.i87 104 br i1 false, label %no_exit.i15.i.preheader, label %hamming.exit16.i 105 no_exit.i15.i.preheader: ; preds = %hamming.exit.i104 106 br label %no_exit.i15.i 107 no_exit.i15.i: ; preds = %no_exit.i15.i, %no_exit.i15.i.preheader 108 br i1 false, label %no_exit.i15.i, label %hamming.exit16.i.loopexit 109 hamming.exit16.i.loopexit: ; preds = %no_exit.i15.i 110 br label %hamming.exit16.i 111 hamming.exit16.i: ; preds = %hamming.exit16.i.loopexit, %hamming.exit.i104 112 br i1 false, label %loopentry.1.i85.loopexit, label %then.1.i107 113 then.1.i107: ; preds = %hamming.exit16.i 114 br i1 false, label %no_exit.1.i87, label %loopexit.1.i110.loopexit 115 loopexit.1.i110.loopexit: ; preds = %then.1.i107 116 br label %loopexit.1.i110 117 loopexit.1.i110.loopexit1: ; preds = %loopentry.1.i85 118 br label %loopexit.1.i110 119 loopexit.1.i110: ; preds = %loopexit.1.i110.loopexit1, %loopexit.1.i110.loopexit 120 br i1 false, label %loopentry.1.outer.i, label %loopexit.0.i.loopexit 121 loopexit.0.i.loopexit: ; preds = %loopexit.1.i110 122 br label %loopexit.0.i 123 loopexit.0.i: ; preds = %loopexit.0.i.loopexit, %readvector.exit 124 br i1 false, label %UnifiedReturnBlock.i113, label %then.2.i112 125 then.2.i112: ; preds = %loopexit.0.i 126 br label %checkham.exit 127 UnifiedReturnBlock.i113: ; preds = %loopexit.0.i 128 br label %checkham.exit 129 checkham.exit: ; preds = %UnifiedReturnBlock.i113, %then.2.i112 130 br i1 false, label %loopentry.1.i14.preheader, label %loopentry.3.i.preheader 131 loopentry.1.i14.preheader: ; preds = %checkham.exit 132 br label %loopentry.1.i14 133 loopentry.1.i14: ; preds = %loopexit.1.i18, %loopentry.1.i14.preheader 134 br i1 false, label %no_exit.1.i16.preheader, label %loopexit.1.i18 135 no_exit.1.i16.preheader: ; preds = %loopentry.1.i14 136 br label %no_exit.1.i16 137 no_exit.1.i16: ; preds = %no_exit.1.i16, %no_exit.1.i16.preheader 138 br i1 false, label %no_exit.1.i16, label %loopexit.1.i18.loopexit 139 loopexit.1.i18.loopexit: ; preds = %no_exit.1.i16 140 br label %loopexit.1.i18 141 loopexit.1.i18: ; preds = %loopexit.1.i18.loopexit, %loopentry.1.i14 142 br i1 false, label %loopentry.1.i14, label %loopentry.3.i.loopexit 143 loopentry.3.i.loopexit: ; preds = %loopexit.1.i18 144 br label %loopentry.3.i.preheader 145 loopentry.3.i.preheader: ; preds = %loopentry.3.i.loopexit, %checkham.exit 146 br label %loopentry.3.i 147 loopentry.3.i: ; preds = %endif.1.i, %loopentry.3.i.preheader 148 br i1 false, label %loopentry.4.i.preheader, label %endif.1.i 149 loopentry.4.i.preheader: ; preds = %loopentry.3.i 150 br label %loopentry.4.i 151 loopentry.4.i: ; preds = %loopexit.4.i, %loopentry.4.i.preheader 152 br i1 false, label %no_exit.4.i.preheader, label %loopexit.4.i 153 no_exit.4.i.preheader: ; preds = %loopentry.4.i 154 br label %no_exit.4.i 155 no_exit.4.i: ; preds = %no_exit.4.i.backedge, %no_exit.4.i.preheader 156 br i1 false, label %endif.0.i, label %else.i 157 else.i: ; preds = %no_exit.4.i 158 br i1 false, label %no_exit.4.i.backedge, label %loopexit.4.i.loopexit 159 no_exit.4.i.backedge: ; preds = %endif.0.i, %else.i 160 br label %no_exit.4.i 161 endif.0.i: ; preds = %no_exit.4.i 162 br i1 false, label %no_exit.4.i.backedge, label %loopexit.4.i.loopexit 163 loopexit.4.i.loopexit: ; preds = %endif.0.i, %else.i 164 br label %loopexit.4.i 165 loopexit.4.i: ; preds = %loopexit.4.i.loopexit, %loopentry.4.i 166 br i1 false, label %loopentry.4.i, label %endif.1.i.loopexit 167 endif.1.i.loopexit: ; preds = %loopexit.4.i 168 br label %endif.1.i 169 endif.1.i: ; preds = %endif.1.i.loopexit, %loopentry.3.i 170 %exitcond = icmp eq i32 0, 10 ; <i1> [#uses=1] 171 br i1 %exitcond, label %generateT.exit, label %loopentry.3.i 172 generateT.exit: ; preds = %endif.1.i 173 br i1 false, label %then.0.i, label %loopentry.1.i30.preheader 174 then.0.i: ; preds = %generateT.exit 175 ret void 176 loopentry.1.i30.loopexit: ; preds = %loopexit.3.i 177 br label %loopentry.1.i30.backedge 178 loopentry.1.i30.preheader: ; preds = %generateT.exit 179 br label %loopentry.1.i30 180 loopentry.1.i30: ; preds = %loopentry.1.i30.backedge, %loopentry.1.i30.preheader 181 br i1 %tmp.143, label %no_exit.0.i31.preheader, label %loopentry.1.i30.backedge 182 loopentry.1.i30.backedge: ; preds = %loopentry.1.i30, %loopentry.1.i30.loopexit 183 br label %loopentry.1.i30 184 no_exit.0.i31.preheader: ; preds = %loopentry.1.i30 185 br label %no_exit.0.i31 186 no_exit.0.i31: ; preds = %loopexit.3.i, %no_exit.0.i31.preheader 187 br i1 false, label %then.1.i, label %else.0.i 188 then.1.i: ; preds = %no_exit.0.i31 189 br i1 undef, label %then.0.i29, label %loopentry.0.i31 190 then.0.i29: ; preds = %then.1.i 191 unreachable 192 loopentry.0.i31: ; preds = %then.1.i 193 br i1 false, label %no_exit.0.i38.preheader, label %loopentry.1.i.preheader 194 no_exit.0.i38.preheader: ; preds = %loopentry.0.i31 195 br label %no_exit.0.i38 196 no_exit.0.i38: ; preds = %no_exit.0.i38, %no_exit.0.i38.preheader 197 br i1 undef, label %no_exit.0.i38, label %loopentry.1.i.preheader.loopexit 198 loopentry.1.i.preheader.loopexit: ; preds = %no_exit.0.i38 199 br label %loopentry.1.i.preheader 200 loopentry.1.i.preheader: ; preds = %loopentry.1.i.preheader.loopexit, %loopentry.0.i31 201 br label %loopentry.1.i 202 loopentry.1.i: ; preds = %endif.2.i, %loopentry.1.i.preheader 203 br i1 undef, label %loopentry.2.i39.preheader, label %loopexit.1.i79.loopexit2 204 loopentry.2.i39.preheader: ; preds = %loopentry.1.i 205 br label %loopentry.2.i39 206 loopentry.2.i39: ; preds = %loopexit.5.i77, %loopentry.2.i39.preheader 207 br i1 false, label %loopentry.3.i40.preheader, label %hamming.exit.i71 208 loopentry.3.i40.preheader: ; preds = %loopentry.2.i39 209 br label %loopentry.3.i40 210 loopentry.3.i40: ; preds = %loopexit.3.i51, %loopentry.3.i40.preheader 211 br i1 false, label %no_exit.3.preheader.i42, label %loopexit.3.i51 212 no_exit.3.preheader.i42: ; preds = %loopentry.3.i40 213 br label %no_exit.3.i49 214 no_exit.3.i49: ; preds = %no_exit.3.i49, %no_exit.3.preheader.i42 215 br i1 undef, label %no_exit.3.i49, label %loopexit.3.i51.loopexit 216 loopexit.3.i51.loopexit: ; preds = %no_exit.3.i49 217 br label %loopexit.3.i51 218 loopexit.3.i51: ; preds = %loopexit.3.i51.loopexit, %loopentry.3.i40 219 br i1 undef, label %loopentry.3.i40, label %loopentry.4.i52 220 loopentry.4.i52: ; preds = %loopexit.3.i51 221 br i1 false, label %no_exit.4.i54.preheader, label %hamming.exit.i71 222 no_exit.4.i54.preheader: ; preds = %loopentry.4.i52 223 br label %no_exit.4.i54 224 no_exit.4.i54: ; preds = %no_exit.4.backedge.i, %no_exit.4.i54.preheader 225 br i1 undef, label %then.1.i55, label %endif.1.i56 226 then.1.i55: ; preds = %no_exit.4.i54 227 br i1 undef, label %no_exit.4.backedge.i, label %loopexit.4.i57 228 no_exit.4.backedge.i: ; preds = %endif.1.i56, %then.1.i55 229 br label %no_exit.4.i54 230 endif.1.i56: ; preds = %no_exit.4.i54 231 br i1 undef, label %no_exit.4.backedge.i, label %loopexit.4.i57 232 loopexit.4.i57: ; preds = %endif.1.i56, %then.1.i55 233 br i1 false, label %no_exit.i.i69.preheader, label %hamming.exit.i71 234 no_exit.i.i69.preheader: ; preds = %loopexit.4.i57 235 br label %no_exit.i.i69 236 no_exit.i.i69: ; preds = %no_exit.i.i69, %no_exit.i.i69.preheader 237 br i1 undef, label %no_exit.i.i69, label %hamming.exit.i71.loopexit 238 hamming.exit.i71.loopexit: ; preds = %no_exit.i.i69 239 br label %hamming.exit.i71 240 hamming.exit.i71: ; preds = %hamming.exit.i71.loopexit, %loopexit.4.i57, %loopentry.4.i52, %loopentry.2.i39 241 br i1 undef, label %endif.2.i, label %loopentry.5.i72 242 loopentry.5.i72: ; preds = %hamming.exit.i71 243 br i1 false, label %shortcirc_next.i74.preheader, label %loopexit.5.i77 244 shortcirc_next.i74.preheader: ; preds = %loopentry.5.i72 245 br label %shortcirc_next.i74 246 shortcirc_next.i74: ; preds = %no_exit.5.i76, %shortcirc_next.i74.preheader 247 br i1 undef, label %no_exit.5.i76, label %loopexit.5.i77.loopexit 248 no_exit.5.i76: ; preds = %shortcirc_next.i74 249 br i1 undef, label %shortcirc_next.i74, label %loopexit.5.i77.loopexit 250 loopexit.5.i77.loopexit: ; preds = %no_exit.5.i76, %shortcirc_next.i74 251 br label %loopexit.5.i77 252 loopexit.5.i77: ; preds = %loopexit.5.i77.loopexit, %loopentry.5.i72 253 br i1 undef, label %loopentry.2.i39, label %loopexit.1.i79.loopexit 254 endif.2.i: ; preds = %hamming.exit.i71 255 br label %loopentry.1.i 256 loopexit.1.i79.loopexit: ; preds = %loopexit.5.i77 257 br label %loopexit.1.i79 258 loopexit.1.i79.loopexit2: ; preds = %loopentry.1.i 259 br label %loopexit.1.i79 260 loopexit.1.i79: ; preds = %loopexit.1.i79.loopexit2, %loopexit.1.i79.loopexit 261 br i1 undef, label %then.3.i, label %loopentry.6.i80 262 then.3.i: ; preds = %loopexit.1.i79 263 br i1 false, label %no_exit.6.i82.preheader, label %run.exit 264 loopentry.6.i80: ; preds = %loopexit.1.i79 265 br i1 false, label %no_exit.6.i82.preheader, label %run.exit 266 no_exit.6.i82.preheader: ; preds = %loopentry.6.i80, %then.3.i 267 br label %no_exit.6.i82 268 no_exit.6.i82: ; preds = %no_exit.6.i82, %no_exit.6.i82.preheader 269 br i1 undef, label %no_exit.6.i82, label %run.exit.loopexit 270 run.exit.loopexit: ; preds = %no_exit.6.i82 271 br label %run.exit 272 run.exit: ; preds = %run.exit.loopexit, %loopentry.6.i80, %then.3.i 273 br i1 false, label %no_exit.1.i36.preheader, label %loopentry.3.i37 274 else.0.i: ; preds = %no_exit.0.i31 275 br i1 false, label %then.0.i4, label %loopentry.0.i6 276 then.0.i4: ; preds = %else.0.i 277 unreachable 278 loopentry.0.i6: ; preds = %else.0.i 279 br i1 false, label %no_exit.0.i8.preheader, label %loopentry.2.i.preheader 280 no_exit.0.i8.preheader: ; preds = %loopentry.0.i6 281 br label %no_exit.0.i8 282 no_exit.0.i8: ; preds = %no_exit.0.i8, %no_exit.0.i8.preheader 283 br i1 false, label %no_exit.0.i8, label %loopentry.2.i.preheader.loopexit 284 loopentry.2.i.preheader.loopexit: ; preds = %no_exit.0.i8 285 br label %loopentry.2.i.preheader 286 loopentry.2.i.preheader: ; preds = %loopentry.2.i.preheader.loopexit, %loopentry.0.i6 287 br label %loopentry.2.i 288 loopentry.2.i: ; preds = %endif.3.i19, %loopentry.2.i.preheader 289 br i1 false, label %loopentry.3.i10.preheader, label %loopentry.4.i15 290 loopentry.3.i10.preheader: ; preds = %loopentry.2.i 291 br label %loopentry.3.i10 292 loopentry.3.i10: ; preds = %loopexit.3.i14, %loopentry.3.i10.preheader 293 br i1 false, label %no_exit.3.preheader.i, label %loopexit.3.i14 294 no_exit.3.preheader.i: ; preds = %loopentry.3.i10 295 br label %no_exit.3.i12 296 no_exit.3.i12: ; preds = %no_exit.3.i12, %no_exit.3.preheader.i 297 br i1 false, label %no_exit.3.i12, label %loopexit.3.i14.loopexit 298 loopexit.3.i14.loopexit: ; preds = %no_exit.3.i12 299 br label %loopexit.3.i14 300 loopexit.3.i14: ; preds = %loopexit.3.i14.loopexit, %loopentry.3.i10 301 br i1 false, label %loopentry.3.i10, label %loopentry.4.i15.loopexit 302 loopentry.4.i15.loopexit: ; preds = %loopexit.3.i14 303 br label %loopentry.4.i15 304 loopentry.4.i15: ; preds = %loopentry.4.i15.loopexit, %loopentry.2.i 305 br i1 false, label %loopentry.5.outer.i.preheader, label %loopentry.7.i 306 loopentry.5.outer.i.preheader: ; preds = %loopentry.4.i15 307 br label %loopentry.5.outer.i 308 loopentry.5.outer.i: ; preds = %loopexit.5.i, %loopentry.5.outer.i.preheader 309 br label %loopentry.5.i 310 loopentry.5.i: ; preds = %endif.1.i18, %loopentry.5.outer.i 311 br i1 false, label %no_exit.5.i.preheader, label %loopexit.5.i.loopexit3 312 no_exit.5.i.preheader: ; preds = %loopentry.5.i 313 br label %no_exit.5.i 314 no_exit.5.i: ; preds = %then.2.i, %no_exit.5.i.preheader 315 br i1 false, label %loopentry.6.i, label %endif.1.i18 316 loopentry.6.i: ; preds = %no_exit.5.i 317 br i1 false, label %no_exit.6.preheader.i, label %loopexit.6.i 318 no_exit.6.preheader.i: ; preds = %loopentry.6.i 319 br label %no_exit.6.i 320 no_exit.6.i: ; preds = %no_exit.6.i, %no_exit.6.preheader.i 321 br i1 false, label %no_exit.6.i, label %loopexit.6.i.loopexit 322 loopexit.6.i.loopexit: ; preds = %no_exit.6.i 323 br label %loopexit.6.i 324 loopexit.6.i: ; preds = %loopexit.6.i.loopexit, %loopentry.6.i 325 br i1 false, label %then.2.i, label %endif.1.i18 326 then.2.i: ; preds = %loopexit.6.i 327 br i1 false, label %no_exit.5.i, label %loopexit.5.i.loopexit 328 endif.1.i18: ; preds = %loopexit.6.i, %no_exit.5.i 329 br label %loopentry.5.i 330 loopexit.5.i.loopexit: ; preds = %then.2.i 331 br label %loopexit.5.i 332 loopexit.5.i.loopexit3: ; preds = %loopentry.5.i 333 br label %loopexit.5.i 334 loopexit.5.i: ; preds = %loopexit.5.i.loopexit3, %loopexit.5.i.loopexit 335 br i1 false, label %loopentry.5.outer.i, label %loopentry.7.i.loopexit 336 loopentry.7.i.loopexit: ; preds = %loopexit.5.i 337 br label %loopentry.7.i 338 loopentry.7.i: ; preds = %loopentry.7.i.loopexit, %loopentry.4.i15 339 br i1 false, label %no_exit.7.i.preheader, label %hamming.exit.i 340 no_exit.7.i.preheader: ; preds = %loopentry.7.i 341 br label %no_exit.7.i 342 no_exit.7.i: ; preds = %no_exit.7.i, %no_exit.7.i.preheader 343 br i1 false, label %no_exit.7.i, label %loopexit.7.i 344 loopexit.7.i: ; preds = %no_exit.7.i 345 br i1 false, label %no_exit.i.i.preheader, label %hamming.exit.i 346 no_exit.i.i.preheader: ; preds = %loopexit.7.i 347 br label %no_exit.i.i 348 no_exit.i.i: ; preds = %no_exit.i.i, %no_exit.i.i.preheader 349 br i1 false, label %no_exit.i.i, label %hamming.exit.i.loopexit 350 hamming.exit.i.loopexit: ; preds = %no_exit.i.i 351 br label %hamming.exit.i 352 hamming.exit.i: ; preds = %hamming.exit.i.loopexit, %loopexit.7.i, %loopentry.7.i 353 br i1 false, label %endif.3.i19, label %loopentry.8.i 354 loopentry.8.i: ; preds = %hamming.exit.i 355 br i1 false, label %shortcirc_next.i.preheader, label %loopexit.8.i 356 shortcirc_next.i.preheader: ; preds = %loopentry.8.i 357 br label %shortcirc_next.i 358 shortcirc_next.i: ; preds = %no_exit.8.i, %shortcirc_next.i.preheader 359 br i1 false, label %no_exit.8.i, label %loopexit.8.i.loopexit 360 no_exit.8.i: ; preds = %shortcirc_next.i 361 br i1 false, label %shortcirc_next.i, label %loopexit.8.i.loopexit 362 loopexit.8.i.loopexit: ; preds = %no_exit.8.i, %shortcirc_next.i 363 br label %loopexit.8.i 364 loopexit.8.i: ; preds = %loopexit.8.i.loopexit, %loopentry.8.i 365 br i1 false, label %no_exit.9.i.preheader, label %endif.3.i19 366 no_exit.9.i.preheader: ; preds = %loopexit.8.i 367 br label %no_exit.9.i 368 no_exit.9.i: ; preds = %no_exit.9.i, %no_exit.9.i.preheader 369 br i1 false, label %no_exit.9.i, label %endif.3.i19.loopexit 370 endif.3.i19.loopexit: ; preds = %no_exit.9.i 371 br label %endif.3.i19 372 endif.3.i19: ; preds = %endif.3.i19.loopexit, %loopexit.8.i, %hamming.exit.i 373 br i1 false, label %loopentry.2.i, label %loopexit.1.i20 374 loopexit.1.i20: ; preds = %endif.3.i19 375 br i1 false, label %then.4.i, label %UnifiedReturnBlock.i 376 then.4.i: ; preds = %loopexit.1.i20 377 br label %runcont.exit 378 UnifiedReturnBlock.i: ; preds = %loopexit.1.i20 379 br label %runcont.exit 380 runcont.exit: ; preds = %UnifiedReturnBlock.i, %then.4.i 381 br i1 false, label %no_exit.1.i36.preheader, label %loopentry.3.i37 382 no_exit.1.i36.preheader: ; preds = %runcont.exit, %run.exit 383 br label %no_exit.1.i36 384 no_exit.1.i36: ; preds = %no_exit.1.i36, %no_exit.1.i36.preheader 385 br i1 false, label %no_exit.1.i36, label %loopentry.3.i37.loopexit 386 loopentry.3.i37.loopexit: ; preds = %no_exit.1.i36 387 br label %loopentry.3.i37 388 loopentry.3.i37: ; preds = %loopentry.3.i37.loopexit, %runcont.exit, %run.exit 389 br i1 false, label %loopentry.4.i38.preheader, label %loopexit.3.i 390 loopentry.4.i38.preheader: ; preds = %loopentry.3.i37 391 br label %loopentry.4.i38 392 loopentry.4.i38: ; preds = %loopexit.4.i42, %loopentry.4.i38.preheader 393 br i1 false, label %no_exit.3.i.preheader, label %loopexit.4.i42 394 no_exit.3.i.preheader: ; preds = %loopentry.4.i38 395 br label %no_exit.3.i 396 no_exit.3.i: ; preds = %no_exit.3.i.backedge, %no_exit.3.i.preheader 397 br i1 false, label %endif.3.i, label %else.1.i 398 else.1.i: ; preds = %no_exit.3.i 399 br i1 false, label %no_exit.3.i.backedge, label %loopexit.4.i42.loopexit 400 no_exit.3.i.backedge: ; preds = %endif.3.i, %else.1.i 401 br label %no_exit.3.i 402 endif.3.i: ; preds = %no_exit.3.i 403 br i1 false, label %no_exit.3.i.backedge, label %loopexit.4.i42.loopexit 404 loopexit.4.i42.loopexit: ; preds = %endif.3.i, %else.1.i 405 br label %loopexit.4.i42 406 loopexit.4.i42: ; preds = %loopexit.4.i42.loopexit, %loopentry.4.i38 407 br i1 false, label %loopentry.4.i38, label %loopexit.3.i.loopexit 408 loopexit.3.i.loopexit: ; preds = %loopexit.4.i42 409 br label %loopexit.3.i 410 loopexit.3.i: ; preds = %loopexit.3.i.loopexit, %loopentry.3.i37 411 %tmp.13.i155 = icmp slt i32 0, 0 ; <i1> [#uses=1] 412 br i1 %tmp.13.i155, label %no_exit.0.i31, label %loopentry.1.i30.loopexit 413 } 414