mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-08 19:25:47 +00:00
remove the dead PreferredEHDataFormat TAI hook: its now dead
even considering #if 0 code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77856 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -2080,8 +2080,8 @@ SparcTargetAsmInfo::SparcTargetAsmInfo(const SparcTargetMachine &TM) {
|
|||||||
|
|
||||||
<p>
|
<p>
|
||||||
The X86 assembly printer implementation (<tt>X86TargetAsmInfo</tt>) is an
|
The X86 assembly printer implementation (<tt>X86TargetAsmInfo</tt>) is an
|
||||||
example where the target specific <tt>TargetAsmInfo</tt> class uses overridden
|
example where the target specific <tt>TargetAsmInfo</tt> class uses an
|
||||||
methods: <tt>ExpandInlineAsm</tt> and <tt>PreferredEHDataFormat</tt>.
|
overridden methods: <tt>ExpandInlineAsm</tt>.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
@@ -383,11 +383,6 @@ namespace llvm {
|
|||||||
/// length.
|
/// length.
|
||||||
virtual unsigned getInlineAsmLength(const char *Str) const;
|
virtual unsigned getInlineAsmLength(const char *Str) const;
|
||||||
|
|
||||||
/// PreferredEHDataFormat - This hook allows the target to select data
|
|
||||||
/// format used for encoding pointers in exception handling data.
|
|
||||||
virtual unsigned PreferredEHDataFormat() const;
|
|
||||||
|
|
||||||
|
|
||||||
/// getSLEB128Size - Compute the number of bytes required for a signed
|
/// getSLEB128Size - Compute the number of bytes required for a signed
|
||||||
/// leb128 value.
|
/// leb128 value.
|
||||||
static unsigned getSLEB128Size(int Value);
|
static unsigned getSLEB128Size(int Value);
|
||||||
|
@@ -140,10 +140,6 @@ unsigned TargetAsmInfo::getInlineAsmLength(const char *Str) const {
|
|||||||
return Length;
|
return Length;
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned TargetAsmInfo::PreferredEHDataFormat() const {
|
|
||||||
return dwarf::DW_EH_PE_absptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned TargetAsmInfo::getULEB128Size(unsigned Value) {
|
unsigned TargetAsmInfo::getULEB128Size(unsigned Value) {
|
||||||
unsigned Size = 0;
|
unsigned Size = 0;
|
||||||
do {
|
do {
|
||||||
|
@@ -86,14 +86,6 @@ X86DarwinTargetAsmInfo::X86DarwinTargetAsmInfo(const X86TargetMachine &TM):
|
|||||||
".section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support";
|
".section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support";
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned X86DarwinTargetAsmInfo::PreferredEHDataFormat() const {
|
|
||||||
const X86Subtarget *Subtarget = &TM.getSubtarget<X86Subtarget>();
|
|
||||||
if (Subtarget->getDarwinVers() > 9)
|
|
||||||
return DW_EH_PE_pcrel | DW_EH_PE_indirect | DW_EH_PE_sdata4;
|
|
||||||
|
|
||||||
return DW_EH_PE_absptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
const char *
|
const char *
|
||||||
X86DarwinTargetAsmInfo::getEHGlobalPrefix() const {
|
X86DarwinTargetAsmInfo::getEHGlobalPrefix() const {
|
||||||
const X86Subtarget* Subtarget = &TM.getSubtarget<X86Subtarget>();
|
const X86Subtarget* Subtarget = &TM.getSubtarget<X86Subtarget>();
|
||||||
@@ -138,70 +130,6 @@ X86ELFTargetAsmInfo::X86ELFTargetAsmInfo(const X86TargetMachine &TM) :
|
|||||||
NonexecutableStackDirective = "\t.section\t.note.GNU-stack,\"\",@progbits";
|
NonexecutableStackDirective = "\t.section\t.note.GNU-stack,\"\",@progbits";
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned
|
|
||||||
X86ELFTargetAsmInfo::PreferredEHDataFormat() const {
|
|
||||||
CodeModel::Model CM = TM.getCodeModel();
|
|
||||||
bool is64Bit = TM.getSubtarget<X86Subtarget>().is64Bit();
|
|
||||||
|
|
||||||
if (TM.getRelocationModel() == Reloc::PIC_) {
|
|
||||||
unsigned Format = 0;
|
|
||||||
|
|
||||||
if (!is64Bit)
|
|
||||||
// 32 bit targets always encode pointers as 4 bytes
|
|
||||||
Format = DW_EH_PE_sdata4;
|
|
||||||
else {
|
|
||||||
// 64 bit targets encode pointers in 4 bytes iff:
|
|
||||||
// - code model is small OR
|
|
||||||
// - code model is medium and we're emitting externally visible symbols
|
|
||||||
// or any code symbols
|
|
||||||
if (CM == CodeModel::Small || CM == CodeModel::Medium)
|
|
||||||
Format = DW_EH_PE_sdata4;
|
|
||||||
else
|
|
||||||
Format = DW_EH_PE_sdata8;
|
|
||||||
}
|
|
||||||
|
|
||||||
Format |= DW_EH_PE_indirect;
|
|
||||||
return (Format | DW_EH_PE_pcrel);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (is64Bit && CM == CodeModel::Small)
|
|
||||||
return DW_EH_PE_udata4;
|
|
||||||
return DW_EH_PE_absptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
unsigned
|
|
||||||
X86COFFTargetAsmInfo::PreferredEHDataFormat() const {
|
|
||||||
CodeModel::Model CM = TM.getCodeModel();
|
|
||||||
bool is64Bit = TM.getSubtarget<X86Subtarget>().is64Bit();
|
|
||||||
|
|
||||||
if (TM.getRelocationModel() == Reloc::PIC_) {
|
|
||||||
unsigned Format = 0;
|
|
||||||
|
|
||||||
if (!is64Bit)
|
|
||||||
// 32 bit targets always encode pointers as 4 bytes
|
|
||||||
Format = DW_EH_PE_sdata4;
|
|
||||||
else {
|
|
||||||
// 64 bit targets encode pointers in 4 bytes iff:
|
|
||||||
// - code model is small OR
|
|
||||||
// - code model is medium and we're emitting externally visible symbols
|
|
||||||
// or any code symbols
|
|
||||||
if (CM == CodeModel::Small || CM == CodeModel::Medium)
|
|
||||||
Format = DW_EH_PE_sdata4;
|
|
||||||
else
|
|
||||||
Format = DW_EH_PE_sdata8;
|
|
||||||
}
|
|
||||||
|
|
||||||
Format |= DW_EH_PE_indirect;
|
|
||||||
return (Format | DW_EH_PE_pcrel);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (is64Bit && CM == CodeModel::Small)
|
|
||||||
return DW_EH_PE_udata4;
|
|
||||||
return DW_EH_PE_absptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
X86WinTargetAsmInfo::X86WinTargetAsmInfo(const X86TargetMachine &TM):
|
X86WinTargetAsmInfo::X86WinTargetAsmInfo(const X86TargetMachine &TM):
|
||||||
X86TargetAsmInfo<TargetAsmInfo>(TM) {
|
X86TargetAsmInfo<TargetAsmInfo>(TM) {
|
||||||
|
@@ -37,21 +37,14 @@ namespace llvm {
|
|||||||
|
|
||||||
struct X86DarwinTargetAsmInfo : public X86TargetAsmInfo<DarwinTargetAsmInfo> {
|
struct X86DarwinTargetAsmInfo : public X86TargetAsmInfo<DarwinTargetAsmInfo> {
|
||||||
explicit X86DarwinTargetAsmInfo(const X86TargetMachine &TM);
|
explicit X86DarwinTargetAsmInfo(const X86TargetMachine &TM);
|
||||||
virtual unsigned PreferredEHDataFormat() const;
|
|
||||||
virtual const char *getEHGlobalPrefix() const;
|
virtual const char *getEHGlobalPrefix() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct X86ELFTargetAsmInfo : public X86TargetAsmInfo<ELFTargetAsmInfo> {
|
struct X86ELFTargetAsmInfo : public X86TargetAsmInfo<ELFTargetAsmInfo> {
|
||||||
explicit X86ELFTargetAsmInfo(const X86TargetMachine &TM);
|
explicit X86ELFTargetAsmInfo(const X86TargetMachine &TM);
|
||||||
virtual unsigned PreferredEHDataFormat() const;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct X86COFFTargetAsmInfo : public X86TargetAsmInfo<COFFTargetAsmInfo> {
|
typedef X86TargetAsmInfo<COFFTargetAsmInfo> X86COFFTargetAsmInfo;
|
||||||
explicit X86COFFTargetAsmInfo(const X86TargetMachine &TM) :
|
|
||||||
X86TargetAsmInfo<COFFTargetAsmInfo>(TM) {}
|
|
||||||
virtual unsigned PreferredEHDataFormat() const;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct X86WinTargetAsmInfo : public X86TargetAsmInfo<TargetAsmInfo> {
|
struct X86WinTargetAsmInfo : public X86TargetAsmInfo<TargetAsmInfo> {
|
||||||
explicit X86WinTargetAsmInfo(const X86TargetMachine &TM);
|
explicit X86WinTargetAsmInfo(const X86TargetMachine &TM);
|
||||||
|
Reference in New Issue
Block a user