Go to the documentation of this file.
25 #define DEBUG_TYPE "asm-printer"
27 #include "XCoreGenAsmWriter.inc"
40 void XCoreInstPrinter::
45 void XCoreInstPrinter::
55 if (
const MCBinaryExpr *BE = dyn_cast<MCBinaryExpr>(Expr)) {
56 SRE = dyn_cast<MCSymbolRefExpr>(BE->getLHS());
58 assert(SRE && CE &&
"Binary expression must be sym+const.");
59 Offset = CE->getValue();
61 SRE = dyn_cast<MCSymbolRefExpr>(Expr);
62 assert(SRE &&
"Unexpected MCExpr type.");
75 void XCoreInstPrinter::
88 assert(
Op.isExpr() &&
"unknown operand kind in printOperand");
VariantKind getKind() const
This is an optimization pass for GlobalISel generic memory operations.
This class is intended to be used as a base class for asm properties and features specific to the tar...
static void printExpr(const MCExpr *Expr, const MCAsmInfo *MAI, raw_ostream &OS)
void printInstruction(const MCInst *MI, uint64_t Address, raw_ostream &O)
void printInst(const MCInst *MI, uint64_t Address, StringRef Annot, const MCSubtargetInfo &STI, raw_ostream &O) override
Print the specified MCInst to the specified raw_ostream.
Instances of this class represent a single low-level machine instruction.
Binary assembler expressions.
void report_fatal_error(Error Err, bool gen_crash_diag=true)
Report a serious error, calling any installed error handler.
This class implements an extremely fast bulk output stream that can only output to a stream.
const MCSymbol & getSymbol() const
void print(raw_ostream &OS, const MCAsmInfo *MAI) const
print - Print the value to the stream OS.
void printAnnotation(raw_ostream &OS, StringRef Annot)
Utility function for printing annotations.
static const char * getRegisterName(unsigned RegNo)
LLVM_NODISCARD std::string lower() const
void printRegName(raw_ostream &OS, unsigned RegNo) const override
Print the assembler register name.
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
Represent a reference to a symbol from inside an expression.
StringRef - Represent a constant reference to a string, i.e.
Instances of this class represent operands of the MCInst class.
Generic base class for all target subtargets.
Base class for the full range of assembler expressions which are needed for parsing.