LLVM
8.0.1
|
#include "Target/Mips/MipsTargetStreamer.h"
Protected Attributes | |
llvm::Optional< MipsABIInfo > | ABI |
MipsABIFlagsSection | ABIFlagsSection |
bool | GPRInfoSet |
unsigned | GPRBitMask |
int | GPROffset |
bool | FPRInfoSet |
unsigned | FPRBitMask |
int | FPROffset |
bool | FrameInfoSet |
int | FrameOffset |
unsigned | FrameReg |
unsigned | ReturnReg |
Protected Attributes inherited from llvm::MCTargetStreamer | |
MCStreamer & | Streamer |
Definition at line 25 of file MipsTargetStreamer.h.
MipsTargetStreamer::MipsTargetStreamer | ( | MCStreamer & | S | ) |
Definition at line 38 of file MipsTargetStreamer.cpp.
References FPRInfoSet, FrameInfoSet, and GPRInfoSet.
void MipsTargetStreamer::emitAddu | ( | unsigned | DstReg, |
unsigned | SrcReg, | ||
unsigned | TrgReg, | ||
bool | Is64Bit, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 224 of file MipsTargetStreamer.cpp.
References emitRRR().
Referenced by setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 68 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::EmitStartOfAsmFile(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 109 of file MipsTargetStreamer.cpp.
Referenced by setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 110 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveCpRestore(), llvm::MipsTargetELFStreamer::emitDirectiveCpRestore(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 119 of file MipsTargetStreamer.cpp.
Referenced by setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 116 of file MipsTargetStreamer.cpp.
Referenced by setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 66 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::EmitFunctionBodyEnd(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 67 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::EmitFunctionEntryLabel(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 73 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsAsmPrinter::EmitBasicBlockEnd(), llvm::MipsTargetAsmStreamer::emitDirectiveInsn(), llvm::MipsTargetELFStreamer::emitDirectiveInsn(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 131 of file MipsTargetStreamer.cpp.
Referenced by setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 122 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::EmitStartOfAsmFile(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 135 of file MipsTargetStreamer.cpp.
Referenced by setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 129 of file MipsTargetStreamer.cpp.
Referenced by setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 130 of file MipsTargetStreamer.cpp.
Referenced by setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 132 of file MipsTargetStreamer.cpp.
Referenced by setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 136 of file MipsTargetStreamer.cpp.
Referenced by setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 134 of file MipsTargetStreamer.cpp.
Referenced by setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 124 of file MipsTargetStreamer.cpp.
References ABIFlagsSection, llvm::MipsABIFlagsSection::Is32BitABI, llvm::MipsABIFlagsSection::OddSPReg, and llvm::report_fatal_error().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveModuleOddSPReg(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 128 of file MipsTargetStreamer.cpp.
Referenced by setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 133 of file MipsTargetStreamer.cpp.
Referenced by setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 69 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::EmitStartOfAsmFile(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 70 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::EmitStartOfAsmFile(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 71 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::EmitStartOfAsmFile(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 72 of file MipsTargetStreamer.cpp.
Referenced by setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 79 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetArch(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 61 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetAt(), llvm::MipsAsmPrinter::EmitFunctionBodyEnd(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 62 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetAtWithArg(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 55 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetCRC(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 106 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetDsp(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 107 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetDspr2(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 137 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetFp(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 59 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetGINV(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 103 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetHardFloat(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 49 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMacro(), llvm::MipsAsmPrinter::EmitFunctionBodyEnd(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 42 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::EmitFunctionEntryLabel(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 82 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips0(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 83 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips1(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 45 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::EmitFunctionEntryLabel(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 84 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips2(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 85 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips3(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 88 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips32(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 89 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips32R2(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 90 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips32R3(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 91 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips32R5(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 92 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips32R6(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 86 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips4(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 87 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips5(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 93 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips64(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 94 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips64R2(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 95 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips64R3(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 96 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips64R5(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 97 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMips64R6(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 51 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMsa(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 53 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetMt(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 65 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetNoAt(), llvm::MipsAsmPrinter::EmitFunctionBodyStart(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 56 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetNoCRC(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 108 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetNoDsp(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 60 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetNoGINV(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 50 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMacro(), llvm::MipsAsmPrinter::EmitFunctionBodyStart(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 43 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::EmitFunctionEntryLabel(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 46 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMips16(), llvm::MipsAsmPrinter::EmitFunctionEntryLabel(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 52 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMsa(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 54 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMt(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 142 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetNoOddSPReg(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 48 of file MipsTargetStreamer.cpp.
Referenced by countMCSymbolRefExpr(), llvm::MipsAsmPrinter::EmitFunctionBodyStart(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 58 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetNoVirt(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 141 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetOddSPReg(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 98 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetPop(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 99 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetPush(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 47 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by countMCSymbolRefExpr(), llvm::MipsTargetAsmStreamer::emitDirectiveSetReorder(), llvm::MipsAsmPrinter::EmitFunctionBodyEnd(), llvm::MipsAsmPrinter::EmitStartOfAsmFile(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 100 of file MipsTargetStreamer.cpp.
References forbidModuleDirective().
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetSoftFloat(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetAsmStreamer.
Definition at line 57 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveSetVirt(), and setPic().
void MipsTargetStreamer::emitDSLL | ( | unsigned | DstReg, |
unsigned | SrcReg, | ||
int16_t | ShiftAmount, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 231 of file MipsTargetStreamer.cpp.
References emitRRI().
Referenced by isShiftedUIntAtAnyPosition(), nextReg(), and setPic().
void MipsTargetStreamer::emitEmptyDelaySlot | ( | bool | hasShortDelaySlot, |
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 242 of file MipsTargetStreamer.cpp.
References emitRR(), and emitRRI().
Referenced by countMCSymbolRefExpr(), nextReg(), and setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 77 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::printSavedRegsBitmask(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 74 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::emitFrameDirective(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
void MipsTargetStreamer::emitGPRestore | ( | int | Offset, |
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Emit the $gp restore operation for .cprestore.
Definition at line 259 of file MipsTargetStreamer.cpp.
References emitLoadWithImmOffset().
Referenced by countMCSymbolRefExpr(), and setPic().
void MipsTargetStreamer::emitII | ( | unsigned | Opcode, |
int16_t | Imm1, | ||
int16_t | Imm2, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 175 of file MipsTargetStreamer.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createImm(), llvm::MCStreamer::EmitInstruction(), llvm::MCTargetStreamer::getStreamer(), llvm::MCInst::setLoc(), and llvm::MCInst::setOpcode().
void MipsTargetStreamer::emitLoadWithImmOffset | ( | unsigned | Opcode, |
unsigned | DstReg, | ||
unsigned | BaseReg, | ||
int64_t | Offset, | ||
unsigned | TmpReg, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Emit a load instruction with an immediate offset.
DstReg and TmpReg are permitted to be the same register iff DstReg is distinct from BaseReg and DstReg is a GPR. It is the callers responsibility to identify such cases and pass the appropriate register in TmpReg.
Definition at line 320 of file MipsTargetStreamer.cpp.
References emitRI(), emitRRI(), emitRRR(), and llvm::isInt< 16 >().
Referenced by emitGPRestore(), and setPic().
void MipsTargetStreamer::emitLoadWithSymOffset | ( | unsigned | Opcode, |
unsigned | DstReg, | ||
unsigned | BaseReg, | ||
MCOperand & | HiOperand, | ||
MCOperand & | LoOperand, | ||
unsigned | TmpReg, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Emit a load instruction with an symbol offset.
Symbols are assumed to be out of range for a simm16 will be expanded to appropriate instructions. DstReg and TmpReg are permitted to be the same register iff DstReg is a GPR. It is the callers responsibility to identify such cases and pass the appropriate register in TmpReg.
Definition at line 357 of file MipsTargetStreamer.cpp.
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer, and llvm::MipsTargetAsmStreamer.
Definition at line 76 of file MipsTargetStreamer.cpp.
Referenced by llvm::MipsAsmPrinter::printSavedRegsBitmask(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
void MipsTargetStreamer::emitNop | ( | SMLoc | IDLoc, |
const MCSubtargetInfo * | STI | ||
) |
Definition at line 250 of file MipsTargetStreamer.cpp.
References emitRR(), emitRRI(), Features, and llvm::MCSubtargetInfo::getFeatureBits().
void MipsTargetStreamer::emitR | ( | unsigned | Opcode, |
unsigned | Reg0, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 146 of file MipsTargetStreamer.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), llvm::MCStreamer::EmitInstruction(), llvm::MCTargetStreamer::getStreamer(), llvm::MCInst::setLoc(), and llvm::MCInst::setOpcode().
void MipsTargetStreamer::emitRI | ( | unsigned | Opcode, |
unsigned | Reg0, | ||
int32_t | Imm, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 165 of file MipsTargetStreamer.cpp.
References llvm::MCOperand::createImm(), and emitRX().
Referenced by emitLoadWithImmOffset(), emitStoreWithImmOffset(), isShiftedUIntAtAnyPosition(), nextReg(), and setPic().
void MipsTargetStreamer::emitRR | ( | unsigned | Opcode, |
unsigned | Reg0, | ||
unsigned | Reg1, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 170 of file MipsTargetStreamer.cpp.
References llvm::MCOperand::createReg(), and emitRX().
Referenced by emitEmptyDelaySlot(), emitNop(), nextReg(), and setPic().
void MipsTargetStreamer::emitRRI | ( | unsigned | Opcode, |
unsigned | Reg0, | ||
unsigned | Reg1, | ||
int16_t | Imm, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 203 of file MipsTargetStreamer.cpp.
References llvm::MCOperand::createImm(), and emitRRX().
Referenced by countMCSymbolRefExpr(), llvm::MipsTargetELFStreamer::emitDirectiveCpsetup(), emitDSLL(), emitEmptyDelaySlot(), emitLoadWithImmOffset(), emitNop(), emitStoreWithImmOffset(), isShiftedUIntAtAnyPosition(), nextReg(), and setPic().
void MipsTargetStreamer::emitRRIII | ( | unsigned | Opcode, |
unsigned | Reg0, | ||
unsigned | Reg1, | ||
int16_t | Imm0, | ||
int16_t | Imm1, | ||
int16_t | Imm2, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 209 of file MipsTargetStreamer.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createImm(), llvm::MCOperand::createReg(), llvm::MCStreamer::EmitInstruction(), llvm::MCTargetStreamer::getStreamer(), llvm::MCInst::setLoc(), and llvm::MCInst::setOpcode().
Referenced by getRegisterForMxtrC0(), and setPic().
void MipsTargetStreamer::emitRRR | ( | unsigned | Opcode, |
unsigned | Reg0, | ||
unsigned | Reg1, | ||
unsigned | Reg2, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 197 of file MipsTargetStreamer.cpp.
References llvm::MCOperand::createReg(), and emitRRX().
Referenced by emitAddu(), llvm::MipsTargetELFStreamer::emitDirectiveCpsetup(), emitLoadWithImmOffset(), emitLoadWithSymOffset(), emitStoreWithImmOffset(), emitStoreWithSymOffset(), isShiftedUIntAtAnyPosition(), nextReg(), and setPic().
void MipsTargetStreamer::emitRRX | ( | unsigned | Opcode, |
unsigned | Reg0, | ||
unsigned | Reg1, | ||
MCOperand | Op2, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 185 of file MipsTargetStreamer.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), llvm::MCStreamer::EmitInstruction(), llvm::MCTargetStreamer::getStreamer(), llvm::MCInst::setLoc(), and llvm::MCInst::setOpcode().
Referenced by countMCSymbolRefExpr(), llvm::MipsTargetELFStreamer::emitDirectiveCpsetup(), emitLoadWithSymOffset(), emitRRI(), emitRRR(), emitStoreWithSymOffset(), isShiftedUIntAtAnyPosition(), nextReg(), and setPic().
void MipsTargetStreamer::emitRX | ( | unsigned | Opcode, |
unsigned | Reg0, | ||
MCOperand | Op1, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Definition at line 155 of file MipsTargetStreamer.cpp.
References llvm::MCInst::addOperand(), llvm::MCOperand::createReg(), llvm::MCStreamer::EmitInstruction(), llvm::MCTargetStreamer::getStreamer(), llvm::MCInst::setLoc(), and llvm::MCInst::setOpcode().
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveCpsetup(), emitLoadWithSymOffset(), emitRI(), emitRR(), emitStoreWithSymOffset(), isShiftedUIntAtAnyPosition(), nextReg(), and setPic().
void MipsTargetStreamer::emitStoreWithImmOffset | ( | unsigned | Opcode, |
unsigned | SrcReg, | ||
unsigned | BaseReg, | ||
int64_t | Offset, | ||
function_ref< unsigned()> | GetATReg, | ||
SMLoc | IDLoc, | ||
const MCSubtargetInfo * | STI | ||
) |
Emit a store instruction with an offset.
Emit a store instruction with an immediate offset.
If the offset is out of range then it will be synthesized using the assembler temporary.
GetATReg() is a callback that can be used to obtain the current assembler temporary and is only called when the assembler temporary is required. It must handle the case where no assembler temporary is available (typically by reporting an error).
Definition at line 266 of file MipsTargetStreamer.cpp.
References emitRI(), emitRRI(), emitRRR(), and llvm::isInt< 16 >().
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveCpRestore(), and setPic().
|
inline |
Definition at line 170 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveCpLoad(), llvm::MipsTargetELFStreamer::emitDirectiveCpLoad(), emitDirectiveCpRestore(), llvm::MipsTargetAsmStreamer::emitDirectiveCpreturn(), llvm::MipsTargetELFStreamer::emitDirectiveCpreturn(), llvm::MipsTargetAsmStreamer::emitDirectiveCpsetup(), llvm::MipsTargetELFStreamer::emitDirectiveCpsetup(), emitDirectiveInsn(), emitDirectiveSetArch(), emitDirectiveSetAt(), emitDirectiveSetAtWithArg(), emitDirectiveSetDsp(), emitDirectiveSetDspr2(), emitDirectiveSetFp(), emitDirectiveSetHardFloat(), emitDirectiveSetMacro(), llvm::MipsTargetAsmStreamer::emitDirectiveSetMicroMips(), llvm::MipsTargetELFStreamer::emitDirectiveSetMicroMips(), emitDirectiveSetMips0(), emitDirectiveSetMips1(), llvm::MipsTargetAsmStreamer::emitDirectiveSetMips16(), llvm::MipsTargetELFStreamer::emitDirectiveSetMips16(), emitDirectiveSetMips2(), emitDirectiveSetMips3(), emitDirectiveSetMips32(), emitDirectiveSetMips32R2(), emitDirectiveSetMips32R3(), emitDirectiveSetMips32R5(), emitDirectiveSetMips32R6(), emitDirectiveSetMips4(), emitDirectiveSetMips5(), emitDirectiveSetMips64(), emitDirectiveSetMips64R2(), emitDirectiveSetMips64R3(), emitDirectiveSetMips64R5(), emitDirectiveSetMips64R6(), emitDirectiveSetMsa(), emitDirectiveSetNoAt(), emitDirectiveSetNoDsp(), emitDirectiveSetNoMacro(), llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMicroMips(), llvm::MipsTargetELFStreamer::emitDirectiveSetNoMicroMips(), emitDirectiveSetNoMips16(), emitDirectiveSetNoMsa(), emitDirectiveSetNoMt(), emitDirectiveSetNoOddSPReg(), llvm::MipsTargetAsmStreamer::emitDirectiveSetNoReorder(), llvm::MipsTargetELFStreamer::emitDirectiveSetNoReorder(), emitDirectiveSetOddSPReg(), emitDirectiveSetPop(), emitDirectiveSetPush(), emitDirectiveSetReorder(), emitDirectiveSetSoftFloat(), and llvm::MipsAsmPrinter::EmitInstruction().
|
inline |
Definition at line 183 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveCpLoad(), llvm::MipsTargetELFStreamer::emitDirectiveCpRestore(), llvm::MipsTargetELFStreamer::emitDirectiveCpreturn(), llvm::MipsTargetELFStreamer::emitDirectiveCpsetup(), llvm::MipsRegInfoRecord::EmitMipsOptionRecord(), and llvm::MipsTargetELFStreamer::finish().
|
inline |
Definition at line 182 of file MipsTargetStreamer.h.
References ABIFlagsSection.
|
inline |
Definition at line 172 of file MipsTargetStreamer.h.
|
inline |
Definition at line 171 of file MipsTargetStreamer.h.
|
inlinevirtual |
Reimplemented in llvm::MipsTargetELFStreamer.
Definition at line 29 of file MipsTargetStreamer.h.
References emitAddu(), emitDirectiveAbiCalls(), emitDirectiveCpLoad(), emitDirectiveCpRestore(), emitDirectiveCpreturn(), emitDirectiveCpsetup(), emitDirectiveEnd(), emitDirectiveEnt(), emitDirectiveInsn(), emitDirectiveModuleCRC(), emitDirectiveModuleFP(), emitDirectiveModuleGINV(), emitDirectiveModuleHardFloat(), emitDirectiveModuleMT(), emitDirectiveModuleNoCRC(), emitDirectiveModuleNoGINV(), emitDirectiveModuleNoVirt(), emitDirectiveModuleOddSPReg(), emitDirectiveModuleSoftFloat(), emitDirectiveModuleVirt(), emitDirectiveNaN2008(), emitDirectiveNaNLegacy(), emitDirectiveOptionPic0(), emitDirectiveOptionPic2(), emitDirectiveSetArch(), emitDirectiveSetAt(), emitDirectiveSetAtWithArg(), emitDirectiveSetCRC(), emitDirectiveSetDsp(), emitDirectiveSetDspr2(), emitDirectiveSetFp(), emitDirectiveSetGINV(), emitDirectiveSetHardFloat(), emitDirectiveSetMacro(), emitDirectiveSetMicroMips(), emitDirectiveSetMips0(), emitDirectiveSetMips1(), emitDirectiveSetMips16(), emitDirectiveSetMips2(), emitDirectiveSetMips3(), emitDirectiveSetMips32(), emitDirectiveSetMips32R2(), emitDirectiveSetMips32R3(), emitDirectiveSetMips32R5(), emitDirectiveSetMips32R6(), emitDirectiveSetMips4(), emitDirectiveSetMips5(), emitDirectiveSetMips64(), emitDirectiveSetMips64R2(), emitDirectiveSetMips64R3(), emitDirectiveSetMips64R5(), emitDirectiveSetMips64R6(), emitDirectiveSetMsa(), emitDirectiveSetMt(), emitDirectiveSetNoAt(), emitDirectiveSetNoCRC(), emitDirectiveSetNoDsp(), emitDirectiveSetNoGINV(), emitDirectiveSetNoMacro(), emitDirectiveSetNoMicroMips(), emitDirectiveSetNoMips16(), emitDirectiveSetNoMsa(), emitDirectiveSetNoMt(), emitDirectiveSetNoOddSPReg(), emitDirectiveSetNoReorder(), emitDirectiveSetNoVirt(), emitDirectiveSetOddSPReg(), emitDirectiveSetPop(), emitDirectiveSetPush(), emitDirectiveSetReorder(), emitDirectiveSetSoftFloat(), emitDirectiveSetVirt(), emitDSLL(), emitEmptyDelaySlot(), emitFMask(), emitFrame(), emitGPRestore(), emitII(), emitLoadWithImmOffset(), emitLoadWithSymOffset(), emitMask(), emitNop(), emitR(), emitRI(), emitRR(), emitRRI(), emitRRIII(), emitRRR(), emitRRX(), emitRX(), emitStoreWithImmOffset(), emitStoreWithSymOffset(), hasShortDelaySlot(), Name, ReturnReg, setUsesMicroMips(), and llvm::ARMBuildAttrs::Symbol.
Referenced by llvm::MipsAsmPrinter::EmitStartOfAsmFile().
|
virtual |
Reimplemented in llvm::MipsTargetELFStreamer.
Definition at line 44 of file MipsTargetStreamer.cpp.
Referenced by countMCSymbolRefExpr(), llvm::MipsAsmPrinter::EmitFunctionEntryLabel(), setPic(), and llvm::MipsTargetELFStreamer::setPic().
|
inline |
Definition at line 177 of file MipsTargetStreamer.h.
References ABI, ABIFlagsSection, and llvm::MipsABIFlagsSection::setAllFromPredicates().
Referenced by countMCSymbolRefExpr(), llvm::MipsAsmPrinter::EmitFunctionEntryLabel(), and llvm::MipsAsmPrinter::EmitStartOfAsmFile().
|
protected |
Definition at line 189 of file MipsTargetStreamer.h.
Referenced by getABI(), llvm::MipsTargetELFStreamer::MipsTargetELFStreamer(), and updateABIInfo().
|
protected |
Definition at line 190 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetAsmStreamer::emitDirectiveModuleFP(), emitDirectiveModuleOddSPReg(), llvm::MipsTargetAsmStreamer::emitDirectiveModuleOddSPReg(), llvm::MipsTargetAsmStreamer::emitDirectiveSetFp(), llvm::MipsTargetELFStreamer::emitMipsAbiFlags(), getABIFlagsSection(), and updateABIInfo().
|
protected |
Definition at line 197 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveEnd(), and llvm::MipsTargetELFStreamer::emitFMask().
|
protected |
Definition at line 196 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveEnd(), llvm::MipsTargetELFStreamer::emitDirectiveEnt(), llvm::MipsTargetELFStreamer::emitFMask(), and MipsTargetStreamer().
|
protected |
Definition at line 198 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveEnd(), and llvm::MipsTargetELFStreamer::emitFMask().
|
protected |
Definition at line 200 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveEnd(), llvm::MipsTargetELFStreamer::emitDirectiveEnt(), llvm::MipsTargetELFStreamer::emitFrame(), and MipsTargetStreamer().
|
protected |
Definition at line 201 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveEnd(), and llvm::MipsTargetELFStreamer::emitFrame().
|
protected |
Definition at line 202 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveEnd(), and llvm::MipsTargetELFStreamer::emitFrame().
|
protected |
Definition at line 193 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveEnd(), and llvm::MipsTargetELFStreamer::emitMask().
|
protected |
Definition at line 192 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveEnd(), llvm::MipsTargetELFStreamer::emitDirectiveEnt(), llvm::MipsTargetELFStreamer::emitMask(), and MipsTargetStreamer().
|
protected |
Definition at line 194 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveEnd(), and llvm::MipsTargetELFStreamer::emitMask().
|
protected |
Definition at line 203 of file MipsTargetStreamer.h.
Referenced by llvm::MipsTargetELFStreamer::emitDirectiveEnd(), llvm::MipsTargetELFStreamer::emitFrame(), setPic(), and llvm::MipsTargetELFStreamer::setPic().