13#ifndef LLVM_MC_MCINSTRINFO_H 
   14#define LLVM_MC_MCINSTRINFO_H 
   35  const unsigned *InstrNameIndices; 
 
   36  const char *InstrNameData;        
 
   40  const uint8_t *DeprecatedFeatures;
 
   57                       const int16_t *RCHWTables = 
nullptr,
 
   58                       int16_t NumRegClassByHwMode = 0) {
 
   59    LastDesc = 
D + NO - 1;
 
   60    InstrNameIndices = NI;
 
   62    DeprecatedFeatures = 
DF;
 
   63    ComplexDeprecationInfos = CDI;
 
 
   73           "MCInstrInfo not properly initialized");
 
 
   81                          unsigned HwModeId)
 const {
 
   82    int16_t RegClass = OpInfo.RegClass;
 
   83    if (OpInfo.isLookupRegClassByHwMode())
 
 
   91    assert(Opcode < NumOpcodes && 
"Invalid opcode!");
 
   93    return *(LastDesc - Opcode);
 
 
   98    assert(Opcode < NumOpcodes && 
"Invalid opcode!");
 
   99    return StringRef(&InstrNameData[InstrNameIndices[Opcode]]);
 
 
  105                                  std::string &
Info) 
const;
 
 
assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")
 
static GCRegistry::Add< StatepointGC > D("statepoint-example", "an example strategy for statepoint")
 
Analysis containing CSE Info
 
static RegisterPass< DebugifyFunctionPass > DF("debugify-function", "Attach debug info to a function")
 
Instances of this class represent a single low-level machine instruction.
 
Describe properties that are true of each instruction in the target description file.
 
Interface to description of machine instruction set.
 
const MCInstrDesc & get(unsigned Opcode) const
Return the machine instruction descriptor that corresponds to the specified instruction opcode.
 
void InitMCInstrInfo(const MCInstrDesc *D, const unsigned *NI, const char *ND, const uint8_t *DF, const ComplexDeprecationPredicate *CDI, unsigned NO, const int16_t *RCHWTables=nullptr, int16_t NumRegClassByHwMode=0)
Initialize MCInstrInfo, called by TableGen auto-generated routines.
 
const int16_t * getRegClassByHwModeTable(unsigned ModeId) const
 
bool(*)(MCInst &, const MCSubtargetInfo &, std::string &) ComplexDeprecationPredicate
 
const int16_t * RegClassByHwModeTables
 
int16_t NumRegClassByHwModes
 
LLVM_ABI bool getDeprecatedInfo(MCInst &MI, const MCSubtargetInfo &STI, std::string &Info) const
Returns true if a certain instruction is deprecated and if so returns the reason in Info.
 
unsigned getNumOpcodes() const
 
int16_t getOpRegClassID(const MCOperandInfo &OpInfo, unsigned HwModeId) const
Return the ID of the register class to use for OpInfo, for the active HwMode HwModeId.
 
StringRef getName(unsigned Opcode) const
Returns the name for the instructions with the given opcode.
 
This holds information about one operand of a machine instruction, indicating the register class for ...
 
Generic base class for all target subtargets.
 
StringRef - Represent a constant reference to a string, i.e.
 
This is an optimization pass for GlobalISel generic memory operations.