10 #ifndef LLVM_MC_MCINSTPRINTER_H
11 #define LLVM_MC_MCINSTPRINTER_H
14 #include "llvm/Support/DataTypes.h"
23 class MCSubtargetInfo;
27 void dumpBytes(ArrayRef<uint8_t> Bytes, raw_ostream &OS);
bool PrintImmHex
True if we are printing immediates as hex.
HexStyle::Style PrintHexStyle
Which style to use for printing hexadecimal values.
virtual void printInst(const MCInst *MI, raw_ostream &OS, StringRef Annot, const MCSubtargetInfo &STI)=0
Print the specified MCInst to the specified raw_ostream.
format_object< int64_t > formatHex(int64_t Value) const
void setPrintHexStyle(HexStyle::Style Value)
void setPrintImmHex(bool Value)
HexStyle::Style getPrintHexStyle() const
format_object< int64_t > formatDec(int64_t Value) const
Utility functions to print decimal/hexadecimal values.
virtual void printRegName(raw_ostream &OS, unsigned RegNo) const
Print the assembler register name.
Instances of this class represent a single low-level machine instruction.
MCRegisterInfo base class - We assume that the target defines a static array of MCRegisterDesc object...
This class is intended to be used as a base class for asm properties and features specific to the tar...
StringRef markup(StringRef s) const
Utility functions to make adding mark ups simpler.
bool getUseMarkup() const
void setCommentStream(raw_ostream &OS)
Specify a stream to emit comments to.
StringRef getOpcodeName(unsigned Opcode) const
Return the name of the specified opcode enum (e.g.
Interface to description of machine instruction set.
format_object< int64_t > formatImm(int64_t Value) const
Utility function to print immediates in decimal or hex.
raw_ostream * CommentStream
A stream that comments can be emitted to if desired.
void setUseMarkup(bool Value)
bool UseMarkup
True if we are printing marked up assembly.
This is an instance of a target assembly language printer that converts an MCInst to valid target ass...
MCSubtargetInfo - Generic base class for all target subtargets.
void dumpBytes(ArrayRef< uint8_t > Bytes, raw_ostream &OS)
Convert `Bytes' to a hex string and output to `OS'.
LLVM Value Representation.
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...
bool getPrintImmHex() const
StringRef - Represent a constant reference to a string, i.e.
MCInstPrinter(const MCAsmInfo &mai, const MCInstrInfo &mii, const MCRegisterInfo &mri)
const MCRegisterInfo & MRI