#include "ARMMCTargetDesc.h"
#include "llvm/MC/MCAsmBackend.h"
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCCodeEmitter.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCObjectWriter.h"
#include "llvm/MC/MCWin64EH.h"
#include "llvm/MC/MCWinCOFFStreamer.h"
usingnamespacellvm;
namespace {
class ARMWinCOFFStreamer : public MCWinCOFFStreamer { … };
void ARMWinCOFFStreamer::emitWinEHHandlerData(SMLoc Loc) { … }
void ARMWinCOFFStreamer::emitWindowsUnwindTables(WinEH::FrameInfo *Frame) { … }
void ARMWinCOFFStreamer::emitWindowsUnwindTables() { … }
void ARMWinCOFFStreamer::emitThumbFunc(MCSymbol *Symbol) { … }
void ARMWinCOFFStreamer::finishImpl() { … }
}
MCStreamer *
llvm::createARMWinCOFFStreamer(MCContext &Context,
std::unique_ptr<MCAsmBackend> &&MAB,
std::unique_ptr<MCObjectWriter> &&OW,
std::unique_ptr<MCCodeEmitter> &&Emitter) { … }
namespace {
class ARMTargetWinCOFFStreamer : public llvm::ARMTargetStreamer { … };
void ARMTargetWinCOFFStreamer::emitARMWinUnwindCode(unsigned UnwindCode,
int Reg, int Offset) { … }
void ARMTargetWinCOFFStreamer::emitARMWinCFIAllocStack(unsigned Size,
bool Wide) { … }
void ARMTargetWinCOFFStreamer::emitARMWinCFISaveRegMask(unsigned Mask,
bool Wide) { … }
void ARMTargetWinCOFFStreamer::emitARMWinCFISaveSP(unsigned Reg) { … }
void ARMTargetWinCOFFStreamer::emitARMWinCFISaveFRegs(unsigned First,
unsigned Last) { … }
void ARMTargetWinCOFFStreamer::emitARMWinCFISaveLR(unsigned Offset) { … }
void ARMTargetWinCOFFStreamer::emitARMWinCFINop(bool Wide) { … }
void ARMTargetWinCOFFStreamer::emitARMWinCFIPrologEnd(bool Fragment) { … }
void ARMTargetWinCOFFStreamer::emitARMWinCFIEpilogStart(unsigned Condition) { … }
void ARMTargetWinCOFFStreamer::emitARMWinCFIEpilogEnd() { … }
void ARMTargetWinCOFFStreamer::emitARMWinCFICustom(unsigned Opcode) { … }
}
MCTargetStreamer *llvm::createARMObjectTargetWinCOFFStreamer(MCStreamer &S) { … }