diff options
Diffstat (limited to 'test/CodeGen/X86/cfi.ll')
-rw-r--r-- | test/CodeGen/X86/cfi.ll | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/CodeGen/X86/cfi.ll b/test/CodeGen/X86/cfi.ll new file mode 100644 index 000000000000..b57ff45f51e3 --- /dev/null +++ b/test/CodeGen/X86/cfi.ll @@ -0,0 +1,27 @@ +; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu | FileCheck --check-prefix=STATIC %s +; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -relocation-model=pic | FileCheck --check-prefix=PIC %s + +; STATIC: .cfi_personality 3, __gxx_personality_v0 +; STATIC: .cfi_lsda 3, .Lexception0 + +; PIC: .cfi_personality 155, DW.ref.__gxx_personality_v0 +; PIC: .cfi_lsda 27, .Lexception0 + + +define void @bar() { +entry: + %call = invoke i32 @foo() + to label %invoke.cont unwind label %lpad + +invoke.cont: + ret void + +lpad: + %exn = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0 + catch i8* null + ret void +} + +declare i32 @foo() + +declare i32 @__gxx_personality_v0(...) |