summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2013-01-22 00:53:12 +0000
committerBill Wendling <isanbard@gmail.com>2013-01-22 00:53:12 +0000
commiteb9c0ec26e18d6e93699a20e8733a8ae72eb5510 (patch)
tree4960573d75d3d0fe2af566ef329aaeca683ab5d2 /llvm
parent360a4ae48ea12bf4e6ad77bc70888b3242a93add (diff)
downloadbcm5719-llvm-eb9c0ec26e18d6e93699a20e8733a8ae72eb5510.tar.gz
bcm5719-llvm-eb9c0ec26e18d6e93699a20e8733a8ae72eb5510.zip
Add a new method that adds the AttributeSet at the given index. No functional change.
llvm-svn: 173109
Diffstat (limited to 'llvm')
-rw-r--r--llvm/include/llvm/IR/Attributes.h13
-rw-r--r--llvm/lib/IR/Attributes.cpp11
2 files changed, 14 insertions, 10 deletions
diff --git a/llvm/include/llvm/IR/Attributes.h b/llvm/include/llvm/IR/Attributes.h
index ef80b4d4638..c1146612cd2 100644
--- a/llvm/include/llvm/IR/Attributes.h
+++ b/llvm/include/llvm/IR/Attributes.h
@@ -231,13 +231,22 @@ public:
/// list.
AttributeSet addAttr(LLVMContext &C, unsigned Idx, Attribute Attrs) const;
+ /// \brief Add attributes to the attribute set at the given index. Since
+ /// attribute sets are immutable, this returns a new set.
+ AttributeSet addAttributes(LLVMContext &C, unsigned Idx,
+ AttributeSet Attrs) const;
+
/// \brief Add return attributes to this attribute set. Since attribute sets
/// are immutable, this returns a new set.
- AttributeSet addRetAttributes(LLVMContext &C, AttributeSet Attrs) const;
+ AttributeSet addRetAttributes(LLVMContext &C, AttributeSet Attrs) const {
+ return addAttributes(C, ReturnIndex, Attrs);
+ }
/// \brief Add function attributes to this attribute set. Since attribute sets
/// are immutable, this returns a new set.
- AttributeSet addFnAttributes(LLVMContext &C, AttributeSet Attrs) const;
+ AttributeSet addFnAttributes(LLVMContext &C, AttributeSet Attrs) const {
+ return addAttributes(C, FunctionIndex, Attrs);
+ }
/// \brief Remove the specified attribute at the specified index from this
/// attribute list. Since attribute lists are immutable, this returns the new
diff --git a/llvm/lib/IR/Attributes.cpp b/llvm/lib/IR/Attributes.cpp
index fe6366de790..420b2e8ff74 100644
--- a/llvm/lib/IR/Attributes.cpp
+++ b/llvm/lib/IR/Attributes.cpp
@@ -691,14 +691,9 @@ bool AttributeSet::hasAttrSomewhere(Attribute::AttrKind Attr) const {
return false;
}
-AttributeSet AttributeSet::addRetAttributes(LLVMContext &C,
- AttributeSet Attrs) const {
- return addAttr(C, ReturnIndex, Attrs.getAttributes(ReturnIndex));
-}
-
-AttributeSet AttributeSet::addFnAttributes(LLVMContext &C,
- AttributeSet Attrs) const {
- return addAttr(C, FunctionIndex, Attrs.getAttributes(FunctionIndex));
+AttributeSet AttributeSet::addAttributes(LLVMContext &C, unsigned Idx,
+ AttributeSet Attrs) const {
+ return addAttr(C, Idx, Attrs.getAttributes(Idx));
}
AttributeSet AttributeSet::addAttr(LLVMContext &C, unsigned Idx,
OpenPOWER on IntegriCloud