diff options
author | Daniel Dunbar <daniel@zuster.org> | 2009-08-13 23:48:47 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2009-08-13 23:48:47 +0000 |
commit | 789457847002f5289dbbc5cfce9d68c72e00bed1 (patch) | |
tree | c7578069bc5016562bc179874b60c61dc10956d4 | |
parent | bb23973934ddbcce3a74647bc70afc12862ed29e (diff) |
TargetRegistry: Change AsmPrinter constructor to be typed as returning an
AsmPrinter instance (instead of just a FunctionPass)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78962 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/Target/TargetRegistry.h | 22 | ||||
-rw-r--r-- | lib/CodeGen/LLVMTargetMachine.cpp | 1 | ||||
-rw-r--r-- | lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp | 8 | ||||
-rw-r--r-- | lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp | 8 |
4 files changed, 18 insertions, 21 deletions
diff --git a/include/llvm/Target/TargetRegistry.h b/include/llvm/Target/TargetRegistry.h index bfb23ef930..ebdb36c26e 100644 --- a/include/llvm/Target/TargetRegistry.h +++ b/include/llvm/Target/TargetRegistry.h @@ -24,7 +24,7 @@ #include <cassert> namespace llvm { - class FunctionPass; + class AsmPrinter; class MCAsmParser; class Module; class TargetAsmInfo; @@ -51,10 +51,10 @@ namespace llvm { typedef TargetMachine *(*TargetMachineCtorTy)(const Target &T, const std::string &TT, const std::string &Features); - typedef FunctionPass *(*AsmPrinterCtorTy)(formatted_raw_ostream &OS, - TargetMachine &TM, - const TargetAsmInfo *TAI, - bool VerboseAsm); + typedef AsmPrinter *(*AsmPrinterCtorTy)(formatted_raw_ostream &OS, + TargetMachine &TM, + const TargetAsmInfo *TAI, + bool VerboseAsm); typedef TargetAsmParser *(*AsmParserCtorTy)(const Target &T, MCAsmParser &P); private: @@ -139,10 +139,8 @@ namespace llvm { } /// createAsmPrinter - Create a target specific assembly printer pass. - FunctionPass *createAsmPrinter(formatted_raw_ostream &OS, - TargetMachine &TM, - const TargetAsmInfo *TAI, - bool Verbose) const { + AsmPrinter *createAsmPrinter(formatted_raw_ostream &OS, TargetMachine &TM, + const TargetAsmInfo *TAI, bool Verbose) const { if (!AsmPrinterCtorFn) return 0; return AsmPrinterCtorFn(OS, TM, TAI, Verbose); @@ -407,10 +405,8 @@ namespace llvm { } private: - static FunctionPass *Allocator(formatted_raw_ostream &OS, - TargetMachine &TM, - const TargetAsmInfo *TAI, - bool Verbose) { + static AsmPrinter *Allocator(formatted_raw_ostream &OS, TargetMachine &TM, + const TargetAsmInfo *TAI, bool Verbose) { return new AsmPrinterImpl(OS, TM, TAI, Verbose); } }; diff --git a/lib/CodeGen/LLVMTargetMachine.cpp b/lib/CodeGen/LLVMTargetMachine.cpp index cafe4d3f14..b0c3b80c9c 100644 --- a/lib/CodeGen/LLVMTargetMachine.cpp +++ b/lib/CodeGen/LLVMTargetMachine.cpp @@ -15,6 +15,7 @@ #include "llvm/PassManager.h" #include "llvm/Pass.h" #include "llvm/Assembly/PrintModulePass.h" +#include "llvm/CodeGen/AsmPrinter.h" #include "llvm/CodeGen/Passes.h" #include "llvm/CodeGen/GCStrategy.h" #include "llvm/CodeGen/MachineFunctionAnalysis.h" diff --git a/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp b/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp index 4a44f4cb79..efbf749248 100644 --- a/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp +++ b/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp @@ -1089,10 +1089,10 @@ bool PPCDarwinAsmPrinter::doFinalization(Module &M) { /// for a MachineFunction to the given output stream, in a format that the /// Darwin assembler can deal with. /// -static FunctionPass *createPPCAsmPrinterPass(formatted_raw_ostream &o, - TargetMachine &tm, - const TargetAsmInfo *tai, - bool verbose) { +static AsmPrinter *createPPCAsmPrinterPass(formatted_raw_ostream &o, + TargetMachine &tm, + const TargetAsmInfo *tai, + bool verbose) { const PPCSubtarget *Subtarget = &tm.getSubtarget<PPCSubtarget>(); if (Subtarget->isDarwin()) diff --git a/lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp b/lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp index f232159518..2e769a4d95 100644 --- a/lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp +++ b/lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp @@ -25,10 +25,10 @@ using namespace llvm; /// for a MachineFunction to the given output stream, using the given target /// machine description. /// -static FunctionPass *createX86CodePrinterPass(formatted_raw_ostream &o, - TargetMachine &tm, - const TargetAsmInfo *tai, - bool verbose) { +static AsmPrinter *createX86CodePrinterPass(formatted_raw_ostream &o, + TargetMachine &tm, + const TargetAsmInfo *tai, + bool verbose) { if (tm.getTargetAsmInfo()->getAssemblerDialect() == 1) return new X86IntelAsmPrinter(o, tm, tai, verbose); return new X86ATTAsmPrinter(o, tm, tai, verbose); |