Move the personality function from LandingPadInst to Function
[oota-llvm.git] / test / CodeGen / Generic / multiple-return-values-cross-block-with-invoke.ll
index f21b645615ad0288466622c7404ee6cb7d1218d6..a21906cf6dc599094e856dd94738b458a5cf19dd 100644 (file)
@@ -1,18 +1,21 @@
-; RUN: llvm-as < %s | llc
-
+; RUN: llc < %s
+; XFAIL: hexagon
 declare { i64, double } @wild()
 
-define void @foo(i64* %p, double* %q) nounwind {
+define void @foo(i64* %p, double* %q) nounwind personality i32 (...)* @__gxx_personality_v0 {
         %t = invoke { i64, double } @wild() to label %normal unwind label %handler
 
 normal:
-        %mrv_gr = getresult { i64, double } %t, 0
+        %mrv_gr = extractvalue { i64, double } %t, 0
         store i64 %mrv_gr, i64* %p
-        %mrv_gr12681 = getresult { i64, double } %t, 1   
+        %mrv_gr12681 = extractvalue { i64, double } %t, 1   
         store double %mrv_gr12681, double* %q
        ret void
   
 handler:
+        %exn = landingpad {i8*, i32}
+                 catch i8* null
        ret void
 }
 
+declare i32 @__gxx_personality_v0(...)