mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-04 21:30:49 +00:00
s/AttributesImpl/AttributeImpl/g This is going to apply to Attribute, not Attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170631 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
99d8e76d44
commit
f6670729aa
@ -23,7 +23,7 @@
|
|||||||
namespace llvm {
|
namespace llvm {
|
||||||
|
|
||||||
class AttrBuilder;
|
class AttrBuilder;
|
||||||
class AttributesImpl;
|
class AttributeImpl;
|
||||||
class LLVMContext;
|
class LLVMContext;
|
||||||
class Type;
|
class Type;
|
||||||
|
|
||||||
@ -57,7 +57,7 @@ public:
|
|||||||
AddressSafety, ///< Address safety checking is on.
|
AddressSafety, ///< Address safety checking is on.
|
||||||
Alignment, ///< Alignment of parameter (5 bits)
|
Alignment, ///< Alignment of parameter (5 bits)
|
||||||
///< stored as log2 of alignment with +1 bias
|
///< stored as log2 of alignment with +1 bias
|
||||||
///< 0 means unaligned different from align 1
|
///< 0 means unaligned (different from align(1))
|
||||||
AlwaysInline, ///< inline=always
|
AlwaysInline, ///< inline=always
|
||||||
ByVal, ///< Pass structure by value
|
ByVal, ///< Pass structure by value
|
||||||
InlineHint, ///< Source said inlining was desirable
|
InlineHint, ///< Source said inlining was desirable
|
||||||
@ -82,7 +82,7 @@ public:
|
|||||||
StackAlignment, ///< Alignment of stack for function (3 bits)
|
StackAlignment, ///< Alignment of stack for function (3 bits)
|
||||||
///< stored as log2 of alignment with +1 bias 0
|
///< stored as log2 of alignment with +1 bias 0
|
||||||
///< means unaligned (different from
|
///< means unaligned (different from
|
||||||
///< alignstack={1))
|
///< alignstack=(1))
|
||||||
StackProtect, ///< Stack protection.
|
StackProtect, ///< Stack protection.
|
||||||
StackProtectReq, ///< Stack protection required.
|
StackProtectReq, ///< Stack protection required.
|
||||||
StructRet, ///< Hidden pointer to structure to return
|
StructRet, ///< Hidden pointer to structure to return
|
||||||
@ -90,8 +90,8 @@ public:
|
|||||||
ZExt ///< Zero extended before/after call
|
ZExt ///< Zero extended before/after call
|
||||||
};
|
};
|
||||||
private:
|
private:
|
||||||
AttributesImpl *Attrs;
|
AttributeImpl *Attrs;
|
||||||
Attribute(AttributesImpl *A) : Attrs(A) {}
|
Attribute(AttributeImpl *A) : Attrs(A) {}
|
||||||
public:
|
public:
|
||||||
Attribute() : Attrs(0) {}
|
Attribute() : Attrs(0) {}
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
//===-- AttributesImpl.h - Attribute Internals -----------------*- C++ -*-===//
|
//===-- AttributeImpl.h - Attribute Internals -------------------*- C++ -*-===//
|
||||||
//
|
//
|
||||||
// The LLVM Compiler Infrastructure
|
// The LLVM Compiler Infrastructure
|
||||||
//
|
//
|
||||||
@ -22,10 +22,10 @@ namespace llvm {
|
|||||||
|
|
||||||
class LLVMContext;
|
class LLVMContext;
|
||||||
|
|
||||||
class AttributesImpl : public FoldingSetNode {
|
class AttributeImpl : public FoldingSetNode {
|
||||||
uint64_t Bits; // FIXME: We will be expanding this.
|
uint64_t Bits; // FIXME: We will be expanding this.
|
||||||
public:
|
public:
|
||||||
AttributesImpl(uint64_t bits) : Bits(bits) {}
|
AttributeImpl(uint64_t bits) : Bits(bits) {}
|
||||||
|
|
||||||
bool hasAttribute(uint64_t A) const;
|
bool hasAttribute(uint64_t A) const;
|
||||||
|
|
@ -13,7 +13,7 @@
|
|||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
|
||||||
#include "llvm/Attributes.h"
|
#include "llvm/Attributes.h"
|
||||||
#include "AttributesImpl.h"
|
#include "AttributeImpl.h"
|
||||||
#include "LLVMContextImpl.h"
|
#include "LLVMContextImpl.h"
|
||||||
#include "llvm/ADT/FoldingSet.h"
|
#include "llvm/ADT/FoldingSet.h"
|
||||||
#include "llvm/ADT/StringExtras.h"
|
#include "llvm/ADT/StringExtras.h"
|
||||||
@ -48,12 +48,12 @@ Attribute Attribute::get(LLVMContext &Context, AttrBuilder &B) {
|
|||||||
ID.AddInteger(B.Raw());
|
ID.AddInteger(B.Raw());
|
||||||
|
|
||||||
void *InsertPoint;
|
void *InsertPoint;
|
||||||
AttributesImpl *PA = pImpl->AttrsSet.FindNodeOrInsertPos(ID, InsertPoint);
|
AttributeImpl *PA = pImpl->AttrsSet.FindNodeOrInsertPos(ID, InsertPoint);
|
||||||
|
|
||||||
if (!PA) {
|
if (!PA) {
|
||||||
// If we didn't find any existing attributes of the same shape then create a
|
// If we didn't find any existing attributes of the same shape then create a
|
||||||
// new one and insert it.
|
// new one and insert it.
|
||||||
PA = new AttributesImpl(B.Raw());
|
PA = new AttributeImpl(B.Raw());
|
||||||
pImpl->AttrsSet.InsertNode(PA, InsertPoint);
|
pImpl->AttrsSet.InsertNode(PA, InsertPoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -224,7 +224,7 @@ std::string Attribute::getAsString() const {
|
|||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
|
||||||
AttrBuilder &AttrBuilder::addAttribute(Attribute::AttrVal Val){
|
AttrBuilder &AttrBuilder::addAttribute(Attribute::AttrVal Val){
|
||||||
Bits |= AttributesImpl::getAttrMask(Val);
|
Bits |= AttributeImpl::getAttrMask(Val);
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -250,7 +250,7 @@ AttrBuilder &AttrBuilder::addStackAlignmentAttr(unsigned Align){
|
|||||||
}
|
}
|
||||||
|
|
||||||
AttrBuilder &AttrBuilder::removeAttribute(Attribute::AttrVal Val) {
|
AttrBuilder &AttrBuilder::removeAttribute(Attribute::AttrVal Val) {
|
||||||
Bits &= ~AttributesImpl::getAttrMask(Val);
|
Bits &= ~AttributeImpl::getAttrMask(Val);
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -265,7 +265,7 @@ AttrBuilder &AttrBuilder::removeAttributes(const Attribute &A){
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool AttrBuilder::hasAttribute(Attribute::AttrVal A) const {
|
bool AttrBuilder::hasAttribute(Attribute::AttrVal A) const {
|
||||||
return Bits & AttributesImpl::getAttrMask(A);
|
return Bits & AttributeImpl::getAttrMask(A);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool AttrBuilder::hasAttributes() const {
|
bool AttrBuilder::hasAttributes() const {
|
||||||
@ -275,28 +275,28 @@ bool AttrBuilder::hasAttributes(const Attribute &A) const {
|
|||||||
return Bits & A.Raw();
|
return Bits & A.Raw();
|
||||||
}
|
}
|
||||||
bool AttrBuilder::hasAlignmentAttr() const {
|
bool AttrBuilder::hasAlignmentAttr() const {
|
||||||
return Bits & AttributesImpl::getAttrMask(Attribute::Alignment);
|
return Bits & AttributeImpl::getAttrMask(Attribute::Alignment);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t AttrBuilder::getAlignment() const {
|
uint64_t AttrBuilder::getAlignment() const {
|
||||||
if (!hasAlignmentAttr())
|
if (!hasAlignmentAttr())
|
||||||
return 0;
|
return 0;
|
||||||
return 1ULL <<
|
return 1ULL <<
|
||||||
(((Bits & AttributesImpl::getAttrMask(Attribute::Alignment)) >> 16) - 1);
|
(((Bits & AttributeImpl::getAttrMask(Attribute::Alignment)) >> 16) - 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t AttrBuilder::getStackAlignment() const {
|
uint64_t AttrBuilder::getStackAlignment() const {
|
||||||
if (!hasAlignmentAttr())
|
if (!hasAlignmentAttr())
|
||||||
return 0;
|
return 0;
|
||||||
return 1ULL <<
|
return 1ULL <<
|
||||||
(((Bits & AttributesImpl::getAttrMask(Attribute::StackAlignment))>>26)-1);
|
(((Bits & AttributeImpl::getAttrMask(Attribute::StackAlignment))>>26)-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
// AttributeImpl Definition
|
// AttributeImpl Definition
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
|
||||||
uint64_t AttributesImpl::getAttrMask(uint64_t Val) {
|
uint64_t AttributeImpl::getAttrMask(uint64_t Val) {
|
||||||
switch (Val) {
|
switch (Val) {
|
||||||
case Attribute::None: return 0;
|
case Attribute::None: return 0;
|
||||||
case Attribute::ZExt: return 1 << 0;
|
case Attribute::ZExt: return 1 << 0;
|
||||||
@ -331,23 +331,23 @@ uint64_t AttributesImpl::getAttrMask(uint64_t Val) {
|
|||||||
llvm_unreachable("Unsupported attribute type");
|
llvm_unreachable("Unsupported attribute type");
|
||||||
}
|
}
|
||||||
|
|
||||||
bool AttributesImpl::hasAttribute(uint64_t A) const {
|
bool AttributeImpl::hasAttribute(uint64_t A) const {
|
||||||
return (Bits & getAttrMask(A)) != 0;
|
return (Bits & getAttrMask(A)) != 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool AttributesImpl::hasAttributes() const {
|
bool AttributeImpl::hasAttributes() const {
|
||||||
return Bits != 0;
|
return Bits != 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool AttributesImpl::hasAttributes(const Attribute &A) const {
|
bool AttributeImpl::hasAttributes(const Attribute &A) const {
|
||||||
return Bits & A.Raw(); // FIXME: Raw() won't work here in the future.
|
return Bits & A.Raw(); // FIXME: Raw() won't work here in the future.
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t AttributesImpl::getAlignment() const {
|
uint64_t AttributeImpl::getAlignment() const {
|
||||||
return Bits & getAttrMask(Attribute::Alignment);
|
return Bits & getAttrMask(Attribute::Alignment);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t AttributesImpl::getStackAlignment() const {
|
uint64_t AttributeImpl::getStackAlignment() const {
|
||||||
return Bits & getAttrMask(Attribute::StackAlignment);
|
return Bits & getAttrMask(Attribute::StackAlignment);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -96,9 +96,9 @@ LLVMContextImpl::~LLVMContextImpl() {
|
|||||||
CDSConstants.clear();
|
CDSConstants.clear();
|
||||||
|
|
||||||
// Destroy attributes.
|
// Destroy attributes.
|
||||||
for (FoldingSetIterator<AttributesImpl> I = AttrsSet.begin(),
|
for (FoldingSetIterator<AttributeImpl> I = AttrsSet.begin(),
|
||||||
E = AttrsSet.end(); I != E; ) {
|
E = AttrsSet.end(); I != E; ) {
|
||||||
FoldingSetIterator<AttributesImpl> Elem = I++;
|
FoldingSetIterator<AttributeImpl> Elem = I++;
|
||||||
delete &*Elem;
|
delete &*Elem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
#ifndef LLVM_LLVMCONTEXT_IMPL_H
|
#ifndef LLVM_LLVMCONTEXT_IMPL_H
|
||||||
#define LLVM_LLVMCONTEXT_IMPL_H
|
#define LLVM_LLVMCONTEXT_IMPL_H
|
||||||
|
|
||||||
#include "AttributesImpl.h"
|
#include "AttributeImpl.h"
|
||||||
#include "ConstantsContext.h"
|
#include "ConstantsContext.h"
|
||||||
#include "LeaksContext.h"
|
#include "LeaksContext.h"
|
||||||
#include "llvm/ADT/APFloat.h"
|
#include "llvm/ADT/APFloat.h"
|
||||||
@ -247,7 +247,7 @@ public:
|
|||||||
DenseMapAPFloatKeyInfo> FPMapTy;
|
DenseMapAPFloatKeyInfo> FPMapTy;
|
||||||
FPMapTy FPConstants;
|
FPMapTy FPConstants;
|
||||||
|
|
||||||
FoldingSet<AttributesImpl> AttrsSet;
|
FoldingSet<AttributeImpl> AttrsSet;
|
||||||
FoldingSet<AttributeSetImpl> AttrsLists;
|
FoldingSet<AttributeSetImpl> AttrsLists;
|
||||||
|
|
||||||
StringMap<Value*> MDStringCache;
|
StringMap<Value*> MDStringCache;
|
||||||
|
Loading…
Reference in New Issue
Block a user