14 #define DEBUG_TYPE "asm-printer"
27 #define GET_INSTRUCTION_NAME
28 #include "HexagonGenAsmWriter.inc"
47 const char startPacket =
'{',
50 if (MI->
getOpcode() == Hexagon::ENDLOOP0) {
52 assert(MI->
isPacketEnd() &&
"Loop-end must also end the packet");
96 }
else if(MO.
isImm()) {
109 }
else if(MO.
isImm()) {
145 O <<
" + #" << MO1.
getImm();
200 O <<
'#' << (hi ?
"HI" :
"LO") <<
"(#";
void printFrameIndexOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
void printUnsignedImmOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
void printSymbol(const MCInst *MI, unsigned OpNo, raw_ostream &O, bool hi) const
void printJumpTable(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
void printOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
void printNOneImmOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
void printBranchOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
bool isConstExtended() const
#define llvm_unreachable(msg)
void printConstantPool(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
unsigned getReg() const
getReg - Returns the register number.
void printMEMriOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
void printExtOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
static const char * getRegisterName(unsigned RegNo)
const MCExpr * getExpr() const
void setPacketStart(bool Y)
void printNegImmOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
const char * getName(unsigned Opcode) const
getName - Returns the name for the instructions with the given opcode.
void printAbsAddrOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
bool isPacketStart() const
StringRef getRegName(unsigned RegNo) const
void printImmOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
static const char PacketPadding
void setOpcode(unsigned Op)
unsigned getOpcode() const
virtual void printInst(const MCInst *MI, raw_ostream &O, StringRef Annot)
void printCallOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
virtual StringRef getOpcodeName(unsigned Opcode) const
void printInstruction(const MCInst *MI, raw_ostream &O)
void printAnnotation(raw_ostream &OS, StringRef Annot)
Utility function for printing annotations.
void printPredicateOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
void printGlobalOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O) const
const MCOperand & getOperand(unsigned i) const