23 #define DEBUG_TYPE "asm-printer"
27 #include "MSP430GenAsmWriter.inc"
41 assert(Op.
isExpr() &&
"unknown pcrel immediate operand");
48 assert((Modifier ==
nullptr || Modifier[0] == 0) &&
"No modifiers supported");
52 }
else if (Op.
isImm()) {
55 assert(Op.
isExpr() &&
"unknown operand kind in printOperand");
63 const char *Modifier) {
81 assert(Disp.
isImm() &&
"Expected immediate in displacement field");
void printInst(const MCInst *MI, raw_ostream &O, StringRef Annot, const MCSubtargetInfo &STI) override
Print the specified MCInst to the specified raw_ostream.
static const char * getRegisterName(unsigned RegNo)
void printPCRelImmOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O)
unsigned getReg() const
Returns the register number.
Instances of this class represent a single low-level machine instruction.
const MCExpr * getExpr() const
void printOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O, const char *Modifier=nullptr)
#define llvm_unreachable(msg)
Marks that the current location is not supposed to be reachable.
void printCCOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O)
void printInstruction(const MCInst *MI, raw_ostream &O)
void printSrcMemOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O, const char *Modifier=nullptr)
MCSubtargetInfo - Generic base class for all target subtargets.
void print(raw_ostream &OS, const MCAsmInfo *MAI, bool InParens=false) const
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
void printAnnotation(raw_ostream &OS, StringRef Annot)
Utility function for printing annotations.
This class implements an extremely fast bulk output stream that can only output to a stream...
StringRef - Represent a constant reference to a string, i.e.
Instances of this class represent operands of the MCInst class.
const MCOperand & getOperand(unsigned i) const