Changes in directory llvm/lib/Target/X86:
X86.h updated: 1.49 -> 1.50 X86TargetMachine.cpp updated: 1.140 -> 1.141 X86TargetMachine.h updated: 1.44 -> 1.45 --- Log message: Moved the MachOWriter and ELFWriter out of the Target/* files. Placed the definition of it into the CodeGen library. This is so that a backend doesn't necessarily add in these writers if it doesn't use them (like in the lli program). --- Diffs of the changes: (+9 -19) X86.h | 6 ------ X86TargetMachine.cpp | 15 ++++++--------- X86TargetMachine.h | 7 +++---- 3 files changed, 9 insertions(+), 19 deletions(-) Index: llvm/lib/Target/X86/X86.h diff -u llvm/lib/Target/X86/X86.h:1.49 llvm/lib/Target/X86/X86.h:1.50 --- llvm/lib/Target/X86/X86.h:1.49 Wed Nov 15 11:53:13 2006 +++ llvm/lib/Target/X86/X86.h Wed Feb 7 19:39:44 2007 @@ -46,12 +46,6 @@ FunctionPass *createX86CodeEmitterPass(X86TargetMachine &TM, MachineCodeEmitter &MCE); -/// addX86ELFObjectWriterPass - Add passes to the FPM that output the generated -/// code as an ELF object file. -/// -void addX86ELFObjectWriterPass(FunctionPassManager &FPM, - std::ostream &o, X86TargetMachine &tm); - /// createX86EmitCodeToMemory - Returns a pass that converts a register /// allocated function into raw machine code in a dynamically /// allocated chunk of memory. Index: llvm/lib/Target/X86/X86TargetMachine.cpp diff -u llvm/lib/Target/X86/X86TargetMachine.cpp:1.140 llvm/lib/Target/X86/X86TargetMachine.cpp:1.141 --- llvm/lib/Target/X86/X86TargetMachine.cpp:1.140 Mon Jan 22 17:09:50 2007 +++ llvm/lib/Target/X86/X86TargetMachine.cpp Wed Feb 7 19:39:44 2007 @@ -163,15 +163,6 @@ return false; } -bool X86TargetMachine::addObjectWriter(FunctionPassManager &PM, bool Fast, - std::ostream &Out) { - if (Subtarget.isTargetELF()) { - addX86ELFObjectWriterPass(PM, Out, *this); - return false; - } - return true; -} - bool X86TargetMachine::addCodeEmitter(FunctionPassManager &PM, bool Fast, MachineCodeEmitter &MCE) { // FIXME: Move this to TargetJITInfo! @@ -185,3 +176,9 @@ PM.add(createX86CodeEmitterPass(*this, MCE)); return false; } + +bool X86TargetMachine::addSimpleCodeEmitter(FunctionPassManager &PM, bool Fast, + MachineCodeEmitter &MCE) { + PM.add(createX86CodeEmitterPass(*this, MCE)); + return false; +} Index: llvm/lib/Target/X86/X86TargetMachine.h diff -u llvm/lib/Target/X86/X86TargetMachine.h:1.44 llvm/lib/Target/X86/X86TargetMachine.h:1.45 --- llvm/lib/Target/X86/X86TargetMachine.h:1.44 Fri Jan 26 20:56:16 2007 +++ llvm/lib/Target/X86/X86TargetMachine.h Wed Feb 7 19:39:44 2007 @@ -53,22 +53,21 @@ } virtual const TargetData *getTargetData() const { return &DataLayout; } virtual const X86ELFWriterInfo *getELFWriterInfo() const { - return &ELFWriterInfo; + return Subtarget.isTargetELF() ? &ELFWriterInfo : 0; } static unsigned getModuleMatchQuality(const Module &M); static unsigned getJITMatchQuality(); - // Set up the pass pipeline. virtual bool addInstSelector(FunctionPassManager &PM, bool Fast); virtual bool addPostRegAlloc(FunctionPassManager &PM, bool Fast); virtual bool addAssemblyEmitter(FunctionPassManager &PM, bool Fast, std::ostream &Out); - virtual bool addObjectWriter(FunctionPassManager &PM, bool Fast, - std::ostream &Out); virtual bool addCodeEmitter(FunctionPassManager &PM, bool Fast, MachineCodeEmitter &MCE); + virtual bool addSimpleCodeEmitter(FunctionPassManager &PM, bool Fast, + MachineCodeEmitter &MCE); }; /// X86_32TargetMachine - X86 32-bit target machine. _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits