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;