diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/include/llvm/IR/Attributes.h | 2 | ||||
| -rw-r--r-- | llvm/lib/IR/Attributes.cpp | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/llvm/include/llvm/IR/Attributes.h b/llvm/include/llvm/IR/Attributes.h index e8762942b1b..46ba5963072 100644 --- a/llvm/include/llvm/IR/Attributes.h +++ b/llvm/include/llvm/IR/Attributes.h @@ -109,7 +109,7 @@ public: /// \brief Return a uniquified Attribute object. This takes the uniquified /// value from the Builder and wraps it in the Attribute class. - static Attribute get(LLVMContext &Context, AttrKind Kind); + static Attribute get(LLVMContext &Context, ArrayRef<AttrKind> Kinds); static Attribute get(LLVMContext &Context, AttrBuilder &B); /// \brief Return true if the attribute is present. diff --git a/llvm/lib/IR/Attributes.cpp b/llvm/lib/IR/Attributes.cpp index 937514a0a4a..8ec192b813c 100644 --- a/llvm/lib/IR/Attributes.cpp +++ b/llvm/lib/IR/Attributes.cpp @@ -30,8 +30,11 @@ using namespace llvm; // Attribute Implementation //===----------------------------------------------------------------------===// -Attribute Attribute::get(LLVMContext &Context, AttrKind Kind) { - AttrBuilder B(Kind); +Attribute Attribute::get(LLVMContext &Context, ArrayRef<AttrKind> Kinds) { + AttrBuilder B; + for (ArrayRef<AttrKind>::iterator I = Kinds.begin(), E = Kinds.end(); + I != E; ++I) + B.addAttribute(*I); return Attribute::get(Context, B); } |

