MC/Target: Remove HasScatteredSymbols target hook variable, which has been

superceded and was effectively dead.

llvm-svn: 122024
This commit is contained in:
Daniel Dunbar 2010-12-17 02:06:08 +00:00
parent 0d8fdf42c7
commit 6d4a3e98f3
7 changed files with 6 additions and 35 deletions

View File

@ -33,7 +33,6 @@ protected: // Can only create subclasses.
TargetAsmBackend(); TargetAsmBackend();
unsigned HasReliableSymbolDifference : 1; unsigned HasReliableSymbolDifference : 1;
unsigned HasScatteredSymbols : 1;
public: public:
virtual ~TargetAsmBackend(); virtual ~TargetAsmBackend();
@ -58,16 +57,6 @@ public:
return HasReliableSymbolDifference; return HasReliableSymbolDifference;
} }
/// hasScatteredSymbols - Check whether this target supports scattered
/// symbols. If so, the assembler should assume that atoms can be scattered by
/// the linker. In particular, this means that the offsets between symbols
/// which are in distinct atoms is not known at link time, and the assembler
/// must generate fixups and relocations appropriately.
///
/// Note that the assembler currently does not reason about atoms, instead it
/// assumes all temporary symbols reside in the "current atom".
bool hasScatteredSymbols() const { return HasScatteredSymbols; }
/// doesSectionRequireSymbols - Check whether the given section requires that /// doesSectionRequireSymbols - Check whether the given section requires that
/// all symbols (even temporaries) have symbol table entries. /// all symbols (even temporaries) have symbol table entries.
virtual bool doesSectionRequireSymbols(const MCSection &Section) const { virtual bool doesSectionRequireSymbols(const MCSection &Section) const {

View File

@ -1123,15 +1123,10 @@ public:
UndefinedSymbolData); UndefinedSymbolData);
} }
bool IsFixupFullyResolved(const MCAssembler &Asm, bool IsFixupFullyResolved(const MCAssembler &Asm,
const MCValue Target, const MCValue Target,
bool IsPCRel, bool IsPCRel,
const MCFragment *DF) const { const MCFragment *DF) const {
// If we aren't using scattered symbols, the fixup is fully resolved.
if (!Asm.getBackend().hasScatteredSymbols())
return true;
// Otherwise, determine whether this value is actually resolved; scattering // Otherwise, determine whether this value is actually resolved; scattering
// may cause atoms to move. // may cause atoms to move.

View File

@ -11,8 +11,7 @@
using namespace llvm; using namespace llvm;
TargetAsmBackend::TargetAsmBackend() TargetAsmBackend::TargetAsmBackend()
: HasReliableSymbolDifference(false), : HasReliableSymbolDifference(false)
HasScatteredSymbols(false)
{ {
} }

View File

@ -336,9 +336,7 @@ class ELFARMAsmBackend : public ARMAsmBackend {
public: public:
Triple::OSType OSType; Triple::OSType OSType;
ELFARMAsmBackend(const Target &T, Triple::OSType _OSType) ELFARMAsmBackend(const Target &T, Triple::OSType _OSType)
: ARMAsmBackend(T), OSType(_OSType) { : ARMAsmBackend(T), OSType(_OSType) { }
HasScatteredSymbols = true;
}
virtual const MCObjectFormat &getObjectFormat() const { virtual const MCObjectFormat &getObjectFormat() const {
return Format; return Format;
@ -376,9 +374,7 @@ void ELFARMAsmBackend::ApplyFixup(const MCFixup &Fixup, char *Data,
class DarwinARMAsmBackend : public ARMAsmBackend { class DarwinARMAsmBackend : public ARMAsmBackend {
MCMachOObjectFormat Format; MCMachOObjectFormat Format;
public: public:
DarwinARMAsmBackend(const Target &T) : ARMAsmBackend(T) { DarwinARMAsmBackend(const Target &T) : ARMAsmBackend(T) { }
HasScatteredSymbols = true;
}
virtual const MCObjectFormat &getObjectFormat() const { virtual const MCObjectFormat &getObjectFormat() const {
return Format; return Format;

View File

@ -105,9 +105,7 @@ class ELFMBlazeAsmBackend : public MBlazeAsmBackend {
public: public:
Triple::OSType OSType; Triple::OSType OSType;
ELFMBlazeAsmBackend(const Target &T, Triple::OSType _OSType) ELFMBlazeAsmBackend(const Target &T, Triple::OSType _OSType)
: MBlazeAsmBackend(T), OSType(_OSType) { : MBlazeAsmBackend(T), OSType(_OSType) { }
HasScatteredSymbols = true;
}
virtual const MCObjectFormat &getObjectFormat() const { virtual const MCObjectFormat &getObjectFormat() const {
return Format; return Format;

View File

@ -84,9 +84,7 @@ namespace {
class DarwinPPCAsmBackend : public PPCAsmBackend { class DarwinPPCAsmBackend : public PPCAsmBackend {
MCMachOObjectFormat Format; MCMachOObjectFormat Format;
public: public:
DarwinPPCAsmBackend(const Target &T) : PPCAsmBackend(T) { DarwinPPCAsmBackend(const Target &T) : PPCAsmBackend(T) { }
HasScatteredSymbols = true;
}
virtual const MCObjectFormat &getObjectFormat() const { virtual const MCObjectFormat &getObjectFormat() const {
return Format; return Format;

View File

@ -289,7 +289,6 @@ public:
Triple::OSType OSType; Triple::OSType OSType;
ELFX86AsmBackend(const Target &T, Triple::OSType _OSType) ELFX86AsmBackend(const Target &T, Triple::OSType _OSType)
: X86AsmBackend(T), OSType(_OSType) { : X86AsmBackend(T), OSType(_OSType) {
HasScatteredSymbols = true;
HasReliableSymbolDifference = true; HasReliableSymbolDifference = true;
} }
@ -337,7 +336,6 @@ public:
WindowsX86AsmBackend(const Target &T, bool is64Bit) WindowsX86AsmBackend(const Target &T, bool is64Bit)
: X86AsmBackend(T) : X86AsmBackend(T)
, Is64Bit(is64Bit) { , Is64Bit(is64Bit) {
HasScatteredSymbols = true;
} }
virtual const MCObjectFormat &getObjectFormat() const { virtual const MCObjectFormat &getObjectFormat() const {
@ -354,9 +352,7 @@ class DarwinX86AsmBackend : public X86AsmBackend {
public: public:
DarwinX86AsmBackend(const Target &T) DarwinX86AsmBackend(const Target &T)
: X86AsmBackend(T) { : X86AsmBackend(T) { }
HasScatteredSymbols = true;
}
virtual const MCObjectFormat &getObjectFormat() const { virtual const MCObjectFormat &getObjectFormat() const {
return Format; return Format;