mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-17 05:29:24 +00:00
Eliminate the UID field in the Type class, bringing it down to 28 bytes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14709 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
51662c7beb
commit
57cd1ff463
@ -83,7 +83,6 @@ struct Type {
|
||||
private:
|
||||
TypeID ID : 8; // The current base type of this type.
|
||||
bool Abstract; // True if type contains an OpaqueType
|
||||
unsigned UID; // The unique ID number for this class
|
||||
|
||||
/// RefCount - This counts the number of PATypeHolders that are pointing to
|
||||
/// this type. When this number falls to zero, if the type is abstract and
|
||||
@ -97,7 +96,6 @@ protected:
|
||||
Type(const std::string& Name, TypeID id);
|
||||
virtual ~Type() {}
|
||||
|
||||
|
||||
/// Types can become nonabstract later, if they are refined.
|
||||
///
|
||||
inline void setAbstract(bool Val) { Abstract = Val; }
|
||||
@ -143,13 +141,6 @@ public:
|
||||
///
|
||||
inline TypeID getTypeID() const { return ID; }
|
||||
|
||||
/// getUniqueID - Returns the UID of the type. This can be thought of as a
|
||||
/// small integer version of the pointer to the type class. Two types that
|
||||
/// are structurally different have different UIDs. This can be used for
|
||||
/// indexing types into an array.
|
||||
///
|
||||
inline unsigned getUniqueID() const { return UID; }
|
||||
|
||||
/// getDescription - Return the string representation of the type...
|
||||
const std::string &getDescription() const;
|
||||
|
||||
@ -264,9 +255,8 @@ public:
|
||||
// instances of Type.
|
||||
//
|
||||
|
||||
/// getPrimitiveType/getUniqueIDType - Return a type based on an identifier.
|
||||
/// getPrimitiveType - Return a type based on an identifier.
|
||||
static const Type *getPrimitiveType(TypeID IDNumber);
|
||||
static const Type *getUniqueIDType(unsigned UID);
|
||||
|
||||
//===--------------------------------------------------------------------===//
|
||||
// These are the builtin types that are always available...
|
||||
|
Loading…
Reference in New Issue
Block a user