diff options
| author | Reid Kleckner <reid@kleckner.net> | 2014-01-28 02:38:36 +0000 |
|---|---|---|
| committer | Reid Kleckner <reid@kleckner.net> | 2014-01-28 02:38:36 +0000 |
| commit | 26af2cae05f4a8f5a66f5ef0f5d107fef174a7f3 (patch) | |
| tree | a65d86dd391f8685236fb16cf2046d4603833099 /llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp | |
| parent | 020acd88ecc4b99632b6af54e7e7f77ab70b4a30 (diff) | |
| download | bcm5719-llvm-26af2cae05f4a8f5a66f5ef0f5d107fef174a7f3.tar.gz bcm5719-llvm-26af2cae05f4a8f5a66f5ef0f5d107fef174a7f3.zip | |
Update optimization passes to handle inalloca arguments
Summary:
I searched Transforms/ and Analysis/ for 'ByVal' and updated those call
sites to check for inalloca if appropriate.
I added tests for any change that would allow an optimization to fire on
inalloca.
Reviewers: nlewycky
Differential Revision: http://llvm-reviews.chandlerc.com/D2449
llvm-svn: 200281
Diffstat (limited to 'llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp')
| -rw-r--r-- | llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp b/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp index 911c14e7e31..81dbd329c4b 100644 --- a/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp +++ b/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp @@ -378,7 +378,7 @@ bool DAE::RemoveDeadArgumentsFromCallers(Function &Fn) I != E; ++I) { Argument *Arg = I; - if (Arg->use_empty() && !Arg->hasByValAttr()) + if (Arg->use_empty() && !Arg->hasByValOrInAllocaAttr()) UnusedArgs.push_back(Arg->getArgNo()); } |

