OpenOCD
|
Go to the source code of this file.
Functions | |
static int | nds32_calculate_lsmw_access_range (struct nds32 *nds32, struct nds32_instruction *instruction) |
int | nds32_evaluate_opcode (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static uint8_t | nds32_extract_field_8u (uint16_t opcode, uint32_t start, uint32_t length) |
static int | nds32_parse_alu_1 (uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_alu_2 (uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_0_insn (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_0_insn_16 (struct nds32 *nds32, uint16_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_1_insn (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_1_insn_16 (struct nds32 *nds32, uint16_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_2_insn (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_2_insn_16 (struct nds32 *nds32, uint16_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_3_insn (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_3_insn_16 (struct nds32 *nds32, uint16_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_4_insn (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_5_insn (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_group_6_insn (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_hwgp (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_lsmw (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_mem (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_sbgp (struct nds32 *nds32, uint32_t opcode, uint32_t address, struct nds32_instruction *instruction) |
static int | nds32_parse_type_0 (uint32_t opcode, int32_t *imm) |
static int | nds32_parse_type_1 (uint32_t opcode, uint8_t *rt, int32_t *imm) |
static int | nds32_parse_type_2 (uint32_t opcode, uint8_t *rt, uint8_t *ra, int32_t *imm) |
static int | nds32_parse_type_3 (uint32_t opcode, uint8_t *rt, uint8_t *ra, uint8_t *rb, int32_t *imm) |
static int | nds32_parse_type_4 (uint32_t opcode, uint8_t *rt, uint8_t *ra, uint8_t *rb, uint8_t *rd, uint8_t *sub_opc) |
int | nds32_read_opcode (struct nds32 *nds32, uint32_t address, uint32_t *value) |
Variables | |
static const int | enable4_bits [] = {0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4} |
static uint32_t | field_mask [9] |
|
static |
Definition at line 933 of file nds32_disassembler.c.
References nds32_instruction::access_end, nds32_instruction::access_start, enable4_bits, ERROR_OK, id, nds32_instruction::imm, nds32_instruction::info, nds32_get_mapped_reg(), nds32_instruction::ra, nds32_instruction::rb, and nds32_instruction::rd.
Referenced by nds32_parse_lsmw().
int nds32_evaluate_opcode | ( | struct nds32 * | nds32, |
uint32_t | opcode, | ||
uint32_t | address, | ||
struct nds32_instruction * | instruction | ||
) |
Definition at line 3770 of file nds32_disassembler.c.
References ERROR_FAIL, ERROR_OK, nds32_instruction::info, nds32_instruction::instruction_size, nds32_parse_group_0_insn(), nds32_parse_group_0_insn_16(), nds32_parse_group_1_insn(), nds32_parse_group_1_insn_16(), nds32_parse_group_2_insn(), nds32_parse_group_2_insn_16(), nds32_parse_group_3_insn(), nds32_parse_group_3_insn_16(), nds32_parse_group_4_insn(), nds32_parse_group_5_insn(), nds32_parse_group_6_insn(), nds32_instruction::opc_6, nds32_instruction::opcode, and nds32_instruction::text.
Referenced by COMMAND_HANDLER(), nds32_examine_debug_reason(), and nds32_v3_get_exception_address().
|
static |
Definition at line 2839 of file nds32_disassembler.c.
References field_mask, length, and start.
Referenced by nds32_parse_group_0_insn_16(), nds32_parse_group_1_insn_16(), nds32_parse_group_2_insn_16(), and nds32_parse_group_3_insn_16().
|
static |
Definition at line 1255 of file nds32_disassembler.c.
References ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, NDS32_INSN_DATA_PROC, NDS32_INSN_MISC, nds32_parse_type_2(), nds32_parse_type_3(), nds32_parse_type_4(), nds32_instruction::ra, nds32_instruction::rb, nds32_instruction::rd, nds32_instruction::rt, nds32_instruction::sub_opc, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_parse_group_4_insn().
|
static |
Definition at line 1826 of file nds32_disassembler.c.
References ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, NDS32_INSN_DATA_PROC, NDS32_INSN_RESOURCE_ACCESS, nds32_parse_type_1(), nds32_parse_type_2(), nds32_parse_type_3(), nds32_instruction::ra, nds32_instruction::rb, nds32_instruction::rt, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_parse_group_4_insn().
|
static |
Definition at line 94 of file nds32_disassembler.c.
References nds32_instruction::access_end, nds32_instruction::access_start, ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_get_mapped_reg(), NDS32_INSN_LOAD_STORE, nds32_parse_type_2(), nds32_instruction::opc_6, nds32_instruction::ra, nds32_instruction::rt, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 2847 of file nds32_disassembler.c.
References ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_extract_field_8u(), NDS32_INSN_DATA_PROC, NDS32_INSN_MISC, nds32_instruction::ra, nds32_instruction::rb, nds32_instruction::rt, nds32_instruction::sub_opc, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 214 of file nds32_disassembler.c.
References nds32_instruction::access_end, nds32_instruction::access_start, ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_get_mapped_reg(), NDS32_INSN_LOAD_STORE, nds32_parse_type_2(), nds32_instruction::opc_6, nds32_instruction::ra, nds32_instruction::rt, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 3096 of file nds32_disassembler.c.
References nds32_instruction::access_end, nds32_instruction::access_start, ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_extract_field_8u(), nds32_get_mapped_reg(), NDS32_INSN_DATA_PROC, NDS32_INSN_LOAD_STORE, R28, R8, nds32_instruction::ra, nds32_instruction::rt, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 333 of file nds32_disassembler.c.
References nds32_instruction::access_end, nds32_instruction::access_start, ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_get_mapped_reg(), NDS32_INSN_LOAD_STORE, NDS32_INSN_MISC, nds32_parse_type_1(), nds32_parse_type_2(), nds32_instruction::opc_6, R29, nds32_instruction::ra, nds32_instruction::rt, nds32_instruction::sub_opc, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 3327 of file nds32_disassembler.c.
References ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_extract_field_8u(), NDS32_INSN_DATA_PROC, NDS32_INSN_JUMP_BRANCH, nds32_instruction::rb, nds32_instruction::rt, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 1223 of file nds32_disassembler.c.
References ERROR_FAIL, ERROR_OK, nds32_instruction::info, nds32_parse_hwgp(), nds32_parse_lsmw(), nds32_parse_mem(), nds32_parse_sbgp(), nds32_instruction::opc_6, and nds32_instruction::text.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 3454 of file nds32_disassembler.c.
References nds32_instruction::access_end, nds32_instruction::access_start, ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_extract_field_8u(), nds32_get_mapped_reg(), NDS32_INSN_DATA_PROC, NDS32_INSN_JUMP_BRANCH, NDS32_INSN_LOAD_STORE, NDS32_INSN_MISC, R31, nds32_instruction::ra, nds32_instruction::rb, nds32_instruction::rd, nds32_instruction::rt, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 2271 of file nds32_disassembler.c.
References ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, NDS32_INSN_DATA_PROC, NDS32_INSN_JUMP_BRANCH, nds32_parse_alu_1(), nds32_parse_alu_2(), nds32_parse_type_0(), nds32_parse_type_1(), nds32_parse_type_2(), nds32_instruction::opc_6, R30, nds32_instruction::ra, nds32_instruction::rb, nds32_instruction::rt, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 2535 of file nds32_disassembler.c.
References ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, NDS32_INSN_DATA_PROC, nds32_parse_type_2(), nds32_instruction::opc_6, nds32_instruction::ra, nds32_instruction::rt, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 2643 of file nds32_disassembler.c.
References ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, NDS32_INSN_MISC, NDS32_INSN_RESOURCE_ACCESS, nds32_parse_type_0(), nds32_parse_type_1(), nds32_parse_type_2(), nds32_instruction::opc_6, nds32_instruction::ra, nds32_instruction::rt, nds32_instruction::sub_opc, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_evaluate_opcode().
|
static |
Definition at line 1091 of file nds32_disassembler.c.
References nds32_instruction::access_end, nds32_instruction::access_start, ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_get_mapped_reg(), NDS32_INSN_LOAD_STORE, nds32_parse_type_1(), R29, nds32_instruction::rt, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_parse_group_3_insn().
|
static |
Definition at line 971 of file nds32_disassembler.c.
References ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_calculate_lsmw_access_range(), NDS32_INSN_LOAD_STORE, nds32_parse_type_3(), nds32_instruction::ra, nds32_instruction::rb, nds32_instruction::rd, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_parse_group_3_insn().
|
static |
Definition at line 475 of file nds32_disassembler.c.
References nds32_instruction::access_end, nds32_instruction::access_start, ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_get_mapped_reg(), NDS32_INSN_LOAD_STORE, NDS32_INSN_MISC, nds32_parse_type_3(), nds32_instruction::ra, nds32_instruction::rb, nds32_instruction::rt, nds32_instruction::sub_opc, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_parse_group_3_insn().
|
static |
Definition at line 1182 of file nds32_disassembler.c.
References nds32_instruction::access_end, nds32_instruction::access_start, ERROR_FAIL, ERROR_OK, nds32_instruction::imm, nds32_instruction::info, nds32_get_mapped_reg(), NDS32_INSN_DATA_PROC, NDS32_INSN_LOAD_STORE, nds32_parse_type_1(), R29, nds32_instruction::rt, nds32_instruction::text, and nds32_instruction::type.
Referenced by nds32_parse_group_3_insn().
|
static |
Definition at line 46 of file nds32_disassembler.c.
References ERROR_OK.
Referenced by nds32_parse_group_4_insn(), and nds32_parse_group_6_insn().
|
static |
Definition at line 53 of file nds32_disassembler.c.
References ERROR_OK.
Referenced by nds32_parse_alu_2(), nds32_parse_group_2_insn(), nds32_parse_group_4_insn(), nds32_parse_group_6_insn(), nds32_parse_hwgp(), and nds32_parse_sbgp().
|
static |
Definition at line 61 of file nds32_disassembler.c.
References ERROR_OK.
Referenced by nds32_parse_alu_1(), nds32_parse_alu_2(), nds32_parse_group_0_insn(), nds32_parse_group_1_insn(), nds32_parse_group_2_insn(), nds32_parse_group_4_insn(), nds32_parse_group_5_insn(), and nds32_parse_group_6_insn().
|
static |
Definition at line 70 of file nds32_disassembler.c.
References ERROR_OK.
Referenced by nds32_parse_alu_1(), nds32_parse_alu_2(), nds32_parse_lsmw(), and nds32_parse_mem().
|
static |
Definition at line 81 of file nds32_disassembler.c.
References ERROR_OK.
Referenced by nds32_parse_alu_1().
int nds32_read_opcode | ( | struct nds32 * | nds32, |
uint32_t | address, | ||
uint32_t * | value | ||
) |
Definition at line 18 of file nds32_disassembler.c.
References be_to_h_u32(), ERROR_FAIL, ERROR_OK, LOG_DEBUG, LOG_ERROR, nds32::target, target_read_buffer(), and target_was_examined().
Referenced by COMMAND_HANDLER(), nds32_examine_debug_reason(), and nds32_v3_get_exception_address().
|
static |
Definition at line 16 of file nds32_disassembler.c.
Referenced by nds32_calculate_lsmw_access_range().
|
static |
Definition at line 2827 of file nds32_disassembler.c.
Referenced by nds32_extract_field_8u().