| 
    LLVM 22.0.0git
    
   | 
 
#include "Target/LoongArch/MCTargetDesc/LoongArchInstPrinter.h"
Static Public Member Functions | |
| static const char * | getRegisterName (MCRegister Reg) | 
| static const char * | getRegisterName (MCRegister Reg, unsigned AltIdx) | 
Additional Inherited Members | |
| Public Types inherited from llvm::MCInstPrinter | |
| enum class | Markup { Immediate , Register , Target , Memory } | 
| Protected Member Functions inherited from llvm::MCInstPrinter | |
| void | printAnnotation (raw_ostream &OS, StringRef Annot) | 
| Utility function for printing annotations.   | |
| const char * | matchAliasPatterns (const MCInst *MI, const MCSubtargetInfo *STI, const AliasMatchingData &M) | 
| Helper for matching MCInsts to alias patterns when printing instructions.   | |
| Protected Attributes inherited from llvm::MCInstPrinter | |
| raw_ostream * | CommentStream = nullptr | 
| A stream that comments can be emitted to if desired.   | |
| const MCAsmInfo & | MAI | 
| const MCInstrInfo & | MII | 
| const MCRegisterInfo & | MRI | 
| const MCInstrAnalysis * | MIA = nullptr | 
| bool | UseMarkup = false | 
| True if we are printing marked up assembly.   | |
| bool | UseColor = false | 
| True if we are printing colored assembly.   | |
| bool | PrintAliases = true | 
| True if we prefer aliases (e.g. nop) to raw mnemonics.   | |
| bool | PrintImmHex = false | 
| True if we are printing immediates as hex.   | |
| HexStyle::Style | PrintHexStyle = HexStyle::C | 
| Which style to use for printing hexadecimal values.   | |
| bool | PrintBranchImmAsAddress = false | 
| If true, a branch immediate (e.g.   | |
| bool | SymbolizeOperands = false | 
| If true, symbolize branch target and memory reference operands.   | |
| SmallVector< raw_ostream::Colors, 4 > | ColorStack {raw_ostream::Colors::RESET} | 
Definition at line 21 of file LoongArchInstPrinter.h.
      
  | 
  inline | 
Definition at line 23 of file LoongArchInstPrinter.h.
References llvm::MCInstPrinter::MAI, llvm::MCInstPrinter::MCInstPrinter(), llvm::MCInstPrinter::MII, and llvm::MCInstPrinter::MRI.
Customize the printer according to a command line option.
Reimplemented from llvm::MCInstPrinter.
Definition at line 44 of file LoongArchInstPrinter.cpp.
References NumericReg, and llvm::MCInstPrinter::PrintAliases.
      
  | 
  overridevirtual | 
Returns a pair containing the mnemonic for MI and the number of bits left for further processing by printInstruction (generated by tablegen). 
Implements llvm::MCInstPrinter.
References MI.
      
  | 
  static | 
Definition at line 98 of file LoongArchInstPrinter.cpp.
References getRegisterName(), and NumericReg.
Referenced by getRegisterName(), llvm::LoongArchAsmPrinter::PrintAsmMemoryOperand(), llvm::LoongArchAsmPrinter::PrintAsmOperand(), and printRegName().
      
  | 
  static | 
| bool llvm::LoongArchInstPrinter::printAliasInstr | ( | const MCInst * | MI, | 
| uint64_t | Address, | ||
| const MCSubtargetInfo & | STI, | ||
| raw_ostream & | O ) | 
References llvm::Address, and MI.
Referenced by printInst().
| void LoongArchInstPrinter::printAtomicMemOp | ( | const MCInst * | MI, | 
| unsigned | OpNo, | ||
| const MCSubtargetInfo & | STI, | ||
| raw_ostream & | O ) | 
Definition at line 90 of file LoongArchInstPrinter.cpp.
References assert(), llvm::MCOperand::getReg(), llvm::MCOperand::isReg(), MI, and printRegName().
| void llvm::LoongArchInstPrinter::printCustomAliasOperand | ( | const MCInst * | MI, | 
| uint64_t | Address, | ||
| unsigned | OpIdx, | ||
| unsigned | PrintMethodIdx, | ||
| const MCSubtargetInfo & | STI, | ||
| raw_ostream & | O ) | 
References llvm::Address, MI, OpIdx, and Reg.
      
  | 
  overridevirtual | 
Print the specified MCInst to the specified raw_ostream.
Address the address of current instruction on most targets, used to print a PC relative immediate as the target address. On targets where a PC relative immediate is relative to the next instruction and the length of a MCInst is difficult to measure (e.g. x86), this is the address of the next instruction. If Address is 0, the immediate will be printed. 
Implements llvm::MCInstPrinter.
Definition at line 58 of file LoongArchInstPrinter.cpp.
References llvm::Address, MI, NoAliases, llvm::MCInstPrinter::PrintAliases, printAliasInstr(), llvm::MCInstPrinter::printAnnotation(), and printInstruction().
| void llvm::LoongArchInstPrinter::printInstruction | ( | const MCInst * | MI, | 
| uint64_t | Address, | ||
| const MCSubtargetInfo & | STI, | ||
| raw_ostream & | O ) | 
References llvm::Address, and MI.
Referenced by printInst().
      
  | 
  overridevirtual | 
Print the assembler register name.
Reimplemented from llvm::MCInstPrinter.
Definition at line 67 of file LoongArchInstPrinter.cpp.
References getRegisterName().
Referenced by printAtomicMemOp().