diff options
author | Bill Wendling <isanbard@gmail.com> | 2012-10-14 08:54:26 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2012-10-14 08:54:26 +0000 |
commit | 7be7848e17f60825f5fbc177b8a25909a30ddb00 (patch) | |
tree | 829167031026fff9cf34cb49fceda7e13bd9477b /lib/Transforms/IPO/DeadArgumentElimination.cpp | |
parent | fd8d62c0b449b9070dc18355ac243c7fa78d40d6 (diff) | |
download | llvm-7be7848e17f60825f5fbc177b8a25909a30ddb00.tar.gz llvm-7be7848e17f60825f5fbc177b8a25909a30ddb00.tar.bz2 llvm-7be7848e17f60825f5fbc177b8a25909a30ddb00.tar.xz |
Remove operator cast method in favor of querying with the correct method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165899 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/IPO/DeadArgumentElimination.cpp')
-rw-r--r-- | lib/Transforms/IPO/DeadArgumentElimination.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/lib/Transforms/IPO/DeadArgumentElimination.cpp b/lib/Transforms/IPO/DeadArgumentElimination.cpp index aa34b33a8a..455be797fd 100644 --- a/lib/Transforms/IPO/DeadArgumentElimination.cpp +++ b/lib/Transforms/IPO/DeadArgumentElimination.cpp @@ -276,7 +276,8 @@ bool DAE::DeleteDeadVarargs(Function &Fn) { SmallVector<AttributeWithIndex, 8> AttributesVec; for (unsigned i = 0; PAL.getSlot(i).Index <= NumArgs; ++i) AttributesVec.push_back(PAL.getSlot(i)); - if (Attributes FnAttrs = PAL.getFnAttributes()) + Attributes FnAttrs = PAL.getFnAttributes(); + if (FnAttrs.hasAttributes()) AttributesVec.push_back(AttributeWithIndex::get(~0, FnAttrs)); PAL = AttrListPtr::get(AttributesVec); } @@ -770,7 +771,7 @@ bool DAE::RemoveDeadStuffFromFunction(Function *F) { hasAttributes(Attributes::typeIncompatible(NRetTy)) && "Return attributes no longer compatible?"); - if (RAttrs) + if (RAttrs.hasAttributes()) AttributesVec.push_back(AttributeWithIndex::get(0, RAttrs)); // Remember which arguments are still alive. @@ -788,7 +789,8 @@ bool DAE::RemoveDeadStuffFromFunction(Function *F) { // Get the original parameter attributes (skipping the first one, that is // for the return value. - if (Attributes Attrs = PAL.getParamAttributes(i + 1)) + Attributes Attrs = PAL.getParamAttributes(i + 1); + if (Attrs.hasAttributes()) AttributesVec.push_back(AttributeWithIndex::get(Params.size(), Attrs)); } else { ++NumArgumentsEliminated; @@ -837,7 +839,7 @@ bool DAE::RemoveDeadStuffFromFunction(Function *F) { RAttrs = Attributes::get(Attributes::Builder(RAttrs). removeAttributes(Attributes::typeIncompatible(NF->getReturnType()))); - if (RAttrs) + if (RAttrs.hasAttributes()) AttributesVec.push_back(AttributeWithIndex::get(0, RAttrs)); // Declare these outside of the loops, so we can reuse them for the second @@ -850,14 +852,16 @@ bool DAE::RemoveDeadStuffFromFunction(Function *F) { if (ArgAlive[i]) { Args.push_back(*I); // Get original parameter attributes, but skip return attributes. - if (Attributes Attrs = CallPAL.getParamAttributes(i + 1)) + Attributes Attrs = CallPAL.getParamAttributes(i + 1); + if (Attrs.hasAttributes()) AttributesVec.push_back(AttributeWithIndex::get(Args.size(), Attrs)); } // Push any varargs arguments on the list. Don't forget their attributes. for (CallSite::arg_iterator E = CS.arg_end(); I != E; ++I, ++i) { Args.push_back(*I); - if (Attributes Attrs = CallPAL.getParamAttributes(i + 1)) + Attributes Attrs = CallPAL.getParamAttributes(i + 1); + if (Attrs.hasAttributes()) AttributesVec.push_back(AttributeWithIndex::get(Args.size(), Attrs)); } |