xref: /llvm-project/clang/test/CodeGen/PowerPC/ignore-exceptions.cpp (revision 39db5e1ed87363a9ffea81e53520b542201b3262)
1 // RUN: %clang_cc1 %s -triple powerpc64-linux -fexceptions -fcxx-exceptions -fignore-exceptions -emit-llvm -o - | FileCheck %s
2 
3 struct A {
~AA4   ~A(){}
5 };
6 
f(void)7 void f(void) {
8 // CHECK-NOT: personality ptr @__gcc_personality_v0
9   A a;
10   try {
11     throw 1;
12   } catch(...) {
13   }
14 // CHECK:  %a = alloca %struct.A, align 1
15 // CHECK:  %exception = call ptr @__cxa_allocate_exception(i64 4) #1
16 // CHECK:  store i32 1, ptr %exception, align 16
17 // CHECK:  call void @__cxa_throw(ptr %exception, ptr @_ZTIi, ptr null) #2
18 // CHECK:  unreachable
19 
20 // CHECK-NOT: invoke
21 // CHECK-NOT: landingpad
22 // CHECK-NOT: __cxa_begin_catch
23 // CHECK-NOT: __cxa_end_catch
24 }
25