From: Chris Lattner Date: Sun, 2 Aug 2009 04:27:24 +0000 (+0000) Subject: remove TargetAsmInfo::TM, which is now dead. The basic TAI class now X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=8d4a0a328a89d1f3c7ad83048e04ace53b6ba781;p=oota-llvm.git remove TargetAsmInfo::TM, which is now dead. The basic TAI class now no longer depends on TM! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77863 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Target/COFFTargetAsmInfo.h b/include/llvm/Target/COFFTargetAsmInfo.h index a035f2bb873..fd9fb45f0bd 100644 --- a/include/llvm/Target/COFFTargetAsmInfo.h +++ b/include/llvm/Target/COFFTargetAsmInfo.h @@ -15,7 +15,7 @@ namespace llvm { class COFFTargetAsmInfo : public TargetAsmInfo { protected: - explicit COFFTargetAsmInfo(const TargetMachine &TM); + explicit COFFTargetAsmInfo(); }; } diff --git a/include/llvm/Target/DarwinTargetAsmInfo.h b/include/llvm/Target/DarwinTargetAsmInfo.h index 99e4130c1bf..0834390600f 100644 --- a/include/llvm/Target/DarwinTargetAsmInfo.h +++ b/include/llvm/Target/DarwinTargetAsmInfo.h @@ -24,7 +24,7 @@ namespace llvm { class Mangler; struct DarwinTargetAsmInfo : public TargetAsmInfo { - explicit DarwinTargetAsmInfo(const TargetMachine &TM); + explicit DarwinTargetAsmInfo(); }; } diff --git a/include/llvm/Target/ELFTargetAsmInfo.h b/include/llvm/Target/ELFTargetAsmInfo.h index 1b141d5181c..46a88d5c700 100644 --- a/include/llvm/Target/ELFTargetAsmInfo.h +++ b/include/llvm/Target/ELFTargetAsmInfo.h @@ -19,9 +19,7 @@ namespace llvm { - struct ELFTargetAsmInfo : public TargetAsmInfo { - ELFTargetAsmInfo(const TargetMachine &TM); - }; + } diff --git a/include/llvm/Target/TargetAsmInfo.h b/include/llvm/Target/TargetAsmInfo.h index 958a701cefc..9d37d49a467 100644 --- a/include/llvm/Target/TargetAsmInfo.h +++ b/include/llvm/Target/TargetAsmInfo.h @@ -22,15 +22,11 @@ namespace llvm { template class SmallVectorImpl; - class TargetMachine; /// TargetAsmInfo - This class is intended to be used as a base class for asm /// properties and features specific to the target. class TargetAsmInfo { protected: - /// TM - The current TargetMachine. - const TargetMachine &TM; - //===------------------------------------------------------------------===// // Properties to be set by the target writer, used to configure asm printer. // @@ -376,7 +372,7 @@ namespace llvm { const char *const *AsmTransCBE; // Defaults to empty public: - explicit TargetAsmInfo(const TargetMachine &TM); + explicit TargetAsmInfo(); virtual ~TargetAsmInfo(); /// Measure the specified inline asm to determine an approximation of its diff --git a/lib/Target/ARM/ARMTargetAsmInfo.cpp b/lib/Target/ARM/ARMTargetAsmInfo.cpp index ac0f6107cc6..b88110242c8 100644 --- a/lib/Target/ARM/ARMTargetAsmInfo.cpp +++ b/lib/Target/ARM/ARMTargetAsmInfo.cpp @@ -56,7 +56,7 @@ ARMDarwinTargetAsmInfo::ARMDarwinTargetAsmInfo(const ARMBaseTargetMachine &TM): } ARMELFTargetAsmInfo::ARMELFTargetAsmInfo(const ARMBaseTargetMachine &TM): - ARMTargetAsmInfo(TM) { + ARMTargetAsmInfo(TM) { Subtarget = &TM.getSubtarget(); NeedsSet = false; diff --git a/lib/Target/ARM/ARMTargetAsmInfo.h b/lib/Target/ARM/ARMTargetAsmInfo.h index 2b0b11282fb..6eaa4d42fb1 100644 --- a/lib/Target/ARM/ARMTargetAsmInfo.h +++ b/lib/Target/ARM/ARMTargetAsmInfo.h @@ -26,7 +26,7 @@ namespace llvm { template struct ARMTargetAsmInfo : public BaseTAI { - explicit ARMTargetAsmInfo(const ARMBaseTargetMachine &TM) : BaseTAI(TM) { + explicit ARMTargetAsmInfo(const ARMBaseTargetMachine &TM) { BaseTAI::AsmTransCBE = arm_asm_table; BaseTAI::AlignmentIsInBytes = false; @@ -51,7 +51,7 @@ namespace llvm { explicit ARMDarwinTargetAsmInfo(const ARMBaseTargetMachine &TM); }; - struct ARMELFTargetAsmInfo : public ARMTargetAsmInfo { + struct ARMELFTargetAsmInfo : public ARMTargetAsmInfo { explicit ARMELFTargetAsmInfo(const ARMBaseTargetMachine &TM); }; diff --git a/lib/Target/Alpha/AlphaTargetAsmInfo.cpp b/lib/Target/Alpha/AlphaTargetAsmInfo.cpp index 7f8446e960a..ee7166e8bfa 100644 --- a/lib/Target/Alpha/AlphaTargetAsmInfo.cpp +++ b/lib/Target/Alpha/AlphaTargetAsmInfo.cpp @@ -16,8 +16,7 @@ using namespace llvm; -AlphaTargetAsmInfo::AlphaTargetAsmInfo(const AlphaTargetMachine &TM) - : TargetAsmInfo(TM) { +AlphaTargetAsmInfo::AlphaTargetAsmInfo(const AlphaTargetMachine &TM) { AlignmentIsInBytes = false; PrivateGlobalPrefix = "$"; JumpTableDirective = ".gprel32"; diff --git a/lib/Target/COFFTargetAsmInfo.cpp b/lib/Target/COFFTargetAsmInfo.cpp index 970096b473c..64f87c0646a 100644 --- a/lib/Target/COFFTargetAsmInfo.cpp +++ b/lib/Target/COFFTargetAsmInfo.cpp @@ -16,9 +16,7 @@ #include "llvm/ADT/SmallVector.h" using namespace llvm; -COFFTargetAsmInfo::COFFTargetAsmInfo(const TargetMachine &TM) - : TargetAsmInfo(TM) { - +COFFTargetAsmInfo::COFFTargetAsmInfo() { GlobalPrefix = "_"; LCOMMDirective = "\t.lcomm\t"; COMMDirectiveTakesAlignment = false; diff --git a/lib/Target/CellSPU/SPUTargetAsmInfo.cpp b/lib/Target/CellSPU/SPUTargetAsmInfo.cpp index 2bbf4be8e80..76c4db48307 100644 --- a/lib/Target/CellSPU/SPUTargetAsmInfo.cpp +++ b/lib/Target/CellSPU/SPUTargetAsmInfo.cpp @@ -21,7 +21,7 @@ using namespace llvm; using namespace llvm::dwarf; SPULinuxTargetAsmInfo::SPULinuxTargetAsmInfo(const SPUTargetMachine &TM) : - SPUTargetAsmInfo(TM) { + SPUTargetAsmInfo(TM) { PCSymbol = "."; CommentString = "#"; GlobalPrefix = ""; diff --git a/lib/Target/CellSPU/SPUTargetAsmInfo.h b/lib/Target/CellSPU/SPUTargetAsmInfo.h index e773fa2b388..8217c16fb87 100644 --- a/lib/Target/CellSPU/SPUTargetAsmInfo.h +++ b/lib/Target/CellSPU/SPUTargetAsmInfo.h @@ -15,7 +15,6 @@ #define SPUTARGETASMINFO_H #include "llvm/Target/TargetAsmInfo.h" -#include "llvm/Target/ELFTargetAsmInfo.h" #include "SPUTargetMachine.h" #include "SPUSubtarget.h" @@ -26,8 +25,7 @@ namespace llvm { template struct SPUTargetAsmInfo : public BaseTAI { - explicit SPUTargetAsmInfo(const SPUTargetMachine &TM): - BaseTAI(TM) { + explicit SPUTargetAsmInfo(const SPUTargetMachine &TM) { /* (unused today) * const SPUSubtarget *Subtarget = &TM.getSubtarget(); */ @@ -41,7 +39,7 @@ namespace llvm { } }; - struct SPULinuxTargetAsmInfo : public SPUTargetAsmInfo { + struct SPULinuxTargetAsmInfo : public SPUTargetAsmInfo { explicit SPULinuxTargetAsmInfo(const SPUTargetMachine &TM); }; } // namespace llvm diff --git a/lib/Target/DarwinTargetAsmInfo.cpp b/lib/Target/DarwinTargetAsmInfo.cpp index 24bc9a5fa79..ff1f3908a0f 100644 --- a/lib/Target/DarwinTargetAsmInfo.cpp +++ b/lib/Target/DarwinTargetAsmInfo.cpp @@ -12,22 +12,10 @@ // //===----------------------------------------------------------------------===// -#include "llvm/Constants.h" -#include "llvm/DerivedTypes.h" -#include "llvm/Function.h" -#include "llvm/GlobalVariable.h" -#include "llvm/ADT/StringExtras.h" -#include "llvm/Support/ErrorHandling.h" -#include "llvm/Support/Mangler.h" #include "llvm/Target/DarwinTargetAsmInfo.h" -#include "llvm/Target/TargetMachine.h" -#include "llvm/Target/TargetData.h" - using namespace llvm; -DarwinTargetAsmInfo::DarwinTargetAsmInfo(const TargetMachine &TM) - : TargetAsmInfo(TM) { - +DarwinTargetAsmInfo::DarwinTargetAsmInfo() { // Common settings for all Darwin targets. // Syntax: GlobalPrefix = "_"; diff --git a/lib/Target/ELFTargetAsmInfo.cpp b/lib/Target/ELFTargetAsmInfo.cpp index e3259bd916e..1b8ceb395c4 100644 --- a/lib/Target/ELFTargetAsmInfo.cpp +++ b/lib/Target/ELFTargetAsmInfo.cpp @@ -15,7 +15,3 @@ #include "llvm/Target/ELFTargetAsmInfo.h" #include "llvm/ADT/SmallVector.h" using namespace llvm; - -ELFTargetAsmInfo::ELFTargetAsmInfo(const TargetMachine &TM) - : TargetAsmInfo(TM) { -} diff --git a/lib/Target/MSP430/MSP430TargetAsmInfo.cpp b/lib/Target/MSP430/MSP430TargetAsmInfo.cpp index 43a521d3768..8f9f1a20083 100644 --- a/lib/Target/MSP430/MSP430TargetAsmInfo.cpp +++ b/lib/Target/MSP430/MSP430TargetAsmInfo.cpp @@ -14,7 +14,6 @@ #include "MSP430TargetAsmInfo.h" using namespace llvm; -MSP430TargetAsmInfo::MSP430TargetAsmInfo(const TargetMachine &TM) - : ELFTargetAsmInfo(TM) { +MSP430TargetAsmInfo::MSP430TargetAsmInfo(const TargetMachine &TM) { AlignmentIsInBytes = false; } diff --git a/lib/Target/MSP430/MSP430TargetAsmInfo.h b/lib/Target/MSP430/MSP430TargetAsmInfo.h index 93ed04f1bcb..d6a20fbedd6 100644 --- a/lib/Target/MSP430/MSP430TargetAsmInfo.h +++ b/lib/Target/MSP430/MSP430TargetAsmInfo.h @@ -14,10 +14,11 @@ #ifndef MSP430TARGETASMINFO_H #define MSP430TARGETASMINFO_H -#include "llvm/Target/ELFTargetAsmInfo.h" +#include "llvm/Target/TargetAsmInfo.h" namespace llvm { - struct MSP430TargetAsmInfo : public ELFTargetAsmInfo { + class TargetMachine; + struct MSP430TargetAsmInfo : public TargetAsmInfo { explicit MSP430TargetAsmInfo(const TargetMachine &TM); }; diff --git a/lib/Target/Mips/MipsTargetAsmInfo.cpp b/lib/Target/Mips/MipsTargetAsmInfo.cpp index d9a53698f6e..96bb8a18d9e 100644 --- a/lib/Target/Mips/MipsTargetAsmInfo.cpp +++ b/lib/Target/Mips/MipsTargetAsmInfo.cpp @@ -15,9 +15,7 @@ #include "MipsTargetMachine.h" using namespace llvm; -MipsTargetAsmInfo::MipsTargetAsmInfo(const MipsTargetMachine &TM) - : ELFTargetAsmInfo(TM) { - +MipsTargetAsmInfo::MipsTargetAsmInfo(const MipsTargetMachine &TM) { AlignmentIsInBytes = false; COMMDirectiveTakesAlignment = true; Data16bitsDirective = "\t.half\t"; diff --git a/lib/Target/Mips/MipsTargetAsmInfo.h b/lib/Target/Mips/MipsTargetAsmInfo.h index e3cfadc47ec..cbfb50e5b33 100644 --- a/lib/Target/Mips/MipsTargetAsmInfo.h +++ b/lib/Target/Mips/MipsTargetAsmInfo.h @@ -14,13 +14,13 @@ #ifndef MIPSTARGETASMINFO_H #define MIPSTARGETASMINFO_H -#include "llvm/Target/ELFTargetAsmInfo.h" +#include "llvm/Target/TargetAsmInfo.h" namespace llvm { // Forward declaration. class MipsTargetMachine; - struct MipsTargetAsmInfo : public ELFTargetAsmInfo { + struct MipsTargetAsmInfo : public TargetAsmInfo { explicit MipsTargetAsmInfo(const MipsTargetMachine &TM); }; diff --git a/lib/Target/PIC16/PIC16TargetAsmInfo.cpp b/lib/Target/PIC16/PIC16TargetAsmInfo.cpp index 9912543a87c..7a48a469101 100644 --- a/lib/Target/PIC16/PIC16TargetAsmInfo.cpp +++ b/lib/Target/PIC16/PIC16TargetAsmInfo.cpp @@ -20,8 +20,7 @@ using namespace llvm; PIC16TargetAsmInfo:: -PIC16TargetAsmInfo(const PIC16TargetMachine &TM) - : TargetAsmInfo(TM) { +PIC16TargetAsmInfo(const PIC16TargetMachine &TM) { CommentString = ";"; GlobalPrefix = PAN::getTagName(PAN::PREFIX_SYMBOL); GlobalDirective = "\tglobal\t"; diff --git a/lib/Target/PowerPC/PPCTargetAsmInfo.cpp b/lib/Target/PowerPC/PPCTargetAsmInfo.cpp index 6322a2e68fd..0696a901635 100644 --- a/lib/Target/PowerPC/PPCTargetAsmInfo.cpp +++ b/lib/Target/PowerPC/PPCTargetAsmInfo.cpp @@ -33,7 +33,7 @@ PPCDarwinTargetAsmInfo::PPCDarwinTargetAsmInfo(const PPCTargetMachine &TM) : } PPCLinuxTargetAsmInfo::PPCLinuxTargetAsmInfo(const PPCTargetMachine &TM) : - PPCTargetAsmInfo(TM) { + PPCTargetAsmInfo(TM) { CommentString = "#"; GlobalPrefix = ""; PrivateGlobalPrefix = ".L"; diff --git a/lib/Target/PowerPC/PPCTargetAsmInfo.h b/lib/Target/PowerPC/PPCTargetAsmInfo.h index 79dabf4f632..34f4dd5136c 100644 --- a/lib/Target/PowerPC/PPCTargetAsmInfo.h +++ b/lib/Target/PowerPC/PPCTargetAsmInfo.h @@ -24,8 +24,7 @@ namespace llvm { template struct PPCTargetAsmInfo : public BaseTAI { - explicit PPCTargetAsmInfo(const PPCTargetMachine &TM): - BaseTAI(TM) { + explicit PPCTargetAsmInfo(const PPCTargetMachine &TM) { const PPCSubtarget *Subtarget = &TM.getSubtarget(); bool isPPC64 = Subtarget->isPPC64(); @@ -48,7 +47,7 @@ namespace llvm { explicit PPCDarwinTargetAsmInfo(const PPCTargetMachine &TM); }; - struct PPCLinuxTargetAsmInfo : public PPCTargetAsmInfo { + struct PPCLinuxTargetAsmInfo : public PPCTargetAsmInfo { explicit PPCLinuxTargetAsmInfo(const PPCTargetMachine &TM); }; diff --git a/lib/Target/Sparc/SparcTargetAsmInfo.cpp b/lib/Target/Sparc/SparcTargetAsmInfo.cpp index 0ceaf1142ed..6c577925fe3 100644 --- a/lib/Target/Sparc/SparcTargetAsmInfo.cpp +++ b/lib/Target/Sparc/SparcTargetAsmInfo.cpp @@ -15,8 +15,7 @@ #include "llvm/ADT/SmallVector.h" using namespace llvm; -SparcELFTargetAsmInfo::SparcELFTargetAsmInfo(const TargetMachine &TM) - : ELFTargetAsmInfo(TM) { +SparcELFTargetAsmInfo::SparcELFTargetAsmInfo(const TargetMachine &TM) { Data16bitsDirective = "\t.half\t"; Data32bitsDirective = "\t.word\t"; Data64bitsDirective = 0; // .xword is only supported by V9. diff --git a/lib/Target/Sparc/SparcTargetAsmInfo.h b/lib/Target/Sparc/SparcTargetAsmInfo.h index ae646c3911d..4c1266ad8fd 100644 --- a/lib/Target/Sparc/SparcTargetAsmInfo.h +++ b/lib/Target/Sparc/SparcTargetAsmInfo.h @@ -14,14 +14,14 @@ #ifndef SPARCTARGETASMINFO_H #define SPARCTARGETASMINFO_H -#include "llvm/Target/ELFTargetAsmInfo.h" +#include "llvm/Target/TargetAsmInfo.h" namespace llvm { // Forward declaration. class TargetMachine; - struct SparcELFTargetAsmInfo : public ELFTargetAsmInfo { + struct SparcELFTargetAsmInfo : public TargetAsmInfo { explicit SparcELFTargetAsmInfo(const TargetMachine &TM); }; diff --git a/lib/Target/SystemZ/SystemZTargetAsmInfo.cpp b/lib/Target/SystemZ/SystemZTargetAsmInfo.cpp index 2f17676eef0..25877f8da8b 100644 --- a/lib/Target/SystemZ/SystemZTargetAsmInfo.cpp +++ b/lib/Target/SystemZ/SystemZTargetAsmInfo.cpp @@ -16,8 +16,7 @@ using namespace llvm; -SystemZTargetAsmInfo::SystemZTargetAsmInfo(const SystemZTargetMachine &TM) - : ELFTargetAsmInfo(TM) { +SystemZTargetAsmInfo::SystemZTargetAsmInfo(const SystemZTargetMachine &TM) { AlignmentIsInBytes = true; PrivateGlobalPrefix = ".L"; diff --git a/lib/Target/SystemZ/SystemZTargetAsmInfo.h b/lib/Target/SystemZ/SystemZTargetAsmInfo.h index 98b50d49784..e7bf8954f64 100644 --- a/lib/Target/SystemZ/SystemZTargetAsmInfo.h +++ b/lib/Target/SystemZ/SystemZTargetAsmInfo.h @@ -21,7 +21,7 @@ namespace llvm { // Forward declaration. class SystemZTargetMachine; - struct SystemZTargetAsmInfo : public ELFTargetAsmInfo { + struct SystemZTargetAsmInfo : public TargetAsmInfo { explicit SystemZTargetAsmInfo(const SystemZTargetMachine &TM); }; diff --git a/lib/Target/TargetAsmInfo.cpp b/lib/Target/TargetAsmInfo.cpp index 24a11458e9b..65dac65665c 100644 --- a/lib/Target/TargetAsmInfo.cpp +++ b/lib/Target/TargetAsmInfo.cpp @@ -17,7 +17,7 @@ #include using namespace llvm; -TargetAsmInfo::TargetAsmInfo(const TargetMachine &tm) : TM(tm) { +TargetAsmInfo::TargetAsmInfo() { ZeroFillDirective = 0; NonexecutableStackDirective = 0; NeedsSet = false; diff --git a/lib/Target/X86/X86TargetAsmInfo.cpp b/lib/Target/X86/X86TargetAsmInfo.cpp index 07350718f1a..a8eaf5cf64e 100644 --- a/lib/Target/X86/X86TargetAsmInfo.cpp +++ b/lib/Target/X86/X86TargetAsmInfo.cpp @@ -87,7 +87,7 @@ X86DarwinTargetAsmInfo::X86DarwinTargetAsmInfo(const X86TargetMachine &TM): } X86ELFTargetAsmInfo::X86ELFTargetAsmInfo(const X86TargetMachine &TM) : - X86TargetAsmInfo(TM) { + X86TargetAsmInfo(TM) { PrivateGlobalPrefix = ".L"; WeakRefDirective = "\t.weak\t"; diff --git a/lib/Target/X86/X86TargetAsmInfo.h b/lib/Target/X86/X86TargetAsmInfo.h index f0b23ccadd4..92fa7432a23 100644 --- a/lib/Target/X86/X86TargetAsmInfo.h +++ b/lib/Target/X86/X86TargetAsmInfo.h @@ -27,7 +27,7 @@ namespace llvm { template struct X86TargetAsmInfo : public BaseTAI { - explicit X86TargetAsmInfo(const X86TargetMachine &TM) : BaseTAI(TM) { + explicit X86TargetAsmInfo(const TargetMachine &TM) { BaseTAI::AsmTransCBE = x86_asm_table; BaseTAI::AssemblerDialect =TM.getSubtarget().getAsmFlavor(); } @@ -39,7 +39,7 @@ namespace llvm { explicit X86DarwinTargetAsmInfo(const X86TargetMachine &TM); }; - struct X86ELFTargetAsmInfo : public X86TargetAsmInfo { + struct X86ELFTargetAsmInfo : public X86TargetAsmInfo { explicit X86ELFTargetAsmInfo(const X86TargetMachine &TM); }; diff --git a/lib/Target/XCore/XCoreTargetAsmInfo.cpp b/lib/Target/XCore/XCoreTargetAsmInfo.cpp index 48502d07f63..6f2dbbb7bce 100644 --- a/lib/Target/XCore/XCoreTargetAsmInfo.cpp +++ b/lib/Target/XCore/XCoreTargetAsmInfo.cpp @@ -10,8 +10,7 @@ #include "XCoreTargetAsmInfo.h" using namespace llvm; -XCoreTargetAsmInfo::XCoreTargetAsmInfo(const TargetMachine &TM) - : ELFTargetAsmInfo(TM) { +XCoreTargetAsmInfo::XCoreTargetAsmInfo(const TargetMachine &TM) { SupportsDebugInformation = true; Data16bitsDirective = "\t.short\t"; Data32bitsDirective = "\t.long\t"; diff --git a/lib/Target/XCore/XCoreTargetAsmInfo.h b/lib/Target/XCore/XCoreTargetAsmInfo.h index f220815ff98..d1ceb3ff6c5 100644 --- a/lib/Target/XCore/XCoreTargetAsmInfo.h +++ b/lib/Target/XCore/XCoreTargetAsmInfo.h @@ -14,11 +14,11 @@ #ifndef XCORETARGETASMINFO_H #define XCORETARGETASMINFO_H -#include "llvm/Target/ELFTargetAsmInfo.h" +#include "llvm/Target/TargetAsmInfo.h" namespace llvm { - - class XCoreTargetAsmInfo : public ELFTargetAsmInfo { + class TargetMachine; + class XCoreTargetAsmInfo : public TargetAsmInfo { public: explicit XCoreTargetAsmInfo(const TargetMachine &TM); };