Functions
AO_0
# define AO_0() AOT_NONE, AOT_NONE, AOT_NONE, AOT_NONE, AOT_NONE
AO_1()
# define AO_1(op1) op1, AOT_NONE, AOT_NONE, AOT_NONE, AOT_NONE
AO_2()
# define AO_2(op1, op2) op1, op2, AOT_NONE, AOT_NONE, AOT_NONE
AO_3()
#define AO_3(op1, op2, op3)
AO_4()
#define AO_4(op1, op2, op3, op4)
AO_5()
#define AO_5(op1, op2, op3, op4, op5)
AO_GET_FLAGS()
# define AO_GET_FLAGS(operand) ((operand & AOM_FLAGS) >> AOD_FLAGS)
AO_GET_OFFSET()
# define AO_GET_OFFSET(operand) ((operand & AOM_OFFSET) >> AOD_OFFSET)
AO_GET_DSIZE()
# define AO_GET_DSIZE(operand) ((operand & AOM_OFFSET) >> AOD_OFFSET)
AO_GET_RSIZE()
# define AO_GET_RSIZE(operand) ((operand & AOM_SIZE) >> AOD_SIZE)
AO_GET_SIZE()
# define AO_GET_SIZE(operand) ((operand & AOM_SIZE) >> AOD_SIZE)
AO_GET_TYPE()
# define AO_GET_TYPE(operand) ((operand & AOM_TYPE) >> AOD_TYPE)
AO_GET_VALUE()
# define AO_GET_VALUE(operand) ((operand & AOM_VALUE) >> AOD_VALUE)
AO_CONSTANT()
#define AO_CONSTANT(flags, size, value)
AO_IMMEDIATE()
#define AO_IMMEDIATE(flags, size, type)
AO_REGISTER()
#define AO_REGISTER(flags, size, id)
AO_DREGISTER()
#define AO_DREGISTER(flags, dsize, rsize, id)
AO_DREGISTER2()
#define AO_DREGISTER2(flags, did, dsize, id)
get_filename ()
char const *
(*get_filename) (AsmArch *arch
);
get_prefix_by_opcode ()
AsmArchPrefix const *
(*get_prefix_by_opcode) (AsmArch *arch
,
uint8_t size
,
uint32_t opcode
);
get_instruction_by_opcode ()
AsmArchInstruction const *
(*get_instruction_by_opcode) (AsmArch *arch
,
uint8_t size
,
uint32_t opcode
);
get_register_by_id_size ()
AsmArchRegister const *
(*get_register_by_id_size) (AsmArch *arch
,
uint32_t id
,
uint32_t size
);
get_register_by_name_size ()
AsmArchRegister const *
(*get_register_by_name_size) (AsmArch *arch
,
char const *name
,
uint32_t size
);
write ()
ssize_t
(*write) (AsmArch *arch
,
void const *buf
,
size_t size
);
peek ()
ssize_t
(*peek) (AsmArch *arch
,
void *buf
,
size_t size
);
read ()
ssize_t
(*read) (AsmArch *arch
,
void *buf
,
size_t size
);
seek ()
off_t
(*seek) (AsmArch *arch
,
off_t offset
,
int whence
);
encode ()
int
(*encode) (AsmArchPlugin *arch
,
AsmArchPrefix const *prefix
,
AsmArchInstruction const *instruction
,
AsmArchInstructionCall const *call
);
decode ()
int
(*decode) (AsmArchPlugin *arch
,
AsmArchInstructionCall *call
);
Types and Values
AOD_FLAGS
# define AOD_FLAGS 24
AOD_OFFSET
# define AOD_OFFSET 16
AOD_SIZE
# define AOD_SIZE 8
AOD_TYPE
# define AOD_TYPE 28
AOD_VALUE
# define AOD_VALUE 0
AOM_TYPE
# define AOM_TYPE 0xf0000000
AOM_FLAGS
# define AOM_FLAGS 0x0f000000
AOM_OFFSET
# define AOM_OFFSET 0x00ff0000
AOM_SIZE
# define AOM_SIZE 0x0000ff00
AOM_VALUE
# define AOM_VALUE 0x000000ff
AOF_IMPLICIT
# define AOF_IMPLICIT 0x1
AOF_SIGNED
# define AOF_SIGNED 0x1
AOI_REFERS_STRING
# define AOI_REFERS_STRING 0x1
AOI_REFERS_FUNCTION
# define AOI_REFERS_FUNCTION 0x2
ARO_COUNT
# define ARO_COUNT 5
ARF_ALIAS
# define ARF_ALIAS 0x1
AsmArch
typedef struct _AsmArch AsmArch;
AsmArchPlugin
typedef struct _AsmArchPlugin AsmArchPlugin;