Lines Matching refs:catch

51 ;   } catch (...) {}
54 ; In this case, the outermost cleanup pad can be eliminated and the catch block
68 ; CHECK: catch.dispatch:
69 ; CHECK-NEXT: [[CS1:%.*]] = catchswitch within none [label %catch] unwind to caller
70 ; CHECK: catch:
86 cleanupret from %0 unwind label %catch.dispatch
88 catch.dispatch: ; preds = %ehcleanup
89 %cs1 = catchswitch within none [label %catch] unwind label %ehcleanup.1
91 catch: ; preds = %catch.dispatch
95 catchret.dest: ; preds = %catch
116 ; } catch (...) {}
128 ; CHECK: catch.dispatch:
129 ; CHECK-NEXT: [[CS1:%.*]] = catchswitch within none [label %catch] unwind label [[EHCLEANUP_1:%.…
130 ; CHECK: catch:
149 cleanupret from %0 unwind label %catch.dispatch
151 catch.dispatch: ; preds = %ehcleanup
152 %cs1 = catchswitch within none [label %catch] unwind label %ehcleanup.1
154 catch: ; preds = %catch.dispatch
158 catchret.dest: ; preds = %catch
179 ; } catch (...) {}
183 ; catch block should be converted to a call (that is, that is, exception
195 ; CHECK: catch.dispatch:
196 ; CHECK-NEXT: [[CS1:%.*]] = catchswitch within none [label %catch] unwind to caller
197 ; CHECK: catch:
209 to label %try.cont unwind label %catch.dispatch
211 catch.dispatch: ; preds = %invoke.cont
212 %cs1 = catchswitch within none [label %catch] unwind label %ehcleanup
214 catch: ; preds = %catch.dispatch
218 try.cont: ; preds = %catch, %invoke.cont
236 ; } catch (...) {
243 ; cleanup pad should be sunk into the catch dispatch block.
253 ; CHECK: catch.dispatch:
255 ; CHECK-NEXT: [[CS1:%.*]] = catchswitch within none [label %catch] unwind to caller
256 ; CHECK: catch:
274 cleanupret from %0 unwind label %catch.dispatch
276 catch.dispatch: ; preds = %ehcleanup
277 %cs1 = catchswitch within none [label %catch] unwind to caller
279 catch: ; preds = %catch.dispatch
283 return: ; preds = %invoke.cont, %catch
284 %retval.0 = phi i32 [ %state.0, %catch ], [ 0, %invoke.cont ]
300 ; } catch (...) {
307 ; cleanup pad should be merged with the PHI node in the catch dispatch block.
320 ; CHECK: catch.dispatch:
322 ; CHECK-NEXT: [[CS1:%.*]] = catchswitch within none [label %catch] unwind to caller
323 ; CHECK: catch:
332 to label %invoke.cont unwind label %catch.dispatch
345 cleanupret from %0 unwind label %catch.dispatch
347 catch.dispatch: ; preds = %ehcleanup, %entry
349 %cs1 = catchswitch within none [label %catch] unwind to caller
351 catch: ; preds = %catch.dispatch
355 return: ; preds = %invoke.cont.1, %catch
356 %retval.0 = phi i32 [ %state.1, %catch ], [ 0, %invoke.cont.1 ]
375 ; } catch (...) {
383 ; In this case, the PHI node that is sunk from ehcleanup to catch.dispatch
395 ; CHECK: catch.dispatch:
397 ; CHECK-NEXT: [[CS1:%.*]] = catchswitch within none [label %catch] unwind to caller
398 ; CHECK: catch:
402 ; CHECK: catch.cont:
419 cleanupret from %0 unwind label %catch.dispatch
421 catch.dispatch: ; preds = %ehcleanup, %catch.cont
422 %cs1 = catchswitch within none [label %catch] unwind to caller
424 catch: ; preds = %catch.dispatch
427 catchret from %1 to label %catch.cont
429 catch.cont: ; preds = %catch
431 to label %return unwind label %catch.dispatch
433 return: ; preds = %invoke.cont, %catch.cont
444 ; CHECK: catch.dispatch:
445 ; CHECK-NEXT: [[CATCH_SWITCH:%.*]] = catchswitch within none [label %catch] unwind to caller
446 ; CHECK: catch:
462 cleanupret from %cleanup.pad unwind label %catch.dispatch
464 catch.dispatch:
465 %catch.switch = catchswitch within none [label %catch] unwind to caller
467 catch:
468 %catch.pad = catchpad within %catch.switch [i8* null, i32 0, i8* null]
469 catchret from %catch.pad to label %try.cont
515 ; CHECK: catch.dispatch:
516 ; CHECK-NEXT: [[CS1:%.*]] = catchswitch within none [label %catch] unwind to caller
517 ; CHECK: catch:
533 to label %return unwind label %catch.dispatch
539 cleanupret from %0 unwind label %catch.dispatch
541 catch.dispatch: ; preds = %ehcleanup, %invoke.cont
542 %cs1 = catchswitch within none [label %catch] unwind to caller
544 catch: ; preds = %catch.dispatch
548 return: ; preds = %invoke.cont, %catch.cont