Operand object. More...
#include <model.h>
Data Fields | |
char * | ascii |
enum opdis_op_cat_t | category |
enum opdis_op_flag_t | flags |
union { | |
opdis_reg_t reg | |
opdis_addr_expr_t expr | |
opdis_abs_addr_t abs | |
union { | |
opdis_vma_t vma | |
uint64_t u | |
int64_t s | |
} immediate | |
} | value |
unsigned char | data_size |
unsigned char | fixed_size |
unsigned char | ascii_sz |
Operand object.
An instruction operand (i.e. an argument to a CPU opcode).
Absolute address value
char* opdis_op_t::ascii |
String representation of operand
unsigned char opdis_op_t::ascii_sz |
Size of fixed ascii field
Type of operand, e.g. register
unsigned char opdis_op_t::data_size |
Size of operand datatype
Address expression value
unsigned char opdis_op_t::fixed_size |
Is op of a fixed size? 0 or 1
Flags for operand, e.g. signed
union { ... } opdis_op_t::immediate |
Immediate value
Register value
int64_t opdis_op_t::s |
Signed immediate value
uint64_t opdis_op_t::u |
Unsigned immediate value
union { ... } opdis_op_t::value |
Value of operand
Virtual memory address