summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/MCObjectStreamer.cpp
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-12-17 02:45:41 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-12-17 02:45:41 +0000
commit42a037abb150978b2a0a747a279a9bc5b94fa4b3 (patch)
treec3e840444452103c21c629de4a0b04c9dee5abb8 /llvm/lib/MC/MCObjectStreamer.cpp
parentbf067ba253f9fee232a6c99fece52a0a3e4caeee (diff)
downloadbcm5719-llvm-42a037abb150978b2a0a747a279a9bc5b94fa4b3.tar.gz
bcm5719-llvm-42a037abb150978b2a0a747a279a9bc5b94fa4b3.zip
MC/Assembler: Make the MCObjectWriter available through the lifetime of the
assembler. llvm-svn: 122031
Diffstat (limited to 'llvm/lib/MC/MCObjectStreamer.cpp')
-rw-r--r--llvm/lib/MC/MCObjectStreamer.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/llvm/lib/MC/MCObjectStreamer.cpp b/llvm/lib/MC/MCObjectStreamer.cpp
index 571343b0f70..3a79d1921c2 100644
--- a/llvm/lib/MC/MCObjectStreamer.cpp
+++ b/llvm/lib/MC/MCObjectStreamer.cpp
@@ -21,10 +21,11 @@
using namespace llvm;
MCObjectStreamer::MCObjectStreamer(MCContext &Context, TargetAsmBackend &TAB,
- raw_ostream &_OS, MCCodeEmitter *_Emitter)
- : MCStreamer(Context), Assembler(new MCAssembler(Context, TAB,
- *_Emitter,
- _OS)),
+ raw_ostream &OS, MCCodeEmitter *Emitter_)
+ : MCStreamer(Context),
+ Assembler(new MCAssembler(Context, TAB,
+ *Emitter_, *TAB.createObjectWriter(OS),
+ OS)),
CurSectionData(0)
{
}
@@ -32,6 +33,7 @@ MCObjectStreamer::MCObjectStreamer(MCContext &Context, TargetAsmBackend &TAB,
MCObjectStreamer::~MCObjectStreamer() {
delete &Assembler->getBackend();
delete &Assembler->getEmitter();
+ delete &Assembler->getWriter();
delete Assembler;
}
OpenPOWER on IntegriCloud