Rizin
unix-like reverse engineering framework and cli tools
|
Go to the source code of this file.
Classes | |
struct | tms320_instruction |
struct | tms320_instruction_mask |
struct | tms320_instruction_flag |
struct | tms320_instruction_head |
struct | tms320_dasm_t |
Macros | |
#define | IDA_COMPATIBLE_MODE 1 |
#define | i_list_last(x) !(((x)->i_list || (x)->m_list || (x)->f_list || (x)->syntax)) |
#define | m_list_last(x) !(((x)->f || (x)->n || (x)->v)) |
#define | f_list_last(x) !(((x)->f || (x)->v)) |
#define | TMS320_S_INVAL 0x01 |
#define | def_field(name, size) |
#define | TMS320_F_CPU_C54X 0x0000001 |
#define | TMS320_F_CPU_C55X 0x0000002 |
#define | TMS320_F_CPU_C55X_PLUS 0x0000003 |
#define | TMS320_F_CPU_MASK 0x00000FF |
#define | tms320_f_get_cpu(d) ((d)->features & TMS320_F_CPU_MASK) |
#define | tms320_f_set_cpu(d, v) ((d)->features = ((d)->features & ~TMS320_F_CPU_MASK) | (v)) |
#define | field_valid(d, name) (d)->f.bf_##name##_valid |
#define | field_value(d, name) (d)->f.bf_##name##_value |
#define | set_field_value(d, name, value) |
#define | LIST_END { 0 } |
#define | INSN_MASK(af, an, av) { .f = af, .n = an, .v = av } |
#define | INSN_FLAG(af, av) { .f = af, .v = TMS320_FLAG_##av } |
#define | INSN_SYNTAX(...) (char *)#__VA_ARGS__ |
Typedefs | |
typedef struct tms320_instruction | insn_item_t |
typedef struct tms320_instruction_mask | insn_mask_t |
typedef struct tms320_instruction_flag | insn_flag_t |
typedef struct tms320_instruction_head | insn_head_t |
Functions | |
int | tms320_dasm (tms320_dasm_t *, const ut8 *, int) |
int | tms320_dasm_init (tms320_dasm_t *) |
int | tms320_dasm_fini (tms320_dasm_t *) |
Definition at line 129 of file tms320_dasm.h.
Definition at line 218 of file tms320_dasm.h.
Definition at line 220 of file tms320_dasm.h.
Definition at line 85 of file tms320_dasm.h.
#define IDA_COMPATIBLE_MODE 1 |
Definition at line 7 of file tms320_dasm.h.
Definition at line 242 of file tms320_dasm.h.
Definition at line 240 of file tms320_dasm.h.
#define INSN_SYNTAX | ( | ... | ) | (char *)#__VA_ARGS__ |
Definition at line 244 of file tms320_dasm.h.
#define LIST_END { 0 } |
Definition at line 237 of file tms320_dasm.h.
Definition at line 95 of file tms320_dasm.h.
Definition at line 230 of file tms320_dasm.h.
#define TMS320_F_CPU_C54X 0x0000001 |
Definition at line 209 of file tms320_dasm.h.
#define TMS320_F_CPU_C55X 0x0000002 |
Definition at line 210 of file tms320_dasm.h.
#define TMS320_F_CPU_C55X_PLUS 0x0000003 |
Definition at line 211 of file tms320_dasm.h.
#define TMS320_F_CPU_MASK 0x00000FF |
Definition at line 212 of file tms320_dasm.h.
#define tms320_f_get_cpu | ( | d | ) | ((d)->features & TMS320_F_CPU_MASK) |
Definition at line 214 of file tms320_dasm.h.
Definition at line 215 of file tms320_dasm.h.
#define TMS320_S_INVAL 0x01 |
Definition at line 124 of file tms320_dasm.h.
typedef struct tms320_instruction_flag insn_flag_t |
Definition at line 1 of file tms320_dasm.h.
typedef struct tms320_instruction_head insn_head_t |
Definition at line 1 of file tms320_dasm.h.
typedef struct tms320_instruction insn_item_t |
Definition at line 1 of file tms320_dasm.h.
typedef struct tms320_instruction_mask insn_mask_t |
Definition at line 1 of file tms320_dasm.h.
enum insn_flag_e |
Definition at line 23 of file tms320_dasm.h.
int tms320_dasm | ( | tms320_dasm_t * | dasm, |
const ut8 * | stream, | ||
int | len | ||
) |
Definition at line 1154 of file tms320_dasm.c.
References c55x_plus_disassemble(), decode_insn_head(), full_insn_size(), init_dasm(), len, tms320_dasm_t::length, lookup_insn_head(), tms320_dasm_t::status, tms320_dasm_t::syntax, TMS320_F_CPU_C55X_PLUS, tms320_f_get_cpu, and TMS320_S_INVAL.
Referenced by tms320_c55x_op(), and tms320_disassemble().
int tms320_dasm_fini | ( | tms320_dasm_t * | dasm | ) |
Definition at line 1202 of file tms320_dasm.c.
References tms320_dasm_t::map, and memset().
Referenced by tms320_fini().
int tms320_dasm_init | ( | tms320_dasm_t * | dasm | ) |
Definition at line 1181 of file tms320_dasm.c.
References tms320_instruction_head::byte, c55x_list, i, tms320_dasm_t::map, RZ_ARRAY_SIZE, TMS320_F_CPU_C55X, and tms320_f_set_cpu.
Referenced by tms320_init().