1 //===-- ARMWinCOFFStreamer.cpp - ARM Target WinCOFF Streamer ----*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #include "ARMMCTargetDesc.h"
11 #include "llvm/MC/MCWinCOFFStreamer.h"
16 class ARMWinCOFFStreamer : public MCWinCOFFStreamer {
18 ARMWinCOFFStreamer(MCContext &C, MCAsmBackend &AB, MCCodeEmitter &CE,
19 raw_pwrite_stream &OS)
20 : MCWinCOFFStreamer(C, AB, CE, OS) {}
22 void EmitAssemblerFlag(MCAssemblerFlag Flag) override;
23 void EmitThumbFunc(MCSymbol *Symbol) override;
26 void ARMWinCOFFStreamer::EmitAssemblerFlag(MCAssemblerFlag Flag) {
28 default: llvm_unreachable("not implemented");
29 case MCAF_SyntaxUnified:
35 void ARMWinCOFFStreamer::EmitThumbFunc(MCSymbol *Symbol) {
36 getAssembler().setIsThumbFunc(Symbol);
40 MCStreamer *llvm::createARMWinCOFFStreamer(MCContext &Context,
42 raw_pwrite_stream &OS,
43 MCCodeEmitter *Emitter,
45 return new ARMWinCOFFStreamer(Context, MAB, *Emitter, OS);