summaryrefslogtreecommitdiff
path: root/lib/MC
diff options
context:
space:
mode:
authorSaleem Abdulrasool <compnerd@compnerd.org>2014-04-27 03:48:12 +0000
committerSaleem Abdulrasool <compnerd@compnerd.org>2014-04-27 03:48:12 +0000
commit6c76c959e405c72574b7e0498ddcaee3e532ca15 (patch)
tree3ca34bf988b489c2c4981c746496b88b5fce85e0 /lib/MC
parentd54ec77c0d1182ac12df371b0938020bb1676d65 (diff)
downloadllvm-6c76c959e405c72574b7e0498ddcaee3e532ca15.tar.gz
llvm-6c76c959e405c72574b7e0498ddcaee3e532ca15.tar.bz2
llvm-6c76c959e405c72574b7e0498ddcaee3e532ca15.tar.xz
MC: create X86WinCOFFStreamer for target specific behaviour
This introduces a target specific streamer, X86WinCOFFStreamer, which handles the target specific behaviour (e.g. WinEH). This is mostly to ensure that differences between ARM and X86 remain disjoint and do not accidentally cross boundaries. This is the final staging change for enabling object emission for Windows on ARM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207344 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC')
-rw-r--r--lib/MC/WinCOFFStreamer.cpp16
1 files changed, 1 insertions, 15 deletions
diff --git a/lib/MC/WinCOFFStreamer.cpp b/lib/MC/WinCOFFStreamer.cpp
index 2d8ca7eb37..ec81dff0c3 100644
--- a/lib/MC/WinCOFFStreamer.cpp
+++ b/lib/MC/WinCOFFStreamer.cpp
@@ -233,29 +233,15 @@ void MCWinCOFFStreamer::EmitIdent(StringRef IdentString) {
}
void MCWinCOFFStreamer::EmitWin64EHHandlerData() {
- MCStreamer::EmitWin64EHHandlerData();
-
- // We have to emit the unwind info now, because this directive
- // actually switches to the .xdata section!
- MCWin64EHUnwindEmitter::EmitUnwindInfo(*this, getCurrentW64UnwindInfo());
+ llvm_unreachable("not implemented");
}
void MCWinCOFFStreamer::FinishImpl() {
- EmitFrames(nullptr, true);
- EmitW64Tables();
MCObjectStreamer::FinishImpl();
}
MCSymbolData &MCWinCOFFStreamer::getOrCreateSymbolData(const MCSymbol *Symbol) {
return getAssembler().getOrCreateSymbolData(*Symbol);
}
-
-MCStreamer *createWinCOFFStreamer(MCContext &Context, MCAsmBackend &MAB,
- MCCodeEmitter &CE, raw_ostream &OS,
- bool RelaxAll) {
- MCWinCOFFStreamer *S = new MCWinCOFFStreamer(Context, MAB, CE, OS);
- S->getAssembler().setRelaxAll(RelaxAll);
- return S;
-}
}