Rizin
unix-like reverse engineering framework and cli tools
|
#include "MCRegisterInfo.h"
Go to the source code of this file.
Classes | |
struct | DiffListIterator |
Typedefs | |
typedef struct DiffListIterator | DiffListIterator |
Functions | |
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) |
static void | DiffListIterator_init (DiffListIterator *d, MCPhysReg InitVal, const MCPhysReg *DiffList) |
static uint16_t | DiffListIterator_getVal (DiffListIterator *d) |
static bool | DiffListIterator_next (DiffListIterator *d) |
static bool | DiffListIterator_isValid (DiffListIterator *d) |
unsigned | MCRegisterInfo_getMatchingSuperReg (const MCRegisterInfo *RI, unsigned Reg, unsigned SubIdx, const MCRegisterClass *RC) |
unsigned | MCRegisterInfo_getSubReg (const MCRegisterInfo *RI, unsigned Reg, unsigned Idx) |
const MCRegisterClass * | MCRegisterInfo_getRegClass (const MCRegisterInfo *RI, unsigned i) |
bool | MCRegisterClass_contains (const MCRegisterClass *c, unsigned Reg) |
typedef struct DiffListIterator DiffListIterator |
DiffListIterator - Base iterator class that can traverse the differentially encoded register and regunit lists in DiffLists. Don't use this class directly, use one of the specialized sub-classes defined below.
|
static |
Definition at line 59 of file MCRegisterInfo.c.
References d.
Referenced by MCRegisterInfo_getMatchingSuperReg(), and MCRegisterInfo_getSubReg().
|
static |
Definition at line 53 of file MCRegisterInfo.c.
References d.
Referenced by MCRegisterInfo_getMatchingSuperReg(), and MCRegisterInfo_getSubReg().
|
static |
Definition at line 81 of file MCRegisterInfo.c.
References d.
Referenced by MCRegisterInfo_getMatchingSuperReg(), and MCRegisterInfo_getSubReg().
|
static |
Definition at line 64 of file MCRegisterInfo.c.
Referenced by MCRegisterInfo_getMatchingSuperReg(), and MCRegisterInfo_getSubReg().
bool MCRegisterClass_contains | ( | const MCRegisterClass * | c, |
unsigned | Reg | ||
) |
Definition at line 134 of file MCRegisterInfo.c.
References c.
Referenced by MCRegisterInfo_getMatchingSuperReg().
unsigned MCRegisterInfo_getMatchingSuperReg | ( | const MCRegisterInfo * | RI, |
unsigned | Reg, | ||
unsigned | SubIdx, | ||
const MCRegisterClass * | RC | ||
) |
Definition at line 86 of file MCRegisterInfo.c.
References MCRegisterInfo::Desc, DiffListIterator_getVal(), DiffListIterator_init(), DiffListIterator_isValid(), DiffListIterator_next(), MCRegisterInfo::DiffLists, MCRegisterClass_contains(), MCRegisterInfo_getSubReg(), MCRegisterInfo::NumRegs, MCRegisterDesc::SuperRegs, and val.
const MCRegisterClass* MCRegisterInfo_getRegClass | ( | const MCRegisterInfo * | RI, |
unsigned | i | ||
) |
Definition at line 126 of file MCRegisterInfo.c.
References MCRegisterInfo::Classes, i, and MCRegisterInfo::NumClasses.
unsigned MCRegisterInfo_getSubReg | ( | const MCRegisterInfo * | RI, |
unsigned | Reg, | ||
unsigned | Idx | ||
) |
Definition at line 108 of file MCRegisterInfo.c.
References MCRegisterInfo::Desc, DiffListIterator_getVal(), DiffListIterator_init(), DiffListIterator_isValid(), DiffListIterator_next(), MCRegisterInfo::DiffLists, MCRegisterDesc::SubRegIndices, MCRegisterInfo::SubRegIndices, and MCRegisterDesc::SubRegs.
Referenced by MCRegisterInfo_getMatchingSuperReg().
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.
References C, MCRegisterInfo::Classes, D, MCRegisterInfo::Desc, MCRegisterInfo::DiffLists, NC, MCRegisterInfo::NumClasses, MCRegisterInfo::NumRegs, MCRegisterInfo::NumRegUnits, MCRegisterInfo::NumSubRegIndices, PC, MCRegisterInfo::PCReg, MCRegisterInfo::RAReg, MCRegisterInfo::RegEncodingTable, MCRegisterInfo::RegStrings, MCRegisterInfo::RegUnitRoots, RET, and MCRegisterInfo::SubRegIndices.