Update the tests to the new EH scheme.
authorBill Wendling <isanbard@gmail.com>
Wed, 31 Aug 2011 20:55:40 +0000 (20:55 +0000)
committerBill Wendling <isanbard@gmail.com>
Wed, 31 Aug 2011 20:55:40 +0000 (20:55 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138891 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/SCCP/2003-08-26-InvokeHandling.ll
test/Transforms/SCCP/2004-11-16-DeadInvoke.ll
test/Transforms/SCCP/2007-05-16-InvokeCrash.ll
test/Transforms/SCCP/2009-01-14-IPSCCP-Invoke.ll
test/Transforms/SCCP/ipsccp-basic.ll

index 9876375ae88a7e6e86fffe010b45ffc00ae64d82..fb1926eca25bc7144a55ca346134292b72d47972 100644 (file)
@@ -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(...)
index 5d2c78ef874c0a5f52ff9fcf750645418bdbfc21..e7eb101c147aa0b792a95132e0fe7a84d36bb02b 100644 (file)
@@ -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(...)
index b84fe6db2f21dc1f7bf5f9a1429edf3cd296b3c7..a5a42f1b40719f23b1218c499a82432716f2b121 100644 (file)
@@ -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(...)
index d23ee2b23d763aa2c2995341d1718fb785689046..7546bf5cc727255eb888c65166518b058ac4ac29 100644 (file)
@@ -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:
index b9e3f42fdbded95f08a2812f336bae0f2e0d144d..6ccfd98234315f96e21185c845cfb5987fca8e44 100644 (file)
@@ -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(...)