OSDN Git Service

remove the PPCLinuxTargetAsmInfo implementation of PreferredEHDataFormat,
authorChris Lattner <sabre@nondot.org>
Fri, 31 Jul 2009 20:43:26 +0000 (20:43 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 31 Jul 2009 20:43:26 +0000 (20:43 +0000)
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
lib/Target/PowerPC/PPCTargetAsmInfo.h

index 68fa73e..a117df9 100644 (file)
@@ -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<PPCSubtarget>();
-
-  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<PPCSubtarget>();
   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<TargetAsmInfo>);
index edf40c9..eb537b9 100644 (file)
@@ -46,15 +46,11 @@ namespace llvm {
 
   struct PPCDarwinTargetAsmInfo : public PPCTargetAsmInfo<DarwinTargetAsmInfo> {
     explicit PPCDarwinTargetAsmInfo(const PPCTargetMachine &TM);
-    virtual unsigned PreferredEHDataFormat(DwarfEncoding::Target Reason,
-                                           bool Global) const;
     virtual const char *getEHGlobalPrefix() const;
   };
 
   struct PPCLinuxTargetAsmInfo : public PPCTargetAsmInfo<ELFTargetAsmInfo> {
     explicit PPCLinuxTargetAsmInfo(const PPCTargetMachine &TM);
-    virtual unsigned PreferredEHDataFormat(DwarfEncoding::Target Reason,
-                                           bool Global) const;
   };
 
 } // namespace llvm