32 #ifndef ZYDIS_REGISTER_H
33 #define ZYDIS_REGISTER_H
Includes and defines some default datatypes.
uint8_t ZydisU8
Definition: CommonTypes.h:45
int16_t ZydisI16
Definition: CommonTypes.h:50
uint16_t ZydisU16
Definition: CommonTypes.h:46
General helper and platform detection macros.
ZydisU8 ZydisRegister
Defines the ZydisRegister datatype.
Definition: EnumRegister.h:4
ZYDIS_EXPORT ZydisI16 ZydisRegisterGetId(ZydisRegister reg)
Returns the id of the specified register.
ZydisU8 ZydisRegisterClass
Defines the ZydisRegisterClass datatype.
Definition: Register.h:60
ZYDIS_EXPORT ZydisRegisterWidth ZydisRegisterGetWidth64(ZydisRegister reg)
Returns the width of the specified register in 64-bit mode.
ZYDIS_EXPORT const char * ZydisRegisterGetString(ZydisRegister reg)
Returns the specified register string.
ZYDIS_EXPORT ZydisRegister ZydisRegisterEncode(ZydisRegisterClass registerClass, ZydisU8 id)
Returns the register specified by the registerClass and the id.
ZYDIS_EXPORT const ZydisStaticString * ZydisRegisterGetStaticString(ZydisRegister reg)
Returns the specified register string as ZydisStaticString.
ZydisRegisterClasses
Values that represent zydis register-classes.
Definition: Register.h:66
@ ZYDIS_REGCLASS_MMX
Floating point multimedia registers.
Definition: Register.h:91
@ ZYDIS_REGCLASS_IP
Instruction-pointer registers.
Definition: Register.h:111
@ ZYDIS_REGCLASS_CONTROL
Control registers.
Definition: Register.h:123
@ ZYDIS_REGCLASS_GPR8
8-bit general-purpose registers.
Definition: Register.h:71
@ ZYDIS_REGCLASS_SEGMENT
Segment registers.
Definition: Register.h:115
@ ZYDIS_REGCLASS_TEST
Test registers.
Definition: Register.h:119
@ ZYDIS_REGCLASS_X87
Floating point legacy registers.
Definition: Register.h:87
@ ZYDIS_REGCLASS_MAX_VALUE
Maximum value of this enum.
Definition: Register.h:140
@ ZYDIS_REGCLASS_YMM
256-bit vector registers.
Definition: Register.h:99
@ ZYDIS_REGCLASS_GPR64
64-bit general-purpose registers.
Definition: Register.h:83
@ ZYDIS_REGCLASS_BOUND
Bound registers.
Definition: Register.h:135
@ ZYDIS_REGCLASS_GPR32
32-bit general-purpose registers.
Definition: Register.h:79
@ ZYDIS_REGCLASS_INVALID
Definition: Register.h:67
@ ZYDIS_REGCLASS_DEBUG
Debug registers.
Definition: Register.h:127
@ ZYDIS_REGCLASS_FLAGS
Flags registers.
Definition: Register.h:107
@ ZYDIS_REGCLASS_ZMM
512-bit vector registers.
Definition: Register.h:103
@ ZYDIS_REGCLASS_MASK
Mask registers.
Definition: Register.h:131
@ ZYDIS_REGCLASS_GPR16
16-bit general-purpose registers.
Definition: Register.h:75
@ ZYDIS_REGCLASS_XMM
128-bit vector registers.
Definition: Register.h:95
ZydisU16 ZydisRegisterWidth
Defines the ZydisRegisterWidth datatype.
Definition: Register.h:150
ZYDIS_EXPORT ZydisRegisterWidth ZydisRegisterGetWidth(ZydisRegister reg)
Returns the width of the specified register.
ZYDIS_EXPORT ZydisRegisterClass ZydisRegisterGetClass(ZydisRegister reg)
Returns the register-class of the specified register.
Defines the ZydisStaticString struct.
Definition: String.h:73