// bits.
uint64_t EncodedAttrs = Attrs.Raw() & 0xffff;
if (Attrs.hasAttribute(Attributes::Alignment))
- EncodedAttrs |= (1ULL << 16) <<
- (((Attrs.Raw() & Attribute::Alignment_i) - 1) >> 16);
+ EncodedAttrs |= Attrs.getAlignment() << 16;
EncodedAttrs |= (Attrs.Raw() & (0xfffULL << 21)) << 11;
return EncodedAttrs;
}
return Bits & A.Raw();
}
bool Attributes::Builder::hasAlignmentAttr() const {
- return Bits & Attribute::Alignment_i;
+ return Bits & AttributesImpl::getAttrMask(Attributes::Alignment);
}
uint64_t Attributes::Builder::getAlignment() const {
if (!hasAlignmentAttr())
return 0;
- return 1U << (((Bits & Attribute::Alignment_i) >> 16) - 1);
+ return 1U <<
+ (((Bits & AttributesImpl::getAttrMask(Attributes::Alignment)) >> 16) - 1);
}
//===----------------------------------------------------------------------===//
}
uint64_t AttributesImpl::getAlignment() const {
- return Bits & Attribute::Alignment_i;
+ return Bits & getAttrMask(Attributes::Alignment);
}
uint64_t AttributesImpl::getStackAlignment() const {
- return Bits & Attribute::StackAlignment_i;
+ return Bits & getAttrMask(Attributes::StackAlignment);
}
bool AttributesImpl::isEmptyOrSingleton() const {