diff options
-rw-r--r-- | include/llvm/Attributes.h | 1 | ||||
-rw-r--r-- | lib/VMCore/Attributes.cpp | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/include/llvm/Attributes.h b/include/llvm/Attributes.h index d20a47a286..8b43e08f08 100644 --- a/include/llvm/Attributes.h +++ b/include/llvm/Attributes.h @@ -95,6 +95,7 @@ private: public: Attributes() : Attrs(0) {} explicit Attributes(uint64_t Val); + explicit Attributes(AttrVal Val); Attributes(const Attributes &A); class Builder { diff --git a/lib/VMCore/Attributes.cpp b/lib/VMCore/Attributes.cpp index 0625ef3f09..7ae823214b 100644 --- a/lib/VMCore/Attributes.cpp +++ b/lib/VMCore/Attributes.cpp @@ -29,6 +29,9 @@ using namespace llvm; Attributes::Attributes(uint64_t Val) : Attrs(Val) {} +Attributes::Attributes(AttrVal Val) + : Attrs(Attributes::get(Attributes::Builder().addAttribute(Val)).Attrs) {} + Attributes::Attributes(AttributesImpl *A) : Attrs(A->Bits) {} Attributes::Attributes(const Attributes &A) : Attrs(A.Attrs) {} |