diff options
author | Bill Wendling <isanbard@gmail.com> | 2012-12-31 00:49:59 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2012-12-31 00:49:59 +0000 |
commit | 9d30e7208e6b2bc3fa48305e3ae371188f643425 (patch) | |
tree | ae1e458e31434ea097a6c2cdc12e04fc63e00f8f /lib/VMCore | |
parent | d60b8ac64fa161646d50c49d6171cb49e6a2c7ee (diff) | |
download | external_llvm-9d30e7208e6b2bc3fa48305e3ae371188f643425.zip external_llvm-9d30e7208e6b2bc3fa48305e3ae371188f643425.tar.gz external_llvm-9d30e7208e6b2bc3fa48305e3ae371188f643425.tar.bz2 |
Remove the getAttributesAtIndex and getNumAttrs methods in favor of using the getAttrSomewhere predicate. This prevents the uses of 'Attribute' as a collection of attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171271 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/VMCore')
-rw-r--r-- | lib/VMCore/Attributes.cpp | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/lib/VMCore/Attributes.cpp b/lib/VMCore/Attributes.cpp index de83deb..e8c6b2a 100644 --- a/lib/VMCore/Attributes.cpp +++ b/lib/VMCore/Attributes.cpp @@ -478,7 +478,7 @@ uint64_t AttributeSet::getBitMask(unsigned Index) const { Attribute AttributeSet::getAttributes(unsigned Idx) const { if (AttrList == 0) return Attribute(); - const SmallVector<AttributeWithIndex, 4> &Attrs = AttrList->Attrs; + const SmallVectorImpl<AttributeWithIndex> &Attrs = AttrList->Attrs; for (unsigned i = 0, e = Attrs.size(); i != e && Attrs[i].Index <= Idx; ++i) if (Attrs[i].Index == Idx) return Attrs[i].Attrs; @@ -499,18 +499,8 @@ bool AttributeSet::hasAttrSomewhere(Attribute::AttrKind Attr) const { return false; } -unsigned AttributeSet::getNumAttrs() const { - return AttrList ? AttrList->Attrs.size() : 0; -} - -Attribute &AttributeSet::getAttributesAtIndex(unsigned i) const { - assert(AttrList && "Trying to get an attribute from an empty list!"); - assert(i < AttrList->Attrs.size() && "Index out of range!"); - return AttrList->Attrs[i].Attrs; -} - AttributeSet AttributeSet::addAttr(LLVMContext &C, unsigned Idx, - Attribute Attrs) const { + Attribute Attrs) const { Attribute OldAttrs = getAttributes(Idx); #ifndef NDEBUG // FIXME it is not obvious how this should work for alignment. @@ -555,7 +545,7 @@ AttributeSet AttributeSet::addAttr(LLVMContext &C, unsigned Idx, } AttributeSet AttributeSet::removeAttr(LLVMContext &C, unsigned Idx, - Attribute Attrs) const { + Attribute Attrs) const { #ifndef NDEBUG // FIXME it is not obvious how this should work for alignment. // For now, say we can't pass in alignment, which no current use does. |