Rizin
unix-like reverse engineering framework and cli tools
|
#include "mcore.h"
#include <rz_analysis.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
Go to the source code of this file.
Classes | |
struct | mcore_mask |
struct | mcore_ops |
Macros | |
#define | MCORE_INSTR_ALIGN (2) |
#define | INVALID_FIELD (0) |
#define | MCORE_INSTRS 265 |
Typedefs | |
typedef struct mcore_mask | mcore_mask_t |
typedef struct mcore_ops | mcore_ops_t |
Functions | |
static mcore_t * | find_instruction (const ut8 *buffer) |
int | mcore_init (mcore_handle *handle, const ut8 *buffer, const ut32 size) |
mcore_t * | mcore_next (mcore_handle *handle) |
void | mcore_free (mcore_t *instr) |
void | print_loop (char *str, int size, ut64 addr, mcore_t *instr) |
void | mcore_snprint (char *str, int size, ut64 addr, mcore_t *instr) |
Variables | |
static const char * | mcore_ctrl_registers [] |
ut16 | load_shift [4] = { 2, 0, 1, 0 } |
mcore_ops_t | mcore_instructions [MCORE_INSTRS] |
typedef struct mcore_mask mcore_mask_t |
typedef struct mcore_ops mcore_ops_t |
Definition at line 363 of file mcore.c.
References mcore_ops::args, count, i, malloc(), mcore_mask::mask, mcore_ops::mask, MCORE_INSTR_ALIGN, MCORE_INSTRS, mcore_instructions, memset(), mcore_ops::n_args, mcore_ops::name, NULL, op, mcore_mask::shift, mcore_mask::type, and mcore_ops::type.
Referenced by mcore_next().
void mcore_free | ( | mcore_t * | instr | ) |
Definition at line 432 of file mcore.c.
References free().
Referenced by disassemble(), and mcore_analysis().
Definition at line 409 of file mcore.c.
References mcore_handle::end, handle, and mcore_handle::pos.
Referenced by disassemble(), and mcore_analysis().
mcore_t* mcore_next | ( | mcore_handle * | handle | ) |
Definition at line 418 of file mcore.c.
References mcore_handle::end, find_instruction(), handle, MCORE_INSTR_ALIGN, NULL, op, and mcore_handle::pos.
Referenced by disassemble(), and mcore_analysis().
Definition at line 469 of file mcore.c.
References addr, mcore_t::args, imm, load_shift, mcore_t::name, print_loop(), RZ_ANALYSIS_OP_TYPE_LOAD, RZ_ANALYSIS_OP_TYPE_STORE, snprintf, cmd_descs_generate::str, mcore_t::type, and mcore_field_t::value.
Referenced by disassemble().
Definition at line 436 of file mcore.c.
References add(), addr, mcore_t::args, i, jump(), mcore_ctrl_registers, mcore_t::n_args, mcore_t::name, PFMT64x, pos, snprintf, cmd_descs_generate::str, mcore_field_t::type, TYPE_CTRL, TYPE_IMM, TYPE_JMP, TYPE_JMPI, TYPE_MEM, TYPE_REG, ut64(), and mcore_field_t::value.
Referenced by mcore_snprint().
ut16 load_shift[4] = { 2, 0, 1, 0 } |
Definition at line 93 of file mcore.c.
Referenced by mcore_snprint().
|
static |
Definition at line 17 of file mcore.c.
Referenced by print_loop().
mcore_ops_t mcore_instructions[MCORE_INSTRS] |
Definition at line 96 of file mcore.c.
Referenced by find_instruction().