Classes | Typedefs | Functions | Variables
MCRegisterInfo.h File Reference
#include "capstone/platform.h"
Include dependency graph for MCRegisterInfo.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  MCRegisterClass
 
struct  MCRegisterDesc
 
struct  MCRegisterInfo
 

Typedefs

typedef uint16_t MCPhysReg
 
typedef struct MCRegisterClass MCRegisterClass
 
typedef struct MCRegisterDesc MCRegisterDesc
 
typedef struct MCRegisterInfo MCRegisterInfo
 

Functions

bool MCRegisterClass_contains (const MCRegisterClass *c, unsigned Reg)
 
unsigned MCRegisterInfo_getMatchingSuperReg (const MCRegisterInfo *RI, unsigned Reg, unsigned SubIdx, const MCRegisterClass *RC)
 
const MCRegisterClassMCRegisterInfo_getRegClass (const MCRegisterInfo *RI, unsigned i)
 
unsigned MCRegisterInfo_getSubReg (const MCRegisterInfo *RI, unsigned Reg, unsigned Idx)
 
void MCRegisterInfo_InitMCRegisterInfo (MCRegisterInfo *RI, const MCRegisterDesc *D, unsigned NR, unsigned RA, unsigned PC, const MCRegisterClass *C, unsigned NC, uint16_t(*RURoots)[2], unsigned NRU, const MCPhysReg *DL, const char *Strings, const uint16_t *SubIndices, unsigned NumIndices, const uint16_t *RET)
 

Variables

const typedef MCPhysRegiterator
 

Typedef Documentation

◆ MCPhysReg

An unsigned integer type large enough to represent all physical registers, but not necessarily virtual registers.

Definition at line 26 of file MCRegisterInfo.h.

◆ MCRegisterClass

◆ MCRegisterDesc

MCRegisterDesc - This record contains information about a particular register. The SubRegs field is a zero terminated array of registers that are sub-registers of the specific register, e.g. AL, AH are sub-registers of AX. The SuperRegs field is a zero terminated array of registers that are super-registers of the specific register, e.g. RAX, EAX, are super-registers of AX.

◆ MCRegisterInfo

MCRegisterInfo base class - We assume that the target defines a static array of MCRegisterDesc objects that represent all of the machine registers that the target has. As such, we simply have to track a pointer to this array so that we can turn register number into a register descriptor.

Note this class is designed to be a base class of TargetRegisterInfo, which is the interface used by codegen. However, specific targets should never specialize this class. MCRegisterInfo should only contain getters to access TableGen generated physical register data. It must not be extended with virtual methods.

Function Documentation

◆ MCRegisterClass_contains()

bool MCRegisterClass_contains ( const MCRegisterClass c,
unsigned  Reg 
)

Definition at line 134 of file MCRegisterInfo.c.

◆ MCRegisterInfo_getMatchingSuperReg()

unsigned MCRegisterInfo_getMatchingSuperReg ( const MCRegisterInfo RI,
unsigned  Reg,
unsigned  SubIdx,
const MCRegisterClass RC 
)

Definition at line 86 of file MCRegisterInfo.c.

◆ MCRegisterInfo_getRegClass()

const MCRegisterClass* MCRegisterInfo_getRegClass ( const MCRegisterInfo RI,
unsigned  i 
)

Definition at line 126 of file MCRegisterInfo.c.

◆ MCRegisterInfo_getSubReg()

unsigned MCRegisterInfo_getSubReg ( const MCRegisterInfo RI,
unsigned  Reg,
unsigned  Idx 
)

Definition at line 108 of file MCRegisterInfo.c.

◆ MCRegisterInfo_InitMCRegisterInfo()

void MCRegisterInfo_InitMCRegisterInfo ( MCRegisterInfo RI,
const MCRegisterDesc D,
unsigned  NR,
unsigned  RA,
unsigned  PC,
const MCRegisterClass C,
unsigned  NC,
uint16_t(*)  RURoots[2],
unsigned  NRU,
const MCPhysReg DL,
const char *  Strings,
const uint16_t SubIndices,
unsigned  NumIndices,
const uint16_t RET 
)

Definition at line 28 of file MCRegisterInfo.c.

Variable Documentation

◆ iterator

const typedef MCPhysReg* iterator

Definition at line 27 of file MCRegisterInfo.h.



grpc
Author(s):
autogenerated on Fri May 16 2025 03:01:23