mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 03:33:20 +01:00
Update some EH tests that were violating the new EH model.
The landingpad instruction needs to be the first non-PHI instruction in the unwind destination block. llvm-svn: 177650
This commit is contained in:
parent
8613f86d1c
commit
e20714f292
@ -1,7 +1,5 @@
|
|||||||
; rdar://7879828
|
|
||||||
; RUN: opt -inline -argpromotion < %s
|
; RUN: opt -inline -argpromotion < %s
|
||||||
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
|
; rdar://7879828
|
||||||
target triple = "x86_64-apple-darwin10.0.0"
|
|
||||||
|
|
||||||
define void @foo() {
|
define void @foo() {
|
||||||
invoke void @foo2()
|
invoke void @foo2()
|
||||||
@ -11,6 +9,8 @@ if.end432:
|
|||||||
unreachable
|
unreachable
|
||||||
|
|
||||||
for.end520:
|
for.end520:
|
||||||
|
%exn = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0
|
||||||
|
cleanup
|
||||||
unreachable
|
unreachable
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -57,3 +57,5 @@ init:
|
|||||||
%4 = call i32 @"clay_assign(Chain, Chain)"(%0* %3, %0* %1)
|
%4 = call i32 @"clay_assign(Chain, Chain)"(%0* %3, %0* %1)
|
||||||
ret i32 0
|
ret i32 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
declare i32 @__gxx_personality_v0(...)
|
||||||
|
@ -3,10 +3,15 @@
|
|||||||
define i32 @main() {
|
define i32 @main() {
|
||||||
entry:
|
entry:
|
||||||
invoke void @__main( )
|
invoke void @__main( )
|
||||||
to label %LongJmpBlkPre unwind label %LongJmpBlkPre
|
to label %LongJmpBlkPost unwind label %LongJmpBlkPre
|
||||||
|
|
||||||
LongJmpBlkPre: ; preds = %entry, %entry
|
LongJmpBlkPost:
|
||||||
|
ret i32 0
|
||||||
|
|
||||||
|
LongJmpBlkPre:
|
||||||
%i.3 = phi i32 [ 0, %entry ], [ 0, %entry ] ; <i32> [#uses=0]
|
%i.3 = phi i32 [ 0, %entry ], [ 0, %entry ] ; <i32> [#uses=0]
|
||||||
|
%exn = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0
|
||||||
|
cleanup
|
||||||
ret i32 0
|
ret i32 0
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -14,3 +19,4 @@ define void @__main() {
|
|||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
|
|
||||||
|
declare i32 @__gxx_personality_v0(...)
|
||||||
|
@ -13,6 +13,8 @@ LJDecisionBB: ; preds = %else
|
|||||||
br label %else
|
br label %else
|
||||||
|
|
||||||
RethrowExcept: ; preds = %entry
|
RethrowExcept: ; preds = %entry
|
||||||
|
%exn = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0
|
||||||
|
cleanup
|
||||||
ret i32 0
|
ret i32 0
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -20,4 +22,4 @@ define void @__main() {
|
|||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
|
|
||||||
|
declare i32 @__gxx_personality_v0(...)
|
||||||
|
Loading…
Reference in New Issue
Block a user