diff options
author | Bill Wendling <isanbard@gmail.com> | 2012-10-09 00:01:21 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2012-10-09 00:01:21 +0000 |
commit | 8831c0605bbc0c82ce56c2fb85bd681d1c013925 (patch) | |
tree | 99ab041142fcf8baf621d46fcb3afc99a113662e /include | |
parent | 9f11bf52b47cf91b09a6294a1b6dc750fa695fd8 (diff) | |
download | llvm-8831c0605bbc0c82ce56c2fb85bd681d1c013925.tar.gz llvm-8831c0605bbc0c82ce56c2fb85bd681d1c013925.tar.bz2 llvm-8831c0605bbc0c82ce56c2fb85bd681d1c013925.tar.xz |
Convert to using the Attributes::Builder interface.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165465 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Attributes.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/include/llvm/Attributes.h b/include/llvm/Attributes.h index c3198a555f..a564441def 100644 --- a/include/llvm/Attributes.h +++ b/include/llvm/Attributes.h @@ -199,6 +199,7 @@ public: void clear() { Bits = 0; } bool hasAttributes() const; + bool hasAttributes(const Attributes &A) const; bool hasAlignmentAttr() const; uint64_t getAlignment() const; @@ -232,6 +233,8 @@ public: void addAlignmentAttr(unsigned Align); void addStackAlignmentAttr(unsigned Align); + void removeAttributes(const Attributes &A); + void removeAddressSafetyAttr(); void removeAlwaysInlineAttr(); void removeByValAttr(); @@ -267,6 +270,11 @@ public: static Attributes get(Builder &B); static Attributes get(LLVMContext &Context, Builder &B); + /// @brief Parameter attributes that do not apply to vararg call arguments. + bool hasIncompatibleWithVarArgsAttrs() const { + return hasStructRetAttr(); + } + // Attribute query methods. // FIXME: StackAlignment & Alignment attributes have no predicate methods. bool hasAttributes() const { @@ -494,6 +502,9 @@ public: /// least one parameter or for the return value. bool hasAttrSomewhere(Attributes Attr) const; + unsigned getNumAttrs() const; + Attributes &getAttributesAtIndex(unsigned i) const; + /// operator==/!= - Provide equality predicates. bool operator==(const AttrListPtr &RHS) const { return AttrList == RHS.AttrList; } @@ -537,7 +548,6 @@ private: /// getAttributes - The attributes for the specified index are /// returned. Attributes for the result are denoted with Idx = 0. Attributes getAttributes(unsigned Idx) const; - }; } // End llvm namespace |