#include "llvm/MC/MCWasmStreamer.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/MC/MCAsmBackend.h"
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCCodeEmitter.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCFixup.h"
#include "llvm/MC/MCFragment.h"
#include "llvm/MC/MCObjectStreamer.h"
#include "llvm/MC/MCSection.h"
#include "llvm/MC/MCSectionWasm.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/MC/MCSymbolWasm.h"
#include "llvm/MC/TargetRegistry.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
namespace llvm {
class MCContext;
class MCStreamer;
class MCSubtargetInfo;
}
usingnamespacellvm;
MCWasmStreamer::~MCWasmStreamer() = default;
void MCWasmStreamer::emitLabel(MCSymbol *S, SMLoc Loc) { … }
void MCWasmStreamer::emitLabelAtPos(MCSymbol *S, SMLoc Loc, MCDataFragment &F,
uint64_t Offset) { … }
void MCWasmStreamer::emitAssemblerFlag(MCAssemblerFlag Flag) { … }
void MCWasmStreamer::changeSection(MCSection *Section, uint32_t Subsection) { … }
void MCWasmStreamer::emitWeakReference(MCSymbol *Alias,
const MCSymbol *Symbol) { … }
bool MCWasmStreamer::emitSymbolAttribute(MCSymbol *S, MCSymbolAttr Attribute) { … }
void MCWasmStreamer::emitCommonSymbol(MCSymbol *S, uint64_t Size,
Align ByteAlignment) { … }
void MCWasmStreamer::emitELFSize(MCSymbol *Symbol, const MCExpr *Value) { … }
void MCWasmStreamer::emitLocalCommonSymbol(MCSymbol *S, uint64_t Size,
Align ByteAlignment) { … }
void MCWasmStreamer::emitIdent(StringRef IdentString) { … }
void MCWasmStreamer::emitInstToFragment(const MCInst &Inst,
const MCSubtargetInfo &STI) { … }
void MCWasmStreamer::emitInstToData(const MCInst &Inst,
const MCSubtargetInfo &STI) { … }
void MCWasmStreamer::finishImpl() { … }
void MCWasmStreamer::fixSymbolsInTLSFixups(const MCExpr *expr) { … }
void MCWasmStreamer::emitThumbFunc(MCSymbol *Func) { … }
void MCWasmStreamer::emitSymbolDesc(MCSymbol *Symbol, unsigned DescValue) { … }
void MCWasmStreamer::emitZerofill(MCSection *Section, MCSymbol *Symbol,
uint64_t Size, Align ByteAlignment,
SMLoc Loc) { … }
void MCWasmStreamer::emitTBSSSymbol(MCSection *Section, MCSymbol *Symbol,
uint64_t Size, Align ByteAlignment) { … }
MCStreamer *llvm::createWasmStreamer(MCContext &Context,
std::unique_ptr<MCAsmBackend> &&MAB,
std::unique_ptr<MCObjectWriter> &&OW,
std::unique_ptr<MCCodeEmitter> &&CE) { … }