diff options
Diffstat (limited to 'llvm/lib/Transforms')
| -rw-r--r-- | llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp b/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp index 1ca5a3982ae..2f075ba30dc 100644 --- a/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp +++ b/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp @@ -331,13 +331,11 @@ void DAE::SurveyFunction(Function &F) { } // If the function is PASSED IN as an argument, its address has been taken - for (CallSite::arg_iterator AI = CS.arg_begin(), E = CS.arg_end(); - AI != E; ++AI) - if (AI->get() == &F) { - FunctionIntrinsicallyLive = true; - break; - } - if (FunctionIntrinsicallyLive) break; + + if (CS.hasArgument(&F)) { + FunctionIntrinsicallyLive = true; + break; + } } if (FunctionIntrinsicallyLive) { |

