summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR/Attributes.cpp
diff options
context:
space:
mode:
authorManman Ren <manman.ren@gmail.com>2016-03-29 17:37:21 +0000
committerManman Ren <manman.ren@gmail.com>2016-03-29 17:37:21 +0000
commitf46262e0b7a183c22b9384cd729c5fb0f05e5d38 (patch)
treea4c3cb4390adf67c3341875e7734d38230204150 /llvm/lib/IR/Attributes.cpp
parent6e5c1fed08edf57725b9dc2e5c7ab429d25569a6 (diff)
downloadbcm5719-llvm-f46262e0b7a183c22b9384cd729c5fb0f05e5d38.tar.gz
bcm5719-llvm-f46262e0b7a183c22b9384cd729c5fb0f05e5d38.zip
Swift Calling Convention: add swiftself attribute.
Differential Revision: http://reviews.llvm.org/D17866 llvm-svn: 264754
Diffstat (limited to 'llvm/lib/IR/Attributes.cpp')
-rw-r--r--llvm/lib/IR/Attributes.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/IR/Attributes.cpp b/llvm/lib/IR/Attributes.cpp
index f9d98eb2c49..7fb5bf1f42f 100644
--- a/llvm/lib/IR/Attributes.cpp
+++ b/llvm/lib/IR/Attributes.cpp
@@ -195,6 +195,8 @@ std::string Attribute::getAsString(bool InAttrGrp) const {
return "byval";
if (hasAttribute(Attribute::Convergent))
return "convergent";
+ if (hasAttribute(Attribute::SwiftSelf))
+ return "swiftself";
if (hasAttribute(Attribute::InaccessibleMemOnly))
return "inaccessiblememonly";
if (hasAttribute(Attribute::InaccessibleMemOrArgMemOnly))
@@ -448,6 +450,7 @@ uint64_t AttributeImpl::getAttrMask(Attribute::AttrKind Val) {
case Attribute::NoRecurse: return 1ULL << 48;
case Attribute::InaccessibleMemOnly: return 1ULL << 49;
case Attribute::InaccessibleMemOrArgMemOnly: return 1ULL << 50;
+ case Attribute::SwiftSelf: return 1ULL << 51;
case Attribute::Dereferenceable:
llvm_unreachable("dereferenceable attribute not supported in raw format");
break;
OpenPOWER on IntegriCloud