diff options
| author | Nate Begeman <natebegeman@mac.com> | 2010-01-15 18:51:18 +0000 |
|---|---|---|
| committer | Nate Begeman <natebegeman@mac.com> | 2010-01-15 18:51:18 +0000 |
| commit | d232150b83cf226ec62fdb2c7be642065a25c2d0 (patch) | |
| tree | 6302114fda2221ba15c32844c8c87337c935e547 /llvm/include | |
| parent | a2bbb7cbc636595bd24fc106ffe7df9757614b87 (diff) | |
| download | bcm5719-llvm-d232150b83cf226ec62fdb2c7be642065a25c2d0.tar.gz bcm5719-llvm-d232150b83cf226ec62fdb2c7be642065a25c2d0.zip | |
Hook up llc's -filetype=obj to use MCStreamer if an MCCodeEmitter is available.
Remove most of old Mach-O Writer support, it has been replaced by MCMachOStreamer
Further refactoring to completely remove MachOWriter and drive the object file
writer with the AsmPrinter MCInst/MCSection logic is forthcoming.
llvm-svn: 93527
Diffstat (limited to 'llvm/include')
| -rw-r--r-- | llvm/include/llvm/CodeGen/FileWriters.h | 10 | ||||
| -rw-r--r-- | llvm/include/llvm/Target/TargetMachine.h | 8 |
2 files changed, 16 insertions, 2 deletions
diff --git a/llvm/include/llvm/CodeGen/FileWriters.h b/llvm/include/llvm/CodeGen/FileWriters.h index a913d21eb20..9dba838a158 100644 --- a/llvm/include/llvm/CodeGen/FileWriters.h +++ b/llvm/include/llvm/CodeGen/FileWriters.h @@ -20,11 +20,17 @@ namespace llvm { class ObjectCodeEmitter; class TargetMachine; class raw_ostream; + class formatted_raw_ostream; + class MachineFunctionPass; + class MCAsmInfo; + class MCCodeEmitter; ObjectCodeEmitter *AddELFWriter(PassManagerBase &FPM, raw_ostream &O, TargetMachine &TM); - ObjectCodeEmitter *AddMachOWriter(PassManagerBase &FPM, raw_ostream &O, - TargetMachine &TM); + MachineFunctionPass *createMachOWriter(formatted_raw_ostream &O, + TargetMachine &TM, + const MCAsmInfo *T, + MCCodeEmitter *MCE); } // end llvm namespace diff --git a/llvm/include/llvm/Target/TargetMachine.h b/llvm/include/llvm/Target/TargetMachine.h index 84cd5b432b6..5621e53270b 100644 --- a/llvm/include/llvm/Target/TargetMachine.h +++ b/llvm/include/llvm/Target/TargetMachine.h @@ -452,6 +452,14 @@ public: bool addAssemblyEmitter(PassManagerBase &, CodeGenOpt::Level, bool /* VerboseAsmDefault */, formatted_raw_ostream &); + + /// addObjectFileEmitter - Helper function which creates a target specific + /// object files emitter, if available. This interface is temporary, for + /// bringing up MCAssembler-based object file emitters. + /// + /// \return Returns 'false' on success. + bool addObjectFileEmitter(PassManagerBase &, CodeGenOpt::Level, + formatted_raw_ostream &); }; } // End llvm namespace |

