[llvm-commits] [llvm] r85810 - in /llvm/trunk: lib/Transforms/Scalar/SCCP.cpp test/Transforms/SCCP/2008-03-10-sret.ll test/Transforms/SCCP/ipsccp-basic.ll

Chris Lattner sabre at nondot.org
Mon Nov 2 10:22:51 PST 2009


Author: lattner
Date: Mon Nov  2 12:22:51 2009
New Revision: 85810

URL: http://llvm.org/viewvc/llvm-project?rev=85810&view=rev
Log:
disable IPSCCP support for multiple return values, it is buggy, so just
disable it until I can fix it.

Modified:
    llvm/trunk/lib/Transforms/Scalar/SCCP.cpp
    llvm/trunk/test/Transforms/SCCP/2008-03-10-sret.ll
    llvm/trunk/test/Transforms/SCCP/ipsccp-basic.ll

Modified: llvm/trunk/lib/Transforms/Scalar/SCCP.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/SCCP.cpp?rev=85810&r1=85809&r2=85810&view=diff

==============================================================================
--- llvm/trunk/lib/Transforms/Scalar/SCCP.cpp (original)
+++ llvm/trunk/lib/Transforms/Scalar/SCCP.cpp Mon Nov  2 12:22:51 2009
@@ -1650,7 +1650,8 @@
     
     // If this is a strong or ODR definition of this function, then we can
     // propagate information about its result into callsites of it.
-    if (!F->mayBeOverridden())
+    if (!F->mayBeOverridden() &&
+        !isa<StructType>(F->getReturnType()))
       Solver.AddTrackedFunction(F);
     
     // If this function only has direct calls that we can see, we can track its

Modified: llvm/trunk/test/Transforms/SCCP/2008-03-10-sret.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SCCP/2008-03-10-sret.ll?rev=85810&r1=85809&r2=85810&view=diff

==============================================================================
--- llvm/trunk/test/Transforms/SCCP/2008-03-10-sret.ll (original)
+++ llvm/trunk/test/Transforms/SCCP/2008-03-10-sret.ll Mon Nov  2 12:22:51 2009
@@ -4,6 +4,8 @@
 ; RUN: grep {%mrv1 = insertvalue %T %mrv, i32 17, 1} %t
 ; RUN: grep {ret %T %mrv1} %t
 
+; XFAIL: *
+
 %T = type {i32,i32}
 
 define internal {i32, i32} @bar(i32 %A) {

Modified: llvm/trunk/test/Transforms/SCCP/ipsccp-basic.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SCCP/ipsccp-basic.ll?rev=85810&r1=85809&r2=85810&view=diff

==============================================================================
--- llvm/trunk/test/Transforms/SCCP/ipsccp-basic.ll (original)
+++ llvm/trunk/test/Transforms/SCCP/ipsccp-basic.ll Mon Nov  2 12:22:51 2009
@@ -1,4 +1,5 @@
 ; RUN: opt < %s -ipsccp -S | FileCheck %s
+; XFAIL: *
 
 ;;======================== test1
 





More information about the llvm-commits mailing list