Goodbye TargetAsmInfo. This eliminate last bit of CodeGen and Target in llvm-mc.

There is still a bit more refactoring left to do in Targets. But we are now very
close to fixing all the layering issues in MC.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135611 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Evan Cheng
2011-07-20 19:50:42 +00:00
parent 8eda1310db
commit 203576aa0c
28 changed files with 96 additions and 298 deletions
-76
View File
@@ -43,79 +43,3 @@ getCFIPersonalitySymbol(const GlobalValue *GV, Mangler *Mang,
MachineModuleInfo *MMI) const {
return Mang->getSymbol(GV);
}
unsigned X8632_ELFTargetObjectFile::getPersonalityEncoding() const {
if (TM.getRelocationModel() == Reloc::PIC_)
return DW_EH_PE_indirect | DW_EH_PE_pcrel | DW_EH_PE_sdata4;
else
return DW_EH_PE_absptr;
}
unsigned X8632_ELFTargetObjectFile::getLSDAEncoding() const {
if (TM.getRelocationModel() == Reloc::PIC_)
return DW_EH_PE_pcrel | DW_EH_PE_sdata4;
else
return DW_EH_PE_absptr;
}
unsigned X8632_ELFTargetObjectFile::getFDEEncoding(bool FDE) const {
if (TM.getRelocationModel() == Reloc::PIC_)
return DW_EH_PE_pcrel | DW_EH_PE_sdata4;
else
return DW_EH_PE_absptr;
}
unsigned X8632_ELFTargetObjectFile::getTTypeEncoding() const {
if (TM.getRelocationModel() == Reloc::PIC_)
return DW_EH_PE_indirect | DW_EH_PE_pcrel | DW_EH_PE_sdata4;
else
return DW_EH_PE_absptr;
}
unsigned X8664_ELFTargetObjectFile::getPersonalityEncoding() const {
CodeModel::Model Model = TM.getCodeModel();
if (TM.getRelocationModel() == Reloc::PIC_)
return DW_EH_PE_indirect | DW_EH_PE_pcrel | (Model == CodeModel::Small ||
Model == CodeModel::Medium ?
DW_EH_PE_sdata4 : DW_EH_PE_sdata8);
if (Model == CodeModel::Small || Model == CodeModel::Medium)
return DW_EH_PE_udata4;
return DW_EH_PE_absptr;
}
unsigned X8664_ELFTargetObjectFile::getLSDAEncoding() const {
CodeModel::Model Model = TM.getCodeModel();
if (TM.getRelocationModel() == Reloc::PIC_)
return DW_EH_PE_pcrel | (Model == CodeModel::Small ?
DW_EH_PE_sdata4 : DW_EH_PE_sdata8);
if (Model == CodeModel::Small)
return DW_EH_PE_udata4;
return DW_EH_PE_absptr;
}
unsigned X8664_ELFTargetObjectFile::getFDEEncoding(bool CFI) const {
if (CFI)
return DW_EH_PE_pcrel | DW_EH_PE_sdata4;
if (TM.getRelocationModel() == Reloc::PIC_)
return DW_EH_PE_pcrel | DW_EH_PE_sdata4;
return DW_EH_PE_udata4;
}
unsigned X8664_ELFTargetObjectFile::getTTypeEncoding() const {
CodeModel::Model Model = TM.getCodeModel();
if (TM.getRelocationModel() == Reloc::PIC_)
return DW_EH_PE_indirect | DW_EH_PE_pcrel | (Model == CodeModel::Small ||
Model == CodeModel::Medium ?
DW_EH_PE_sdata4 : DW_EH_PE_sdata8);
if (Model == CodeModel::Small)
return DW_EH_PE_udata4;
return DW_EH_PE_absptr;
}