[llvm-commits] [llvm] r140858 - /llvm/trunk/test/Transforms/InstCombine/LandingPadClauses.ll

Duncan Sands baldrick at free.fr
Fri Sep 30 10:00:44 PDT 2011


Author: baldrick
Date: Fri Sep 30 12:00:34 2011
New Revision: 140858

URL: http://llvm.org/viewvc/llvm-project?rev=140858&view=rev
Log:
Add forgotten tests that the cleanup flag is cleared if there
is a catch-all landingpad clause.

Modified:
    llvm/trunk/test/Transforms/InstCombine/LandingPadClauses.ll

Modified: llvm/trunk/test/Transforms/InstCombine/LandingPadClauses.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/InstCombine/LandingPadClauses.ll?rev=140858&r1=140857&r2=140858&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/InstCombine/LandingPadClauses.ll (original)
+++ llvm/trunk/test/Transforms/InstCombine/LandingPadClauses.ll Fri Sep 30 12:00:34 2011
@@ -35,6 +35,9 @@
   invoke void @bar()
     to label %cont.h unwind label %lpad.h
 cont.h:
+  invoke void @bar()
+    to label %cont.i unwind label %lpad.i
+cont.i:
   ret void
 
 lpad.a:
@@ -115,6 +118,15 @@
 ; CHECK: %h = landingpad
 ; CHECK-NEXT: filter [1 x i32*] zeroinitializer
 ; CHECK-NEXT: unreachable
+
+lpad.i:
+  %i = landingpad { i8*, i32 } personality i32 (i32, i64, i8*, i8*)* @generic_personality
+          cleanup
+          filter [0 x i32*] zeroinitializer
+  unreachable
+; CHECK: %i = landingpad
+; CHECK-NEXT: filter
+; CHECK-NEXT: unreachable
 }
 
 define void @foo_cxx() {
@@ -128,6 +140,9 @@
   invoke void @bar()
     to label %cont.c unwind label %lpad.c
 cont.c:
+  invoke void @bar()
+    to label %cont.d unwind label %lpad.d
+cont.d:
   ret void
 
 lpad.a:
@@ -154,4 +169,13 @@
 ; CHECK: %c = landingpad
 ; CHECK-NEXT: cleanup
 ; CHECK-NEXT: unreachable
+
+lpad.d:
+  %d = landingpad { i8*, i32 } personality i32 (i32, i64, i8*, i8*)* @__gxx_personality_v0
+          cleanup
+          catch i32* null
+  unreachable
+; CHECK: %d = landingpad
+; CHECK-NEXT: null
+; CHECK-NEXT: unreachable
 }





More information about the llvm-commits mailing list