From 1db511cc911be75c18fb8e64a22fc5d25e479b10 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 31 Jul 2009 20:43:26 +0000 Subject: [PATCH] remove the PPCLinuxTargetAsmInfo implementation of PreferredEHDataFormat, because it just calls the default impl. Remove the PPCDarwinTargetAsmInfo version of PreferredEHDataFormat because it just returns DW_EH_PE_absptr unless on 10.6. However, 10.6 doesn't support PPC, so the default impl is just fine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77724 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/PowerPC/PPCTargetAsmInfo.cpp | 31 ------------------------------- lib/Target/PowerPC/PPCTargetAsmInfo.h | 4 ---- 2 files changed, 35 deletions(-) diff --git a/lib/Target/PowerPC/PPCTargetAsmInfo.cpp b/lib/Target/PowerPC/PPCTargetAsmInfo.cpp index 68fa73ea5a8..a117df90adc 100644 --- a/lib/Target/PowerPC/PPCTargetAsmInfo.cpp +++ b/lib/Target/PowerPC/PPCTargetAsmInfo.cpp @@ -34,27 +34,6 @@ PPCDarwinTargetAsmInfo::PPCDarwinTargetAsmInfo(const PPCTargetMachine &TM) : SupportsWeakOmittedEHFrame = false; } -/// PreferredEHDataFormat - This hook allows the target to select data -/// format used for encoding pointers in exception handling data. Reason is -/// 0 for data, 1 for code labels, 2 for function pointers. Global is true -/// if the symbol can be relocated. -unsigned -PPCDarwinTargetAsmInfo::PreferredEHDataFormat(DwarfEncoding::Target Reason, - bool Global) const { - const PPCSubtarget *Subtarget = &TM.getSubtarget(); - - if (Subtarget->getDarwinVers() > 9) { - if ((Reason == DwarfEncoding::Data || Reason == DwarfEncoding::Functions) - && Global) - return DW_EH_PE_pcrel | DW_EH_PE_indirect | DW_EH_PE_sdata4; - - if (Reason == DwarfEncoding::CodeLabels || !Global) - return DW_EH_PE_pcrel; - } - - return DW_EH_PE_absptr; -} - const char *PPCDarwinTargetAsmInfo::getEHGlobalPrefix() const { const PPCSubtarget* Subtarget = &TM.getSubtarget(); if (Subtarget->getDarwinVers() > 9) @@ -104,16 +83,6 @@ PPCLinuxTargetAsmInfo::PPCLinuxTargetAsmInfo(const PPCTargetMachine &TM) : DwarfExceptionSection = "\t.section\t.gcc_except_table,\"a\",@progbits"; } -/// PreferredEHDataFormat - This hook allows the target to select data -/// format used for encoding pointers in exception handling data. Reason is -/// 0 for data, 1 for code labels, 2 for function pointers. Global is true -/// if the symbol can be relocated. -unsigned -PPCLinuxTargetAsmInfo::PreferredEHDataFormat(DwarfEncoding::Target Reason, - bool Global) const { - // We really need to write something here. - return TargetAsmInfo::PreferredEHDataFormat(Reason, Global); -} // Instantiate default implementation. TEMPLATE_INSTANTIATION(class PPCTargetAsmInfo); diff --git a/lib/Target/PowerPC/PPCTargetAsmInfo.h b/lib/Target/PowerPC/PPCTargetAsmInfo.h index edf40c9346c..eb537b9d417 100644 --- a/lib/Target/PowerPC/PPCTargetAsmInfo.h +++ b/lib/Target/PowerPC/PPCTargetAsmInfo.h @@ -46,15 +46,11 @@ namespace llvm { struct PPCDarwinTargetAsmInfo : public PPCTargetAsmInfo { explicit PPCDarwinTargetAsmInfo(const PPCTargetMachine &TM); - virtual unsigned PreferredEHDataFormat(DwarfEncoding::Target Reason, - bool Global) const; virtual const char *getEHGlobalPrefix() const; }; struct PPCLinuxTargetAsmInfo : public PPCTargetAsmInfo { explicit PPCLinuxTargetAsmInfo(const PPCTargetMachine &TM); - virtual unsigned PreferredEHDataFormat(DwarfEncoding::Target Reason, - bool Global) const; }; } // namespace llvm -- 2.11.0