diff options
author | Nick Lewycky <nicholas@mxc.ca> | 2010-04-14 05:03:50 +0000 |
---|---|---|
committer | Nick Lewycky <nicholas@mxc.ca> | 2010-04-14 05:03:50 +0000 |
commit | 3c594ff2900dfbd7640df4945c389de6de2b5e0a (patch) | |
tree | 79f74bc0d199e5087394dff0c2507e1eb5d906ae | |
parent | 3715e45da564e1c92410bf7b2d799d998664ff44 (diff) |
I don't know how, but I managed to goof the revert. Remove function that should
have been removed in r101231.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101232 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Transforms/IPO/DeadArgumentElimination.cpp | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/lib/Transforms/IPO/DeadArgumentElimination.cpp b/lib/Transforms/IPO/DeadArgumentElimination.cpp index 1ffb1a3821..191c62a3f6 100644 --- a/lib/Transforms/IPO/DeadArgumentElimination.cpp +++ b/lib/Transforms/IPO/DeadArgumentElimination.cpp @@ -894,43 +894,6 @@ bool DAE::RemoveDeadStuffFromFunction(Function *F) { return true; } -bool DAE::RemoveDeadParamsFromCallersOf(Function *F) { - // Don't modify fully live functions - if (LiveFunctions.count(F)) - return false; - - // Make a list of the dead arguments. - SmallVector<int, 10> ArgDead; - unsigned i = 0; - for (Function::arg_iterator I = F->arg_begin(), E = F->arg_end(); - I != E; ++I, ++i) { - RetOrArg Arg = CreateArg(F, i); - if (!LiveValues.count(Arg)) - ArgDead.push_back(i); - } - if (ArgDead.empty()) - return false; - - bool MadeChange = false; - for (Function::use_iterator I = F->use_begin(), E = F->use_end(); - I != E; ++I) { - CallSite CS = CallSite::get(*I); - if (CS.getInstruction() && CS.isCallee(I)) { - for (unsigned i = 0, e = ArgDead.size(); i != e; ++i) { - Value *A = CS.getArgument(ArgDead[i]); - if (!isa<UndefValue>(A)) { - ++NumParametersEliminated; - MadeChange = true; - CS.setArgument(ArgDead[i], UndefValue::get(A->getType())); - RecursivelyDeleteTriviallyDeadInstructions(A); - } - } - } - } - - return MadeChange; -} - bool DAE::runOnModule(Module &M) { bool Changed = false; |