aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/IR/Attributes.cpp
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2015-05-26 23:48:40 +0000
committerOwen Anderson <resistor@mac.com>2015-05-26 23:48:40 +0000
commit85fa7d5037fed8191ef67c2b4d954218b942a7d1 (patch)
tree7e3c7d6e771cbbe3926c0411cd3d1ee678a493b6 /llvm/lib/IR/Attributes.cpp
parent3abb86da627a01b1e2091c08a9117dc273f9473f (diff)
downloadllvm-85fa7d5037fed8191ef67c2b4d954218b942a7d1.zip
llvm-85fa7d5037fed8191ef67c2b4d954218b942a7d1.tar.gz
llvm-85fa7d5037fed8191ef67c2b4d954218b942a7d1.tar.bz2
Add initial support for the convergent attribute.
llvm-svn: 238264
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 55d3122..fef05c8 100644
--- a/llvm/lib/IR/Attributes.cpp
+++ b/llvm/lib/IR/Attributes.cpp
@@ -194,6 +194,8 @@ std::string Attribute::getAsString(bool InAttrGrp) const {
return "builtin";
if (hasAttribute(Attribute::ByVal))
return "byval";
+ if (hasAttribute(Attribute::Convergent))
+ return "convergent";
if (hasAttribute(Attribute::InAlloca))
return "inalloca";
if (hasAttribute(Attribute::InlineHint))
@@ -434,6 +436,7 @@ uint64_t AttributeImpl::getAttrMask(Attribute::AttrKind Val) {
case Attribute::InAlloca: return 1ULL << 43;
case Attribute::NonNull: return 1ULL << 44;
case Attribute::JumpTable: return 1ULL << 45;
+ case Attribute::Convergent: return 1ULL << 46;
case Attribute::Dereferenceable:
llvm_unreachable("dereferenceable attribute not supported in raw format");
break;