10 #ifndef LLVM_LIB_TARGET_MIPS_MIPSTARGETSTREAMER_H
11 #define LLVM_LIB_TARGET_MIPS_MIPSTARGETSTREAMER_H
21 struct MipsABIFlagsSection;
49 virtual void emitFrame(
unsigned StackReg,
unsigned StackSize,
51 virtual void emitMask(
unsigned CPUBitmask,
int CPUTopSavedRegOff);
52 virtual void emitFMask(
unsigned FPUBitmask,
int FPUTopSavedRegOff);
98 template <
class PredicateLibrary>
106 assert(
ABI &&
"ABI hasn't been set!");
128 bool ModuleDirectiveAllowed;
160 void emitFrame(
unsigned StackReg,
unsigned StackSize,
162 void emitMask(
unsigned CPUBitmask,
int CPUTopSavedRegOff)
override;
163 void emitFMask(
unsigned FPUBitmask,
int FPUTopSavedRegOff)
override;
192 const MCSymbol &Sym,
bool IsReg)
override;
206 bool MicroMipsEnabled;
233 void emitFrame(
unsigned StackReg,
unsigned StackSize,
235 void emitMask(
unsigned CPUBitmask,
int CPUTopSavedRegOff)
override;
236 void emitFMask(
unsigned FPUBitmask,
int FPUTopSavedRegOff)
override;
241 const MCSymbol &Sym,
bool IsReg)
override;
void emitDirectiveSetDsp() override
void emitDirectiveEnd(StringRef Name) override
virtual void emitFMask(unsigned FPUBitmask, int FPUTopSavedRegOff)
void emitDirectiveSetMips3() override
void emitMask(unsigned CPUBitmask, int CPUTopSavedRegOff) override
void emitDirectiveModuleSoftFloat() override
void emitDirectiveCpsetup(unsigned RegNo, int RegOrOffset, const MCSymbol &Sym, bool IsReg) override
void emitMask(unsigned CPUBitmask, int CPUTopSavedRegOff) override
virtual void emitDirectiveOptionPic2()
void emitDirectiveOptionPic2() override
void emitDirectiveSetMips2() override
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
void emitDirectiveSetReorder() override
void emitDirectiveSetNoMicroMips() override
Target specific streamer interface.
void emitDirectiveSetOddSPReg() override
void emitDirectiveNaN2008() override
void emitDirectiveOptionPic0() override
virtual void emitDirectiveSetNoReorder()
void emitDirectiveModuleFP() override
virtual void emitDirectiveModuleHardFloat()
void emitDirectiveSetFp(MipsABIFlagsSection::FpABIKind Value) override
void emitDirectiveSetMips32R6() override
MipsTargetAsmStreamer(MCStreamer &S, formatted_raw_ostream &OS)
void emitDirectiveCpLoad(unsigned RegNo) override
virtual void emitDirectiveSetMips32R3()
virtual void emitDirectiveSetMicroMips()
virtual void emitDirectiveSetMips3()
void emitDirectiveSetAt() override
void emitDirectiveSetPop() override
void emitDirectiveSetMips4() override
void emitFrame(unsigned StackReg, unsigned StackSize, unsigned ReturnReg) override
void emitDirectiveAbiCalls() override
void emitDirectiveSetMicroMips() override
virtual void emitFrame(unsigned StackReg, unsigned StackSize, unsigned ReturnReg)
virtual void emitDirectiveSetMips0()
void emitDirectiveSetNoAt() override
virtual void emitDirectiveSetSoftFloat()
virtual void emitDirectiveSetNoMacro()
void emitDirectiveSetMsa() override
Base class for the full range of assembler expressions which are needed for parsing.
virtual void emitDirectiveSetPush()
virtual void emitDirectiveEnd(StringRef Name)
virtual void emitDirectiveSetMips32R6()
void emitDirectiveSetMips1() override
void emitFMask(unsigned FPUBitmask, int FPUTopSavedRegOff) override
virtual void emitDirectiveSetMips1()
virtual void emitDirectiveModuleOddSPReg()
virtual void emitDirectiveModuleSoftFloat()
void emitDirectiveSetSoftFloat() override
MipsABIFlagsSection ABIFlagsSection
void emitDirectiveSetMips32R2() override
virtual void emitDirectiveModuleFP()
void emitDirectiveSetMips5() override
void emitDirectiveSetMips0() override
void emitLabel(MCSymbol *Symbol) override
virtual void emitDirectiveSetOddSPReg()
virtual void emitDirectiveSetMips64R2()
virtual void emitDirectiveSetNoOddSPReg()
void emitDirectiveCpsetup(unsigned RegNo, int RegOrOffset, const MCSymbol &Sym, bool IsReg) override
void emitDirectiveSetMips16() override
void emitDirectiveNaNLegacy() override
void emitDirectiveSetHardFloat() override
void emitDirectiveSetMips32R3() override
Streaming machine code generation interface.
void emitDirectiveSetMips64() override
virtual void emitDirectiveSetMips4()
virtual void emitDirectiveSetNoMicroMips()
virtual void emitDirectiveSetNoDsp()
void emitDirectiveSetNoReorder() override
virtual void emitDirectiveSetMips16()
virtual void emitDirectiveSetMacro()
virtual void emitDirectiveNaN2008()
virtual void emitDirectiveCpLoad(unsigned RegNo)
virtual void emitDirectiveSetArch(StringRef Arch)
void emitDirectiveSetMips32() override
virtual void emitDirectiveSetDsp()
virtual void emitMask(unsigned CPUBitmask, int CPUTopSavedRegOff)
void emitDirectiveSetMips64R2() override
void emitDirectiveSetMacro() override
virtual void emitDirectiveSetMips32R5()
void emitDirectiveSetNoMsa() override
void emitDirectiveSetMips64R3() override
virtual void emitDirectiveSetMips32R2()
void emitDirectiveSetMips16() override
virtual void emitDirectiveSetFp(MipsABIFlagsSection::FpABIKind Value)
virtual void emitDirectiveAbiCalls()
void emitFMask(unsigned FPUBitmask, int FPUTopSavedRegOff) override
virtual void emitDirectiveSetMips64R6()
void emitDirectiveEnt(const MCSymbol &Symbol) override
void emitDirectiveEnt(const MCSymbol &Symbol) override
void setAllFromPredicates(const PredicateLibrary &P)
virtual void emitDirectiveOptionPic0()
void emitAssignment(MCSymbol *Symbol, const MCExpr *Value) override
const MipsABIInfo & getABI() const
virtual void emitDirectiveSetPop()
void emitDirectiveSetMips32R5() override
void emitDirectiveInsn() override
virtual void emitDirectiveSetAt()
virtual void emitDirectiveSetNoMips16()
void emitDirectiveSetNoOddSPReg() override
bool isMicroMipsEnabled() const
void emitDirectiveSetAtWithArg(unsigned RegNo) override
void emitDirectiveEnd(StringRef Name) override
MipsTargetELFStreamer(MCStreamer &S, const MCSubtargetInfo &STI)
virtual void emitDirectiveInsn()
void emitDirectiveSetNoDsp() override
virtual void emitDirectiveCpsetup(unsigned RegNo, int RegOrOffset, const MCSymbol &Sym, bool IsReg)
bool isModuleDirectiveAllowed()
void emitDirectiveSetMips64R5() override
virtual void emitDirectiveSetMips64R3()
virtual void emitDirectiveSetMips64R5()
void emitDirectiveCpLoad(unsigned RegNo) override
void updateABIInfo(const PredicateLibrary &P)
virtual void emitDirectiveEnt(const MCSymbol &Symbol)
virtual void emitDirectiveSetHardFloat()
virtual void emitDirectiveSetMips64()
MCELFStreamer & getStreamer()
virtual void emitDirectiveSetMips5()
void emitDirectiveSetNoMips16() override
void emitDirectiveOptionPic2() override
virtual void emitDirectiveSetMips2()
MCSubtargetInfo - Generic base class for all target subtargets.
void emitDirectiveSetNoMacro() override
MipsTargetStreamer(MCStreamer &S)
void emitDirectiveSetNoMicroMips() override
void emitFrame(unsigned StackReg, unsigned StackSize, unsigned ReturnReg) override
void emitDirectiveSetMips64R6() override
void emitDirectiveSetArch(StringRef Arch) override
void emitDirectiveModuleOddSPReg() override
void emitDirectiveAbiCalls() override
virtual void emitDirectiveSetReorder()
LLVM Value Representation.
void forbidModuleDirective()
virtual void emitDirectiveNaNLegacy()
void emitDirectiveSetNoReorder() override
virtual void emitDirectiveSetMips32()
virtual void emitDirectiveSetNoMsa()
StringRef - Represent a constant reference to a string, i.e.
void emitDirectiveNaN2008() override
MipsABIFlagsSection & getABIFlagsSection()
virtual void emitDirectiveSetMsa()
virtual void emitDirectiveSetNoAt()
virtual void emitDirectiveSetAtWithArg(unsigned RegNo)
void emitDirectiveInsn() override
void emitDirectiveSetPush() override
void emitDirectiveModuleHardFloat() override
void reallowModuleDirective()
void emitDirectiveNaNLegacy() override
void emitDirectiveOptionPic0() override
void emitDirectiveSetMicroMips() override