1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 19:52:54 +01:00
llvm-mirror/test/CodeGen/X86/eh-null-personality.ll
Reid Kleckner 0edf7445db [EH] Handle non-Function personalities like unknown personalities
Also delete and simplify a lot of MachineModuleInfo code that used to be
needed to handle personalities on landingpads.  Now that the personality
is on the LLVM Function, we no longer need to track it this way on MMI.
Certainly it should not live on LandingPadInfo.

llvm-svn: 246478
2015-08-31 20:02:16 +00:00

26 lines
558 B
LLVM

; RUN: llc -mtriple=x86_64-linux < %s | FileCheck %s
; We should treat non-Function personalities as the unknown personality, which
; is usually Itanium.
declare void @g()
declare void @terminate(i8*)
define void @f() personality i8* null {
invoke void @g()
to label %ret unwind label %lpad
ret:
ret void
lpad:
%vals = landingpad { i8*, i32 } catch i8* null
%ptr = extractvalue { i8*, i32 } %vals, 0
call void @terminate(i8* %ptr)
unreachable
}
; CHECK: f:
; CHECK: callq g
; CHECK: retq
; CHECK: movq %rax, %rdi
; CHECK: callq terminate