mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-10-04 19:17:12 +00:00
Add some comparison operators to compare the Attribute object with the AttrKind value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171294 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -120,6 +120,10 @@ public:
|
|||||||
/// alignment value.
|
/// alignment value.
|
||||||
unsigned getStackAlignment() const;
|
unsigned getStackAlignment() const;
|
||||||
|
|
||||||
|
bool operator==(AttrKind K) const;
|
||||||
|
bool operator!=(AttrKind K) const;
|
||||||
|
|
||||||
|
// FIXME: Remove these 'operator' methods.
|
||||||
bool operator==(const Attribute &A) const {
|
bool operator==(const Attribute &A) const {
|
||||||
return pImpl == A.pImpl;
|
return pImpl == A.pImpl;
|
||||||
}
|
}
|
||||||
@@ -141,7 +145,7 @@ public:
|
|||||||
/// that have been decoded from the given integer. This function must stay in
|
/// that have been decoded from the given integer. This function must stay in
|
||||||
/// sync with 'encodeLLVMAttributesForBitcode'.
|
/// sync with 'encodeLLVMAttributesForBitcode'.
|
||||||
static Attribute decodeLLVMAttributesForBitcode(LLVMContext &C,
|
static Attribute decodeLLVMAttributesForBitcode(LLVMContext &C,
|
||||||
uint64_t EncodedAttrs);
|
uint64_t EncodedAttrs);
|
||||||
|
|
||||||
/// \brief The Attribute is converted to a string of equivalent mnemonic. This
|
/// \brief The Attribute is converted to a string of equivalent mnemonic. This
|
||||||
/// is, presumably, for writing out the mnemonics for the assembly writer.
|
/// is, presumably, for writing out the mnemonics for the assembly writer.
|
||||||
|
@@ -88,6 +88,14 @@ unsigned Attribute::getStackAlignment() const {
|
|||||||
return 1U << ((pImpl->getStackAlignment() >> 26) - 1);
|
return 1U << ((pImpl->getStackAlignment() >> 26) - 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool Attribute::operator==(AttrKind K) const {
|
||||||
|
return pImpl && pImpl->contains(K);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool Attribute::operator!=(AttrKind K) const {
|
||||||
|
return !(pImpl && pImpl->contains(K));
|
||||||
|
}
|
||||||
|
|
||||||
uint64_t Attribute::getBitMask() const {
|
uint64_t Attribute::getBitMask() const {
|
||||||
return pImpl ? pImpl->getBitMask() : 0;
|
return pImpl ? pImpl->getBitMask() : 0;
|
||||||
}
|
}
|
||||||
@@ -473,8 +481,8 @@ uint64_t AttributeSet::getBitMask(unsigned Index) const {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// getAttributes - The attributes for the specified index are returned.
|
/// getAttributes - The attributes for the specified index are returned.
|
||||||
/// Attribute for the result are denoted with Idx = 0. Function notes are
|
/// Attributes for the result are denoted with Idx = 0. Function attributes are
|
||||||
/// denoted with idx = ~0.
|
/// denoted with Idx = ~0.
|
||||||
Attribute AttributeSet::getAttributes(unsigned Idx) const {
|
Attribute AttributeSet::getAttributes(unsigned Idx) const {
|
||||||
if (AttrList == 0) return Attribute();
|
if (AttrList == 0) return Attribute();
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user