mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-11 13:37:07 +00:00
MC/Target: Remove HasScatteredSymbols target hook variable, which has been
superceded and was effectively dead. llvm-svn: 122024
This commit is contained in:
parent
0d8fdf42c7
commit
6d4a3e98f3
@ -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 {
|
||||||
|
@ -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.
|
||||||
|
|
||||||
|
@ -11,8 +11,7 @@
|
|||||||
using namespace llvm;
|
using namespace llvm;
|
||||||
|
|
||||||
TargetAsmBackend::TargetAsmBackend()
|
TargetAsmBackend::TargetAsmBackend()
|
||||||
: HasReliableSymbolDifference(false),
|
: HasReliableSymbolDifference(false)
|
||||||
HasScatteredSymbols(false)
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
|
Loading…
Reference in New Issue
Block a user