Actually, leave the check in. This prevents us from counting dead arguments
authorChris Lattner <sabre@nondot.org>
Thu, 11 Nov 2004 07:47:54 +0000 (07:47 +0000)
committerChris Lattner <sabre@nondot.org>
Thu, 11 Nov 2004 07:47:54 +0000 (07:47 +0000)
as IPCP opportunities.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17680 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/IPO/IPConstantPropagation.cpp

index 9daeb4fa5d928c5bd9ccdde8437d3951545090b7..bf2e3d72c3fefc1c2cedc86e7d6dc8ccc14ad80c 100644 (file)
@@ -113,7 +113,7 @@ bool IPCP::processFunction(Function &F) {
   bool MadeChange = false;
   for (unsigned i = 0, e = ArgumentConstants.size(); i != e; ++i, ++AI)
     // Do we have a constant argument!?
-    if (!ArgumentConstants[i].second) {
+    if (!ArgumentConstants[i].second && !AI->use_empty()) {
       Value *V = ArgumentConstants[i].first;
       if (V == 0) V = UndefValue::get(AI->getType());
       AI->replaceAllUsesWith(V);