brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.8 KiB · 7becd0b Raw
85 lines · plain
1// RUN: cir-opt %s --verify-roundtrip | FileCheck %s2 3!u8i = !cir.int<u, 8>4 5module {6 7cir.global "private" constant external @_ZTIi : !cir.ptr<!u8i>8cir.global "private" constant external @_ZTIPKc : !cir.ptr<!u8i>9 10cir.func dso_local @empty_try_block_with_catch_all() {11  cir.scope {12    cir.try {13      cir.yield14    } catch all {15      cir.yield16    }17  }18  cir.return19}20 21// CHECK: cir.func dso_local @empty_try_block_with_catch_all() {22// CHECK:   cir.scope {23// CHECK:     cir.try {24// CHECK:       cir.yield25// CHECK:     } catch all {26// CHECK:       cir.yield27// CHECK:     }28// CHECK:   }29// CHECK:   cir.return30// CHECK: }31 32cir.func dso_local @empty_try_block_with_catch_unwind() {33  cir.scope {34    cir.try {35      cir.yield36    } unwind {37      cir.yield38    }39  }40  cir.return41}42 43// CHECK: cir.func dso_local @empty_try_block_with_catch_unwind() {44// CHECK:   cir.scope {45// CHECK:     cir.try {46// CHECK:       cir.yield47// CHECK:     } unwind {48// CHECK:       cir.yield49// CHECK:     }50// CHECK:   }51// CHECK:   cir.return52// CHECK: }53 54cir.func dso_local @empty_try_block_with_catch_ist() {55  cir.scope {56    cir.try {57      cir.yield58    } catch [type #cir.global_view<@_ZTIi> : !cir.ptr<!u8i>] {59      cir.yield60    } catch [type #cir.global_view<@_ZTIPKc> : !cir.ptr<!u8i>] {61      cir.yield62    } unwind {63      cir.yield64    }65  }66  cir.return67}68 69// CHECK: cir.func dso_local @empty_try_block_with_catch_ist() {70// CHECK:   cir.scope {71// CHECK:     cir.try {72// CHECK:       cir.yield73// CHECK:     } catch [type #cir.global_view<@_ZTIi> : !cir.ptr<!u8i>] {74// CHECK:       cir.yield75// CHECK:     } catch [type #cir.global_view<@_ZTIPKc> : !cir.ptr<!u8i>] {76// CHECK:       cir.yield77// CHECK:     } unwind {78// CHECK:       cir.yield79// CHECK:     }80// CHECK:   }81// CHECK:   cir.return82// CHECK: }83 84}85