mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-07-05 13:29:22 +00:00
Use a 32 bit field for the symbol index.
Even 64 ELF uses a 32 bit field to refer to symbols. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238704 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
481f35f113
commit
2e20fdbfcb
@ -66,7 +66,7 @@ class MCSymbol {
|
||||
mutable bool HasData : 1;
|
||||
|
||||
/// Index field, for use by the object file implementation.
|
||||
mutable uint64_t Index : 60;
|
||||
mutable uint32_t Index = 0;
|
||||
|
||||
/// An expression describing how to calculate the size of a symbol. If a
|
||||
/// symbol has no size this field will be NULL.
|
||||
@ -99,7 +99,7 @@ private: // MCContext creates and uniques these.
|
||||
friend class MCContext;
|
||||
MCSymbol(const StringMapEntry<bool> *Name, bool isTemporary)
|
||||
: Name(Name), Section(nullptr), Value(nullptr), IsTemporary(isTemporary),
|
||||
IsRedefinable(false), IsUsed(false), HasData(false), Index(0) {
|
||||
IsRedefinable(false), IsUsed(false), HasData(false) {
|
||||
Offset = 0;
|
||||
}
|
||||
|
||||
@ -200,15 +200,14 @@ public:
|
||||
/// @}
|
||||
|
||||
/// Get the (implementation defined) index.
|
||||
uint64_t getIndex() const {
|
||||
uint32_t getIndex() const {
|
||||
assert(HasData && "Uninitialized symbol data");
|
||||
return Index;
|
||||
}
|
||||
|
||||
/// Set the (implementation defined) index.
|
||||
void setIndex(uint64_t Value) const {
|
||||
void setIndex(uint32_t Value) const {
|
||||
assert(HasData && "Uninitialized symbol data");
|
||||
assert(!(Value >> 60) && "Not enough bits for value");
|
||||
Index = Value;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user