mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-11-29 00:21:14 +00:00
Rename HasData to IsRegistered.
There is no MCSectionData, so the old name is now meaningless. Also remove some asserts/checks that were there just because the information they used was in MCSectionData. llvm-svn: 238708
This commit is contained in:
parent
cc91cc1f3a
commit
2641014812
@ -911,11 +911,11 @@ public:
|
||||
}
|
||||
|
||||
void registerSymbol(const MCSymbol &Symbol, bool *Created = nullptr) {
|
||||
bool New = !Symbol.hasData();
|
||||
bool New = !Symbol.isRegistered();
|
||||
if (Created)
|
||||
*Created = New;
|
||||
if (New) {
|
||||
Symbol.initializeData();
|
||||
Symbol.setIsRegistered(true);
|
||||
Symbols.push_back(&Symbol);
|
||||
}
|
||||
}
|
||||
|
@ -63,7 +63,7 @@ class MCSymbol {
|
||||
/// IsUsed - True if this symbol has been used.
|
||||
mutable unsigned IsUsed : 1;
|
||||
|
||||
mutable bool HasData : 1;
|
||||
mutable bool IsRegistered : 1;
|
||||
|
||||
/// Index field, for use by the object file implementation.
|
||||
mutable uint32_t Index = 0;
|
||||
@ -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) {
|
||||
IsRedefinable(false), IsUsed(false), IsRegistered(false) {
|
||||
Offset = 0;
|
||||
}
|
||||
|
||||
@ -115,14 +115,8 @@ public:
|
||||
/// getName - Get the symbol name.
|
||||
StringRef getName() const { return Name ? Name->first() : ""; }
|
||||
|
||||
bool hasData() const { return HasData; }
|
||||
|
||||
/// Initialize symbol data.
|
||||
///
|
||||
/// Nothing really to do here, but this is enables an assertion that \a
|
||||
/// MCAssembler::getOrCreateSymbolData() has actually been called before
|
||||
/// anyone calls \a getData().
|
||||
void initializeData() const { HasData = true; }
|
||||
bool isRegistered() const { return IsRegistered; }
|
||||
void setIsRegistered(bool Value) const { IsRegistered = Value; }
|
||||
|
||||
/// \name Accessors
|
||||
/// @{
|
||||
@ -201,13 +195,11 @@ public:
|
||||
|
||||
/// Get the (implementation defined) index.
|
||||
uint32_t getIndex() const {
|
||||
assert(HasData && "Uninitialized symbol data");
|
||||
return Index;
|
||||
}
|
||||
|
||||
/// Set the (implementation defined) index.
|
||||
void setIndex(uint32_t Value) const {
|
||||
assert(HasData && "Uninitialized symbol data");
|
||||
Index = Value;
|
||||
}
|
||||
|
||||
|
@ -57,10 +57,6 @@ void MCObjectStreamer::flushPendingLabels(MCFragment *F, uint64_t FOffset) {
|
||||
bool MCObjectStreamer::emitAbsoluteSymbolDiff(const MCSymbol *Hi,
|
||||
const MCSymbol *Lo,
|
||||
unsigned Size) {
|
||||
// Must have symbol data.
|
||||
if (!Hi->hasData() || !Lo->hasData())
|
||||
return false;
|
||||
|
||||
// Must both be assigned to the same (valid) fragment.
|
||||
if (!Hi->getFragment() || Hi->getFragment() != Lo->getFragment())
|
||||
return false;
|
||||
|
@ -706,7 +706,7 @@ void WinCOFFObjectWriter::RecordRelocation(
|
||||
|
||||
const MCSymbol &Symbol = Target.getSymA()->getSymbol();
|
||||
const MCSymbol &A = Symbol;
|
||||
if (!A.hasData())
|
||||
if (!A.isRegistered())
|
||||
Asm.getContext().reportFatalError(Fixup.getLoc(),
|
||||
Twine("symbol '") + A.getName() +
|
||||
"' can not be undefined");
|
||||
|
Loading…
Reference in New Issue
Block a user