diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2009-08-31 08:07:55 +0000 |
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2009-08-31 08:07:55 +0000 |
| commit | 02c7254f6d41a4d99095fb583f31dc24774fe772 (patch) | |
| tree | 9521b076804fba42e7178cd4e6f77aa313b05a68 | |
| parent | 940cda2590072a617a996b62e3e73e74da024d1c (diff) | |
| download | bcm5719-llvm-02c7254f6d41a4d99095fb583f31dc24774fe772.tar.gz bcm5719-llvm-02c7254f6d41a4d99095fb583f31dc24774fe772.zip | |
llvm-mc: Add MCContext to MCAssembler.
llvm-svn: 80572
| -rw-r--r-- | llvm/include/llvm/MC/MCAssembler.h | 7 | ||||
| -rw-r--r-- | llvm/lib/MC/MCAssembler.cpp | 5 | ||||
| -rw-r--r-- | llvm/lib/MC/MCMachOStreamer.cpp | 2 |
3 files changed, 9 insertions, 5 deletions
diff --git a/llvm/include/llvm/MC/MCAssembler.h b/llvm/include/llvm/MC/MCAssembler.h index 182d2fe4d0a..adafcd61583 100644 --- a/llvm/include/llvm/MC/MCAssembler.h +++ b/llvm/include/llvm/MC/MCAssembler.h @@ -21,6 +21,7 @@ namespace llvm { class raw_ostream; class MCAssembler; +class MCContext; class MCSection; class MCSectionData; @@ -559,6 +560,8 @@ private: MCAssembler(const MCAssembler&); // DO NOT IMPLEMENT void operator=(const MCAssembler&); // DO NOT IMPLEMENT + MCContext &Context; + raw_ostream &OS; iplist<MCSectionData> Sections; @@ -584,9 +587,11 @@ public: // concrete and require clients to pass in a target like object. The other // option is to make this abstract, and have targets provide concrete // implementations as we do with AsmParser. - MCAssembler(raw_ostream &OS); + MCAssembler(MCContext &_Context, raw_ostream &OS); ~MCAssembler(); + MCContext &getContext() const { return Context; } + /// Finish - Do final processing and write the object to the output stream. void Finish(); diff --git a/llvm/lib/MC/MCAssembler.cpp b/llvm/lib/MC/MCAssembler.cpp index 0d9b540d15e..fe3d2d13a3b 100644 --- a/llvm/lib/MC/MCAssembler.cpp +++ b/llvm/lib/MC/MCAssembler.cpp @@ -940,9 +940,8 @@ MCSymbolData::MCSymbolData(MCSymbol &_Symbol, MCFragment *_Fragment, /* *** */ -MCAssembler::MCAssembler(raw_ostream &_OS) - : OS(_OS), - SubsectionsViaSymbols(false) +MCAssembler::MCAssembler(MCContext &_Context, raw_ostream &_OS) + : Context(_Context), OS(_OS), SubsectionsViaSymbols(false) { } diff --git a/llvm/lib/MC/MCMachOStreamer.cpp b/llvm/lib/MC/MCMachOStreamer.cpp index 41c82b3d423..87ea99f224f 100644 --- a/llvm/lib/MC/MCMachOStreamer.cpp +++ b/llvm/lib/MC/MCMachOStreamer.cpp @@ -83,7 +83,7 @@ private: public: MCMachOStreamer(MCContext &Context, raw_ostream &_OS, MCCodeEmitter *_Emitter) - : MCStreamer(Context), Assembler(_OS), Emitter(_Emitter), + : MCStreamer(Context), Assembler(Context, _OS), Emitter(_Emitter), CurSectionData(0) {} ~MCMachOStreamer() {} |

