diff options
author | Bill Wendling <isanbard@gmail.com> | 2011-08-31 20:55:40 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2011-08-31 20:55:40 +0000 |
commit | b072dd9ba434d97aac2f3b40fc81202f36c0a075 (patch) | |
tree | 10f483f79f3c0a62c65acac4350dc954ec40cac4 /test/Transforms/SCCP | |
parent | 4f8aaa0928caf36d7982534748c8390c5186d534 (diff) | |
download | external_llvm-b072dd9ba434d97aac2f3b40fc81202f36c0a075.zip external_llvm-b072dd9ba434d97aac2f3b40fc81202f36c0a075.tar.gz external_llvm-b072dd9ba434d97aac2f3b40fc81202f36c0a075.tar.bz2 |
Update the tests to the new EH scheme.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138891 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/SCCP')
-rw-r--r-- | test/Transforms/SCCP/2003-08-26-InvokeHandling.ll | 9 | ||||
-rw-r--r-- | test/Transforms/SCCP/2004-11-16-DeadInvoke.ll | 9 | ||||
-rw-r--r-- | test/Transforms/SCCP/2007-05-16-InvokeCrash.ll | 6 | ||||
-rw-r--r-- | test/Transforms/SCCP/2009-01-14-IPSCCP-Invoke.ll | 2 | ||||
-rw-r--r-- | test/Transforms/SCCP/ipsccp-basic.ll | 5 |
5 files changed, 26 insertions, 5 deletions
diff --git a/test/Transforms/SCCP/2003-08-26-InvokeHandling.ll b/test/Transforms/SCCP/2003-08-26-InvokeHandling.ll index 9876375..fb1926e 100644 --- a/test/Transforms/SCCP/2003-08-26-InvokeHandling.ll +++ b/test/Transforms/SCCP/2003-08-26-InvokeHandling.ll @@ -8,11 +8,16 @@ Entry: br i1 %cond, label %Inv, label %Cont Inv: ; preds = %Entry invoke void @foo( ) - to label %Ok unwind label %Cont + to label %Ok unwind label %LPad Ok: ; preds = %Inv br label %Cont +LPad: + %val = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) + catch i8* null + br label %Cont Cont: ; preds = %Ok, %Inv, %Entry - %X = phi i32 [ 0, %Entry ], [ 1, %Ok ], [ 0, %Inv ] ; <i32> [#uses=1] + %X = phi i32 [ 0, %Entry ], [ 1, %Ok ], [ 0, %LPad ] ; <i32> [#uses=1] ret i32 %X } +declare i32 @__gxx_personality_v0(...) diff --git a/test/Transforms/SCCP/2004-11-16-DeadInvoke.ll b/test/Transforms/SCCP/2004-11-16-DeadInvoke.ll index 5d2c78e..e7eb101 100644 --- a/test/Transforms/SCCP/2004-11-16-DeadInvoke.ll +++ b/test/Transforms/SCCP/2004-11-16-DeadInvoke.ll @@ -6,8 +6,13 @@ define void @caller() { br i1 true, label %T, label %F F: ; preds = %0 %X = invoke i32 @foo( ) - to label %T unwind label %T ; <i32> [#uses=0] -T: ; preds = %F, %F, %0 + to label %T unwind label %LP ; <i32> [#uses=0] +LP: + %val = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) + catch i8* null + br label %T +T: ret void } +declare i32 @__gxx_personality_v0(...) diff --git a/test/Transforms/SCCP/2007-05-16-InvokeCrash.ll b/test/Transforms/SCCP/2007-05-16-InvokeCrash.ll index b84fe6d..a5a42f1 100644 --- a/test/Transforms/SCCP/2007-05-16-InvokeCrash.ll +++ b/test/Transforms/SCCP/2007-05-16-InvokeCrash.ll @@ -31,7 +31,9 @@ bb149: ; preds = %bb114 bb177: ; preds = %bb149 unreachable cleanup: ; preds = %bb149, %bb114, %bb67 - unwind + %val = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) + cleanup + resume { i8*, i32 } %val } declare double @sin(double) @@ -39,3 +41,5 @@ declare double @sin(double) declare double @log(double) declare double @sqrt(double) + +declare i32 @__gxx_personality_v0(...) diff --git a/test/Transforms/SCCP/2009-01-14-IPSCCP-Invoke.ll b/test/Transforms/SCCP/2009-01-14-IPSCCP-Invoke.ll index d23ee2b..7546bf5 100644 --- a/test/Transforms/SCCP/2009-01-14-IPSCCP-Invoke.ll +++ b/test/Transforms/SCCP/2009-01-14-IPSCCP-Invoke.ll @@ -7,6 +7,8 @@ define i32 @main() { to label %UnifiedReturnBlock unwind label %lpad lpad: + %val = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) + cleanup unreachable UnifiedReturnBlock: diff --git a/test/Transforms/SCCP/ipsccp-basic.ll b/test/Transforms/SCCP/ipsccp-basic.ll index b9e3f42..6ccfd98 100644 --- a/test/Transforms/SCCP/ipsccp-basic.ll +++ b/test/Transforms/SCCP/ipsccp-basic.ll @@ -90,6 +90,8 @@ A: %c = call i64 @test4c(i64 %b) ret i64 %c B: + %val = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) + catch i8* null ret i64 0 } ; CHECK: define i64 @test4b() @@ -121,6 +123,8 @@ A: %c = call i64 @test5c({i64,i64} %a) ret i64 %c B: + %val = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) + catch i8* null ret i64 0 } @@ -204,3 +208,4 @@ entry: ret void } +declare i32 @__gxx_personality_v0(...) |