From: Bill Wendling Date: Wed, 31 Aug 2011 21:04:11 +0000 (+0000) Subject: Update more tests to the new EH scheme. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=ab98f9d155a0a9b085921ff1f72b00f9f43e74c4;p=oota-llvm.git Update more tests to the new EH scheme. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138894 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/CodeGen/Generic/2004-02-08-UnwindSupport.ll b/test/CodeGen/Generic/2004-02-08-UnwindSupport.ll index 393062abf78..a072ab70df5 100644 --- a/test/CodeGen/Generic/2004-02-08-UnwindSupport.ll +++ b/test/CodeGen/Generic/2004-02-08-UnwindSupport.ll @@ -12,6 +12,9 @@ cont: ; preds = %0 ret i32 1 EH: ; preds = %0 + %exn = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0 + cleanup ret i32 0 } +declare i32 @__gxx_personality_v0(...) diff --git a/test/CodeGen/PowerPC/2007-11-16-landingpad-split.ll b/test/CodeGen/PowerPC/2007-11-16-landingpad-split.ll index 0c116740944..ecf45efee2e 100644 --- a/test/CodeGen/PowerPC/2007-11-16-landingpad-split.ll +++ b/test/CodeGen/PowerPC/2007-11-16-landingpad-split.ll @@ -18,11 +18,10 @@ bb30.preheader: ; preds = %entry br label %bb30 unwind: ; preds = %cond_true, %entry - %eh_ptr = call i8* @llvm.eh.exception() ; [#uses=2] - %eh_select = call i64 (i8*, i8*, ...)* @llvm.eh.selector.i64(i8* %eh_ptr, i8* bitcast (void ()* @__gxx_personality_v0 to i8*), i8* null) ; [#uses=0] + %exn = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0 + catch i8* null call void @llvm.stackrestore(i8* %tmp4) - call void @_Unwind_Resume(i8* %eh_ptr) - unreachable + resume { i8*, i32 } %exn invcont23: ; preds = %cond_true %tmp27 = load i64* %tmp26, align 8 ; [#uses=1] @@ -46,14 +45,8 @@ declare i8* @llvm.stacksave() nounwind declare void @Foo(i8**) -declare i8* @llvm.eh.exception() nounwind - -declare i64 @llvm.eh.selector.i64(i8*, i8*, ...) nounwind - -declare void @__gxx_personality_v0() - -declare void @_Unwind_Resume(i8*) - declare void @Bar(i64, %struct.Range*) declare void @llvm.stackrestore(i8*) nounwind + +declare i32 @__gxx_personality_v0(...) diff --git a/test/Transforms/ObjCARC/basic.ll b/test/Transforms/ObjCARC/basic.ll index 72f05ffaac9..575cf42d4e6 100644 --- a/test/Transforms/ObjCARC/basic.ll +++ b/test/Transforms/ObjCARC/basic.ll @@ -698,6 +698,8 @@ invoke.cont23: ; preds = %if.then12 lpad20: ; preds = %invoke.cont23, %if.then12 %tmp502 = phi double* [ undef, %invoke.cont23 ], [ %self, %if.then12 ] + %exn = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0 + cleanup unreachable if.end: ; preds = %invoke.cont23 @@ -1998,3 +2000,5 @@ end: ; preds = %if.end125, %if.end1 } !0 = metadata !{} + +declare i32 @__gxx_personality_v0(...) diff --git a/test/Transforms/ObjCARC/invoke.ll b/test/Transforms/ObjCARC/invoke.ll index a1b87d230bd..cf971e458aa 100644 --- a/test/Transforms/ObjCARC/invoke.ll +++ b/test/Transforms/ObjCARC/invoke.ll @@ -27,6 +27,8 @@ invoke.cont: ; preds = %entry ret void lpad: ; preds = %entry + %exn = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0 + cleanup call void @objc_release(i8* %zipFile) nounwind, !clang.imprecise_release !0 ret void } @@ -56,6 +58,8 @@ invoke.cont: ; preds = %entry br label %done lpad: ; preds = %entry + %exn = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0 + cleanup call void @callee() br label %done @@ -64,4 +68,6 @@ done: ret void } +declare i32 @__gxx_personality_v0(...) + !0 = metadata !{} diff --git a/test/Transforms/ObjCARC/retain-not-declared.ll b/test/Transforms/ObjCARC/retain-not-declared.ll index 80ac828a081..41bde017e77 100644 --- a/test/Transforms/ObjCARC/retain-not-declared.ll +++ b/test/Transforms/ObjCARC/retain-not-declared.ll @@ -51,11 +51,17 @@ invoke.cont102: ; preds = %invoke.cont93 unreachable lpad91: ; preds = %entry + %exn91 = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0 + cleanup unreachable lpad100: ; preds = %invoke.cont93 + %exn100 = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0 + cleanup call void @objc_release(i8* %tmp2) nounwind, !clang.imprecise_release !0 unreachable } +declare i32 @__gxx_personality_v0(...) + !0 = metadata !{} diff --git a/test/Transforms/PruneEH/2003-09-14-ExternalCall.ll b/test/Transforms/PruneEH/2003-09-14-ExternalCall.ll index 679eafd5936..64aba461016 100644 --- a/test/Transforms/PruneEH/2003-09-14-ExternalCall.ll +++ b/test/Transforms/PruneEH/2003-09-14-ExternalCall.ll @@ -6,6 +6,9 @@ define void @foo() { invoke void @External( ) to label %Cont unwind label %Cont Cont: ; preds = %0, %0 + %exn = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0 + cleanup ret void } +declare i32 @__gxx_personality_v0(...)