Rizin
unix-like reverse engineering framework and cli tools
|
#include "rz_types.h"
Go to the source code of this file.
Classes | |
struct | xtensa_isa_opaque |
struct | xtensa_funcUnit_use_struct |
Macros | |
#define | XTENSA_ISA_VERSION 7000 |
#define | uint32 unsigned int |
#define | XTENSA_UNDEFINED -1 |
Typedefs | |
typedef struct xtensa_isa_opaque * | xtensa_isa |
typedef int | xtensa_opcode |
typedef int | xtensa_format |
typedef int | xtensa_regfile |
typedef int | xtensa_state |
typedef int | xtensa_sysreg |
typedef int | xtensa_interface |
typedef int | xtensa_funcUnit |
typedef enum xtensa_isa_status_enum | xtensa_isa_status |
typedef uint32 | xtensa_insnbuf_word |
typedef xtensa_insnbuf_word * | xtensa_insnbuf |
typedef struct xtensa_funcUnit_use_struct | xtensa_funcUnit_use |
Variables | |
xtensa_isa | xtensa_default_isa |
Definition at line 39 of file xtensa-isa.h.
#define XTENSA_ISA_VERSION 7000 |
Definition at line 36 of file xtensa-isa.h.
#define XTENSA_UNDEFINED -1 |
Definition at line 93 of file xtensa-isa.h.
typedef int xtensa_format |
Definition at line 84 of file xtensa-isa.h.
typedef int xtensa_funcUnit |
Definition at line 89 of file xtensa-isa.h.
typedef struct xtensa_funcUnit_use_struct xtensa_funcUnit_use |
typedef xtensa_insnbuf_word* xtensa_insnbuf |
Definition at line 179 of file xtensa-isa.h.
typedef uint32 xtensa_insnbuf_word |
Definition at line 178 of file xtensa-isa.h.
typedef int xtensa_interface |
Definition at line 88 of file xtensa-isa.h.
typedef struct xtensa_isa_opaque * xtensa_isa |
typedef enum xtensa_isa_status_enum xtensa_isa_status |
typedef int xtensa_opcode |
Definition at line 83 of file xtensa-isa.h.
typedef int xtensa_regfile |
Definition at line 85 of file xtensa-isa.h.
typedef int xtensa_state |
Definition at line 86 of file xtensa-isa.h.
typedef int xtensa_sysreg |
Definition at line 87 of file xtensa-isa.h.
Definition at line 149 of file xtensa-isa.h.
xtensa_format xtensa_format_decode | ( | xtensa_isa | isa, |
const xtensa_insnbuf | insn | ||
) |
Definition at line 570 of file xtensa-isa.c.
References xtensa_isa_internal_struct::format_decode_fn, xtensa_isa_bad_format, XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
Referenced by print_insn_xtensa(), xtensa_insnbuf_to_chars(), and xtensa_op().
int xtensa_format_encode | ( | xtensa_isa | isa, |
xtensa_format | fmt, | ||
xtensa_insnbuf | insn | ||
) |
Definition at line 587 of file xtensa-isa.c.
References CHECK_FORMAT, xtensa_format_internal_struct::encode_fn, and xtensa_isa_internal_struct::formats.
int xtensa_format_get_slot | ( | xtensa_isa | isa, |
xtensa_format | fmt, | ||
int | slot, | ||
const xtensa_insnbuf | insn, | ||
xtensa_insnbuf | slotbuf | ||
) |
Definition at line 629 of file xtensa-isa.c.
References CHECK_FORMAT, CHECK_SLOT, xtensa_isa_internal_struct::formats, xtensa_slot_internal_struct::get_fn, xtensa_format_internal_struct::slot_id, and xtensa_isa_internal_struct::slots.
Referenced by print_insn_xtensa(), and xtensa_op().
int xtensa_format_length | ( | xtensa_isa | isa, |
xtensa_format | fmt | ||
) |
Definition at line 597 of file xtensa-isa.c.
References CHECK_FORMAT, xtensa_isa_internal_struct::formats, xtensa_format_internal_struct::length, and XTENSA_UNDEFINED.
Referenced by print_insn_xtensa(), and xtensa_insnbuf_to_chars().
xtensa_format xtensa_format_lookup | ( | xtensa_isa | isa, |
const char * | fmtname | ||
) |
Definition at line 544 of file xtensa-isa.c.
References xtensa_isa_internal_struct::formats, xtensa_format_internal_struct::name, xtensa_isa_internal_struct::num_formats, rz_str_casecmp(), sprintf, xtensa_isa_bad_format, XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
const char* xtensa_format_name | ( | xtensa_isa | isa, |
xtensa_format | fmt | ||
) |
Definition at line 535 of file xtensa-isa.c.
References CHECK_FORMAT, xtensa_isa_internal_struct::formats, xtensa_format_internal_struct::name, and NULL.
int xtensa_format_num_slots | ( | xtensa_isa | isa, |
xtensa_format | fmt | ||
) |
Definition at line 606 of file xtensa-isa.c.
References CHECK_FORMAT, xtensa_isa_internal_struct::formats, xtensa_format_internal_struct::num_slots, and XTENSA_UNDEFINED.
Referenced by print_insn_xtensa(), and xtensa_op().
int xtensa_format_set_slot | ( | xtensa_isa | isa, |
xtensa_format | fmt, | ||
int | slot, | ||
xtensa_insnbuf | insn, | ||
const xtensa_insnbuf | slotbuf | ||
) |
Definition at line 645 of file xtensa-isa.c.
References CHECK_FORMAT, CHECK_SLOT, xtensa_isa_internal_struct::formats, xtensa_slot_internal_struct::set_fn, xtensa_format_internal_struct::slot_id, and xtensa_isa_internal_struct::slots.
xtensa_opcode xtensa_format_slot_nop_opcode | ( | xtensa_isa | isa, |
xtensa_format | fmt, | ||
int | slot | ||
) |
Definition at line 615 of file xtensa-isa.c.
References CHECK_FORMAT, CHECK_SLOT, xtensa_isa_internal_struct::formats, xtensa_slot_internal_struct::nop_name, xtensa_format_internal_struct::slot_id, xtensa_isa_internal_struct::slots, xtensa_opcode_lookup(), and XTENSA_UNDEFINED.
xtensa_funcUnit xtensa_funcUnit_lookup | ( | xtensa_isa | isa, |
const char * | fname | ||
) |
Definition at line 1806 of file xtensa-isa.c.
References create_tags_rz::fname, xtensa_lookup_entry_struct::fun, xtensa_isa_internal_struct::funcUnit_lookup_table, xtensa_isa_internal_struct::num_funcUnits, sprintf, xtensa_lookup_entry_struct::u, xtensa_isa_bad_funcUnit, xtensa_isa_name_compare(), XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
const char* xtensa_funcUnit_name | ( | xtensa_isa | isa, |
xtensa_funcUnit | fun | ||
) |
Definition at line 1839 of file xtensa-isa.c.
References CHECK_FUNCUNIT, xtensa_isa_internal_struct::funcUnits, xtensa_funcUnit_internal_struct::name, and NULL.
int xtensa_funcUnit_num_copies | ( | xtensa_isa | isa, |
xtensa_funcUnit | fun | ||
) |
Definition at line 1848 of file xtensa-isa.c.
References CHECK_FUNCUNIT, xtensa_isa_internal_struct::funcUnits, xtensa_funcUnit_internal_struct::num_copies, and XTENSA_UNDEFINED.
xtensa_insnbuf xtensa_insnbuf_alloc | ( | xtensa_isa | isa | ) |
Definition at line 88 of file xtensa-isa.c.
References CHECK_ALLOC, malloc(), and xtensa_insnbuf_size().
Referenced by print_insn_xtensa(), xtensa_op(), and xtensa_operand_encode().
void xtensa_insnbuf_free | ( | xtensa_isa | isa, |
xtensa_insnbuf | buf | ||
) |
void xtensa_insnbuf_from_chars | ( | xtensa_isa | isa, |
xtensa_insnbuf | insn, | ||
const unsigned char * | cp, | ||
int | num_chars | ||
) |
Definition at line 196 of file xtensa-isa.c.
References byte_to_bit_index(), byte_to_word_index(), i, xtensa_isa_internal_struct::is_big_endian, xtensa_isa_internal_struct::length_decode_fn, memset(), start, xtensa_insnbuf_size(), xtensa_isa_maxlength(), and XTENSA_UNDEFINED.
Referenced by print_insn_xtensa(), and xtensa_op().
int xtensa_insnbuf_size | ( | xtensa_isa | isa | ) |
Definition at line 80 of file xtensa-isa.c.
References xtensa_isa_internal_struct::insnbuf_size.
Referenced by print_insn_xtensa(), xtensa_insnbuf_alloc(), xtensa_insnbuf_from_chars(), and xtensa_op().
int xtensa_insnbuf_to_chars | ( | xtensa_isa | isa, |
const xtensa_insnbuf | insn, | ||
unsigned char * | cp, | ||
int | num_chars | ||
) |
Definition at line 133 of file xtensa-isa.c.
References byte_to_bit_index(), byte_to_word_index(), i, xtensa_isa_internal_struct::is_big_endian, start, xtensa_format_decode(), xtensa_format_length(), xtensa_isa_buffer_overflow, xtensa_isa_maxlength(), XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
int xtensa_interface_class_id | ( | xtensa_isa | isa, |
xtensa_interface | intf | ||
) |
Definition at line 1782 of file xtensa-isa.c.
References CHECK_INTERFACE, xtensa_interface_internal_struct::class_id, xtensa_isa_internal_struct::interfaces, and XTENSA_UNDEFINED.
int xtensa_interface_has_side_effect | ( | xtensa_isa | isa, |
xtensa_interface | intf | ||
) |
Definition at line 1770 of file xtensa-isa.c.
References CHECK_INTERFACE, xtensa_interface_internal_struct::flags, xtensa_isa_internal_struct::interfaces, XTENSA_INTERFACE_HAS_SIDE_EFFECT, and XTENSA_UNDEFINED.
char xtensa_interface_inout | ( | xtensa_isa | isa, |
xtensa_interface | intf | ||
) |
Definition at line 1761 of file xtensa-isa.c.
References CHECK_INTERFACE, xtensa_interface_internal_struct::inout, and xtensa_isa_internal_struct::interfaces.
xtensa_interface xtensa_interface_lookup | ( | xtensa_isa | isa, |
const char * | ifname | ||
) |
Definition at line 1711 of file xtensa-isa.c.
References xtensa_isa_internal_struct::interface_lookup_table, xtensa_lookup_entry_struct::intf, xtensa_isa_internal_struct::num_interfaces, sprintf, xtensa_lookup_entry_struct::u, xtensa_isa_bad_interface, xtensa_isa_name_compare(), XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
const char* xtensa_interface_name | ( | xtensa_isa | isa, |
xtensa_interface | intf | ||
) |
Definition at line 1743 of file xtensa-isa.c.
References CHECK_INTERFACE, xtensa_isa_internal_struct::interfaces, xtensa_interface_internal_struct::name, and NULL.
int xtensa_interface_num_bits | ( | xtensa_isa | isa, |
xtensa_interface | intf | ||
) |
Definition at line 1752 of file xtensa-isa.c.
References CHECK_INTERFACE, xtensa_isa_internal_struct::interfaces, xtensa_interface_internal_struct::num_bits, and XTENSA_UNDEFINED.
xtensa_interface xtensa_interfaceOperand_interface | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | ifOp | ||
) |
Definition at line 1374 of file xtensa-isa.c.
References CHECK_INTERFACE_OPERAND, CHECK_OPCODE, xtensa_opcode_internal_struct::iclass_id, xtensa_isa_internal_struct::iclasses, xtensa_iclass_internal_struct::interfaceOperands, opc, xtensa_isa_internal_struct::opcodes, and XTENSA_UNDEFINED.
xtensa_isa_status xtensa_isa_errno | ( | xtensa_isa | isa | ) |
char* xtensa_isa_error_msg | ( | xtensa_isa | isa | ) |
void xtensa_isa_free | ( | xtensa_isa | isa | ) |
Definition at line 344 of file xtensa-isa.c.
References free(), xtensa_isa_internal_struct::funcUnit_lookup_table, xtensa_isa_internal_struct::interface_lookup_table, n, xtensa_isa_internal_struct::opname_lookup_table, xtensa_isa_internal_struct::state_lookup_table, xtensa_isa_internal_struct::sysreg_lookup_table, and xtensa_isa_internal_struct::sysreg_table.
xtensa_isa xtensa_isa_init | ( | xtensa_isa_status * | errno_p, |
char ** | error_msg_p | ||
) |
Definition at line 248 of file xtensa-isa.c.
References bfd_malloc, calloc(), CHECK_ALLOC_FOR_INIT, xtensa_lookup_entry_struct::fun, xtensa_isa_internal_struct::funcUnit_lookup_table, xtensa_isa_internal_struct::funcUnits, xtensa_isa_internal_struct::insn_size, xtensa_isa_internal_struct::insnbuf_size, xtensa_isa_internal_struct::interface_lookup_table, xtensa_isa_internal_struct::interfaces, xtensa_lookup_entry_struct::intf, xtensa_sysreg_internal_struct::is_user, xtensa_lookup_entry_struct::key, xtensa_isa_internal_struct::max_sysreg_num, n, xtensa_opcode_internal_struct::name, xtensa_interface_internal_struct::name, xtensa_funcUnit_internal_struct::name, xtensa_state_internal_struct::name, xtensa_sysreg_internal_struct::name, NULL, xtensa_isa_internal_struct::num_funcUnits, xtensa_isa_internal_struct::num_interfaces, xtensa_isa_internal_struct::num_opcodes, xtensa_isa_internal_struct::num_states, xtensa_isa_internal_struct::num_sysregs, xtensa_sysreg_internal_struct::number, xtensa_lookup_entry_struct::opcode, xtensa_isa_internal_struct::opcodes, xtensa_isa_internal_struct::opname_lookup_table, qsort(), xtensa_lookup_entry_struct::state, xtensa_isa_internal_struct::state_lookup_table, xtensa_isa_internal_struct::states, xtensa_lookup_entry_struct::sysreg, xtensa_isa_internal_struct::sysreg_lookup_table, xtensa_isa_internal_struct::sysreg_table, xtensa_isa_internal_struct::sysregs, xtensa_lookup_entry_struct::u, xtensa_isa_name_compare(), xtensa_modules, and XTENSA_UNDEFINED.
Referenced by print_insn_xtensa(), and xtensa_op().
int xtensa_isa_length_from_chars | ( | xtensa_isa | isa, |
const unsigned char * | cp | ||
) |
Definition at line 413 of file xtensa-isa.c.
References xtensa_isa_internal_struct::length_decode_fn.
int xtensa_isa_maxlength | ( | xtensa_isa | isa | ) |
Definition at line 405 of file xtensa-isa.c.
References xtensa_isa_internal_struct::insn_size.
Referenced by fetch_data(), print_insn_xtensa(), xtensa_insnbuf_from_chars(), and xtensa_insnbuf_to_chars().
int xtensa_isa_num_formats | ( | xtensa_isa | isa | ) |
int xtensa_isa_num_funcUnits | ( | xtensa_isa | isa | ) |
int xtensa_isa_num_interfaces | ( | xtensa_isa | isa | ) |
int xtensa_isa_num_opcodes | ( | xtensa_isa | isa | ) |
Definition at line 461 of file xtensa-isa.c.
References xtensa_isa_internal_struct::num_opcodes.
Referenced by xtensa_isa_num_pipe_stages().
int xtensa_isa_num_pipe_stages | ( | xtensa_isa | isa | ) |
Definition at line 421 of file xtensa-isa.c.
References i, xtensa_funcUnit_use_struct::stage, xtensa_isa_num_opcodes(), xtensa_opcode_funcUnit_use(), xtensa_opcode_num_funcUnit_uses(), and XTENSA_UNDEFINED.
int xtensa_isa_num_regfiles | ( | xtensa_isa | isa | ) |
int xtensa_isa_num_states | ( | xtensa_isa | isa | ) |
int xtensa_isa_num_sysregs | ( | xtensa_isa | isa | ) |
xtensa_opcode xtensa_opcode_decode | ( | xtensa_isa | isa, |
xtensa_format | fmt, | ||
int | slot, | ||
const xtensa_insnbuf | slotbuf | ||
) |
Definition at line 708 of file xtensa-isa.c.
References CHECK_FORMAT, CHECK_SLOT, xtensa_isa_internal_struct::formats, opc, xtensa_slot_internal_struct::opcode_decode_fn, xtensa_format_internal_struct::slot_id, xtensa_isa_internal_struct::slots, xtensa_isa_bad_opcode, XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
Referenced by print_insn_xtensa(), and xtensa_op().
int xtensa_opcode_encode | ( | xtensa_isa | isa, |
xtensa_format | fmt, | ||
int | slot, | ||
xtensa_insnbuf | slotbuf, | ||
xtensa_opcode | opc | ||
) |
Definition at line 732 of file xtensa-isa.c.
References CHECK_FORMAT, CHECK_OPCODE, CHECK_SLOT, xtensa_opcode_internal_struct::encode_fns, xtensa_isa_internal_struct::formats, xtensa_format_internal_struct::name, xtensa_opcode_internal_struct::name, opc, xtensa_isa_internal_struct::opcodes, xtensa_format_internal_struct::slot_id, sprintf, xtensa_isa_wrong_slot, xtisa_errno, and xtisa_error_msg.
xtensa_funcUnit_use* xtensa_opcode_funcUnit_use | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | u | ||
) |
Definition at line 861 of file xtensa-isa.c.
References CHECK_OPCODE, xtensa_opcode_internal_struct::funcUnit_uses, xtensa_opcode_internal_struct::name, NULL, xtensa_opcode_internal_struct::num_funcUnit_uses, opc, xtensa_isa_internal_struct::opcodes, sprintf, xtensa_isa_bad_funcUnit, xtisa_errno, and xtisa_error_msg.
Referenced by xtensa_isa_num_pipe_stages().
int xtensa_opcode_is_branch | ( | xtensa_isa | isa, |
xtensa_opcode | opc | ||
) |
Definition at line 768 of file xtensa-isa.c.
References CHECK_OPCODE, xtensa_opcode_internal_struct::flags, opc, xtensa_isa_internal_struct::opcodes, XTENSA_OPCODE_IS_BRANCH, and XTENSA_UNDEFINED.
int xtensa_opcode_is_call | ( | xtensa_isa | isa, |
xtensa_opcode | opc | ||
) |
Definition at line 804 of file xtensa-isa.c.
References CHECK_OPCODE, xtensa_opcode_internal_struct::flags, opc, xtensa_isa_internal_struct::opcodes, XTENSA_OPCODE_IS_CALL, and XTENSA_UNDEFINED.
int xtensa_opcode_is_jump | ( | xtensa_isa | isa, |
xtensa_opcode | opc | ||
) |
Definition at line 780 of file xtensa-isa.c.
References CHECK_OPCODE, xtensa_opcode_internal_struct::flags, opc, xtensa_isa_internal_struct::opcodes, XTENSA_OPCODE_IS_JUMP, and XTENSA_UNDEFINED.
int xtensa_opcode_is_loop | ( | xtensa_isa | isa, |
xtensa_opcode | opc | ||
) |
Definition at line 792 of file xtensa-isa.c.
References CHECK_OPCODE, xtensa_opcode_internal_struct::flags, opc, xtensa_isa_internal_struct::opcodes, XTENSA_OPCODE_IS_LOOP, and XTENSA_UNDEFINED.
xtensa_opcode xtensa_opcode_lookup | ( | xtensa_isa | isa, |
const char * | opname | ||
) |
Definition at line 676 of file xtensa-isa.c.
References xtensa_isa_internal_struct::num_opcodes, xtensa_lookup_entry_struct::opcode, xtensa_isa_internal_struct::opname_lookup_table, sprintf, xtensa_lookup_entry_struct::u, xtensa_isa_bad_opcode, xtensa_isa_name_compare(), XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
Referenced by xtensa_format_slot_nop_opcode().
const char* xtensa_opcode_name | ( | xtensa_isa | isa, |
xtensa_opcode | opc | ||
) |
Definition at line 759 of file xtensa-isa.c.
References CHECK_OPCODE, xtensa_opcode_internal_struct::name, NULL, opc, and xtensa_isa_internal_struct::opcodes.
Referenced by print_insn_xtensa().
int xtensa_opcode_num_funcUnit_uses | ( | xtensa_isa | isa, |
xtensa_opcode | opc | ||
) |
Definition at line 852 of file xtensa-isa.c.
References CHECK_OPCODE, xtensa_opcode_internal_struct::num_funcUnit_uses, opc, xtensa_isa_internal_struct::opcodes, and XTENSA_UNDEFINED.
Referenced by xtensa_isa_num_pipe_stages().
int xtensa_opcode_num_interfaceOperands | ( | xtensa_isa | isa, |
xtensa_opcode | opc | ||
) |
Definition at line 840 of file xtensa-isa.c.
References CHECK_OPCODE, xtensa_opcode_internal_struct::iclass_id, xtensa_isa_internal_struct::iclasses, xtensa_iclass_internal_struct::num_interfaceOperands, opc, xtensa_isa_internal_struct::opcodes, and XTENSA_UNDEFINED.
int xtensa_opcode_num_operands | ( | xtensa_isa | isa, |
xtensa_opcode | opc | ||
) |
Definition at line 816 of file xtensa-isa.c.
References CHECK_OPCODE, xtensa_opcode_internal_struct::iclass_id, xtensa_isa_internal_struct::iclasses, xtensa_iclass_internal_struct::num_operands, opc, xtensa_isa_internal_struct::opcodes, and XTENSA_UNDEFINED.
Referenced by print_insn_xtensa().
int xtensa_opcode_num_stateOperands | ( | xtensa_isa | isa, |
xtensa_opcode | opc | ||
) |
Definition at line 828 of file xtensa-isa.c.
References CHECK_OPCODE, xtensa_opcode_internal_struct::iclass_id, xtensa_isa_internal_struct::iclasses, xtensa_iclass_internal_struct::num_stateOperands, opc, xtensa_isa_internal_struct::opcodes, and XTENSA_UNDEFINED.
int xtensa_operand_decode | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd, | ||
uint32 * | valp | ||
) |
Definition at line 1128 of file xtensa-isa.c.
References xtensa_operand_internal_struct::decode, get_operand(), opc, sprintf, xtensa_isa_bad_value, xtisa_errno, and xtisa_error_msg.
Referenced by esil_branch_check_bit_imm(), esil_set_shift_amount_imm(), esil_shift_logic_imm(), and print_xtensa_operand().
int xtensa_operand_do_reloc | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd, | ||
uint32 * | valp, | ||
uint32 | pc | ||
) |
Definition at line 1239 of file xtensa-isa.c.
References xtensa_operand_internal_struct::do_reloc, xtensa_operand_internal_struct::flags, get_operand(), opc, pc, sprintf, xtensa_isa_bad_value, xtensa_isa_internal_error, XTENSA_OPERAND_IS_PCRELATIVE, xtisa_errno, and xtisa_error_msg.
int xtensa_operand_encode | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd, | ||
uint32 * | valp | ||
) |
Definition at line 1053 of file xtensa-isa.c.
References CHECK_ALLOC, xtensa_operand_internal_struct::decode, xtensa_operand_internal_struct::encode, xtensa_operand_internal_struct::field_id, xtensa_slot_internal_struct::get_field_fns, get_operand(), xtensa_isa_internal_struct::num_slots, opc, xtensa_slot_internal_struct::set_field_fns, xtensa_isa_internal_struct::slots, sprintf, uint32, xtensa_insnbuf_alloc(), xtensa_isa_bad_value, xtensa_isa_internal_error, xtensa_isa_no_field, XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
int xtensa_operand_get_field | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd, | ||
xtensa_format | fmt, | ||
int | slot, | ||
const xtensa_insnbuf | slotbuf, | ||
uint32 * | valp | ||
) |
Definition at line 975 of file xtensa-isa.c.
References CHECK_FORMAT, CHECK_SLOT, xtensa_operand_internal_struct::field_id, xtensa_isa_internal_struct::formats, xtensa_slot_internal_struct::get_field_fns, get_operand(), xtensa_format_internal_struct::name, xtensa_operand_internal_struct::name, opc, xtensa_format_internal_struct::slot_id, xtensa_isa_internal_struct::slots, sprintf, xtensa_isa_no_field, xtensa_isa_wrong_slot, XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
Referenced by esil_abs_neg(), esil_add_imm(), esil_add_sub(), esil_bitwise_op(), esil_branch_check_bit(), esil_branch_check_bit_imm(), esil_branch_check_mask(), esil_branch_compare(), esil_branch_compare_imm(), esil_branch_compare_single(), esil_call(), esil_callx(), esil_extract_unsigned(), esil_load_imm(), esil_load_relative(), esil_move(), esil_move_conditional(), esil_move_imm(), esil_set_shift_amount(), esil_set_shift_amount_imm(), esil_shift_logic_imm(), esil_shift_logic_sar(), esil_store_imm(), print_insn_xtensa(), and xtensa_check_stack_op().
char xtensa_operand_inout | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd | ||
) |
Definition at line 952 of file xtensa-isa.c.
References CHECK_OPCODE, CHECK_OPERAND, xtensa_opcode_internal_struct::iclass_id, xtensa_isa_internal_struct::iclasses, xtensa_arg_internal_struct::inout, opc, xtensa_isa_internal_struct::opcodes, and xtensa_iclass_internal_struct::operands.
int xtensa_operand_is_known_reg | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd | ||
) |
Definition at line 1203 of file xtensa-isa.c.
References xtensa_operand_internal_struct::flags, get_operand(), opc, XTENSA_OPERAND_IS_UNKNOWN, and XTENSA_UNDEFINED.
int xtensa_operand_is_PCrelative | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd | ||
) |
Definition at line 1221 of file xtensa-isa.c.
References xtensa_operand_internal_struct::flags, get_operand(), opc, XTENSA_OPERAND_IS_PCRELATIVE, and XTENSA_UNDEFINED.
Referenced by print_xtensa_operand().
int xtensa_operand_is_register | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd | ||
) |
Definition at line 1155 of file xtensa-isa.c.
References xtensa_operand_internal_struct::flags, get_operand(), opc, XTENSA_OPERAND_IS_REGISTER, and XTENSA_UNDEFINED.
Referenced by print_xtensa_operand().
int xtensa_operand_is_visible | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd | ||
) |
Definition at line 924 of file xtensa-isa.c.
References CHECK_OPCODE, CHECK_OPERAND, xtensa_operand_internal_struct::flags, xtensa_opcode_internal_struct::iclass_id, xtensa_isa_internal_struct::iclasses, xtensa_arg_internal_struct::inout, opc, xtensa_isa_internal_struct::opcodes, xtensa_arg_internal_struct::operand_id, xtensa_iclass_internal_struct::operands, xtensa_isa_internal_struct::operands, xtensa_arg_internal_struct::u, XTENSA_OPERAND_IS_INVISIBLE, and XTENSA_UNDEFINED.
Referenced by print_insn_xtensa().
const char* xtensa_operand_name | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd | ||
) |
Definition at line 910 of file xtensa-isa.c.
References get_operand(), xtensa_operand_internal_struct::name, NULL, and opc.
int xtensa_operand_num_regs | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd | ||
) |
Definition at line 1188 of file xtensa-isa.c.
References get_operand(), xtensa_operand_internal_struct::num_regs, opc, and XTENSA_UNDEFINED.
Referenced by print_xtensa_operand().
xtensa_regfile xtensa_operand_regfile | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd | ||
) |
Definition at line 1173 of file xtensa-isa.c.
References get_operand(), opc, xtensa_operand_internal_struct::regfile, and XTENSA_UNDEFINED.
Referenced by esil_abs_neg(), esil_add_imm(), esil_add_sub(), esil_bitwise_op(), esil_branch_check_bit(), esil_branch_check_bit_imm(), esil_branch_check_mask(), esil_branch_compare(), esil_branch_compare_imm(), esil_branch_compare_single(), esil_callx(), esil_extract_unsigned(), esil_load_imm(), esil_load_relative(), esil_move(), esil_move_conditional(), esil_move_imm(), esil_set_shift_amount(), esil_shift_logic_imm(), esil_shift_logic_sar(), esil_store_imm(), and print_xtensa_operand().
int xtensa_operand_set_field | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd, | ||
xtensa_format | fmt, | ||
int | slot, | ||
xtensa_insnbuf | slotbuf, | ||
uint32 | val | ||
) |
Definition at line 1014 of file xtensa-isa.c.
References CHECK_FORMAT, CHECK_SLOT, xtensa_operand_internal_struct::field_id, xtensa_isa_internal_struct::formats, get_operand(), xtensa_format_internal_struct::name, xtensa_operand_internal_struct::name, opc, xtensa_slot_internal_struct::set_field_fns, xtensa_format_internal_struct::slot_id, xtensa_isa_internal_struct::slots, sprintf, val, xtensa_isa_no_field, xtensa_isa_wrong_slot, XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
int xtensa_operand_undo_reloc | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | opnd, | ||
uint32 * | valp, | ||
uint32 | pc | ||
) |
Definition at line 1274 of file xtensa-isa.c.
References xtensa_operand_internal_struct::flags, get_operand(), opc, pc, sprintf, xtensa_operand_internal_struct::undo_reloc, xtensa_isa_bad_value, xtensa_isa_internal_error, XTENSA_OPERAND_IS_PCRELATIVE, xtisa_errno, and xtisa_error_msg.
Referenced by print_xtensa_operand().
xtensa_regfile xtensa_regfile_lookup | ( | xtensa_isa | isa, |
const char * | name | ||
) |
Definition at line 1405 of file xtensa-isa.c.
References filename_cmp(), n, xtensa_regfile_internal_struct::name, xtensa_isa_internal_struct::num_regfiles, xtensa_isa_internal_struct::regfiles, sprintf, xtensa_isa_bad_regfile, XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
xtensa_regfile xtensa_regfile_lookup_shortname | ( | xtensa_isa | isa, |
const char * | shortname | ||
) |
Definition at line 1432 of file xtensa-isa.c.
References filename_cmp(), n, xtensa_isa_internal_struct::num_regfiles, xtensa_regfile_internal_struct::parent, xtensa_isa_internal_struct::regfiles, xtensa_regfile_internal_struct::shortname, sprintf, xtensa_isa_bad_regfile, XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
const char* xtensa_regfile_name | ( | xtensa_isa | isa, |
xtensa_regfile | rf | ||
) |
Definition at line 1465 of file xtensa-isa.c.
References CHECK_REGFILE, xtensa_regfile_internal_struct::name, NULL, and xtensa_isa_internal_struct::regfiles.
int xtensa_regfile_num_bits | ( | xtensa_isa | isa, |
xtensa_regfile | rf | ||
) |
Definition at line 1492 of file xtensa-isa.c.
References CHECK_REGFILE, xtensa_regfile_internal_struct::num_bits, xtensa_isa_internal_struct::regfiles, and XTENSA_UNDEFINED.
int xtensa_regfile_num_entries | ( | xtensa_isa | isa, |
xtensa_regfile | rf | ||
) |
Definition at line 1501 of file xtensa-isa.c.
References CHECK_REGFILE, xtensa_regfile_internal_struct::num_entries, xtensa_isa_internal_struct::regfiles, and XTENSA_UNDEFINED.
const char* xtensa_regfile_shortname | ( | xtensa_isa | isa, |
xtensa_regfile | rf | ||
) |
Definition at line 1474 of file xtensa-isa.c.
References CHECK_REGFILE, NULL, xtensa_isa_internal_struct::regfiles, and xtensa_regfile_internal_struct::shortname.
Referenced by esil_abs_neg(), esil_add_imm(), esil_add_sub(), esil_bitwise_op(), esil_branch_check_bit(), esil_branch_check_bit_imm(), esil_branch_check_mask(), esil_branch_compare(), esil_branch_compare_imm(), esil_branch_compare_single(), esil_callx(), esil_extract_unsigned(), esil_load_imm(), esil_load_relative(), esil_move(), esil_move_conditional(), esil_move_imm(), esil_set_shift_amount(), esil_shift_logic_imm(), esil_shift_logic_sar(), esil_store_imm(), and print_xtensa_operand().
xtensa_regfile xtensa_regfile_view_parent | ( | xtensa_isa | isa, |
xtensa_regfile | rf | ||
) |
Definition at line 1483 of file xtensa-isa.c.
References CHECK_REGFILE, xtensa_regfile_internal_struct::parent, xtensa_isa_internal_struct::regfiles, and XTENSA_UNDEFINED.
int xtensa_state_is_exported | ( | xtensa_isa | isa, |
xtensa_state | st | ||
) |
Definition at line 1574 of file xtensa-isa.c.
References CHECK_STATE, xtensa_state_internal_struct::flags, xtensa_isa_internal_struct::states, XTENSA_STATE_IS_EXPORTED, and XTENSA_UNDEFINED.
int xtensa_state_is_shared_or | ( | xtensa_isa | isa, |
xtensa_state | st | ||
) |
Definition at line 1586 of file xtensa-isa.c.
References CHECK_STATE, xtensa_state_internal_struct::flags, xtensa_isa_internal_struct::states, XTENSA_STATE_IS_SHARED_OR, and XTENSA_UNDEFINED.
xtensa_state xtensa_state_lookup | ( | xtensa_isa | isa, |
const char * | name | ||
) |
Definition at line 1525 of file xtensa-isa.c.
References name, xtensa_isa_internal_struct::num_states, sprintf, xtensa_lookup_entry_struct::state, xtensa_isa_internal_struct::state_lookup_table, xtensa_lookup_entry_struct::u, xtensa_isa_bad_state, xtensa_isa_name_compare(), XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
const char* xtensa_state_name | ( | xtensa_isa | isa, |
xtensa_state | st | ||
) |
Definition at line 1556 of file xtensa-isa.c.
References CHECK_STATE, xtensa_state_internal_struct::name, NULL, and xtensa_isa_internal_struct::states.
int xtensa_state_num_bits | ( | xtensa_isa | isa, |
xtensa_state | st | ||
) |
Definition at line 1565 of file xtensa-isa.c.
References CHECK_STATE, xtensa_state_internal_struct::num_bits, xtensa_isa_internal_struct::states, and XTENSA_UNDEFINED.
char xtensa_stateOperand_inout | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | stOp | ||
) |
Definition at line 1341 of file xtensa-isa.c.
References CHECK_OPCODE, CHECK_STATE_OPERAND, xtensa_opcode_internal_struct::iclass_id, xtensa_isa_internal_struct::iclasses, xtensa_arg_internal_struct::inout, opc, xtensa_isa_internal_struct::opcodes, and xtensa_iclass_internal_struct::stateOperands.
xtensa_state xtensa_stateOperand_state | ( | xtensa_isa | isa, |
xtensa_opcode | opc, | ||
int | stOp | ||
) |
Definition at line 1326 of file xtensa-isa.c.
References CHECK_OPCODE, CHECK_STATE_OPERAND, xtensa_opcode_internal_struct::iclass_id, xtensa_isa_internal_struct::iclasses, opc, xtensa_isa_internal_struct::opcodes, xtensa_arg_internal_struct::state, xtensa_iclass_internal_struct::stateOperands, xtensa_arg_internal_struct::u, and XTENSA_UNDEFINED.
int xtensa_sysreg_is_user | ( | xtensa_isa | isa, |
xtensa_sysreg | sysreg | ||
) |
Definition at line 1684 of file xtensa-isa.c.
References CHECK_SYSREG, xtensa_sysreg_internal_struct::is_user, xtensa_isa_internal_struct::sysregs, and XTENSA_UNDEFINED.
xtensa_sysreg xtensa_sysreg_lookup | ( | xtensa_isa | isa, |
int | num, | ||
int | is_user | ||
) |
Definition at line 1613 of file xtensa-isa.c.
References xtensa_isa_internal_struct::max_sysreg_num, num, xtensa_isa_internal_struct::sysreg_table, xtensa_isa_bad_sysreg, XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
xtensa_sysreg xtensa_sysreg_lookup_name | ( | xtensa_isa | isa, |
const char * | name | ||
) |
Definition at line 1634 of file xtensa-isa.c.
References name, xtensa_isa_internal_struct::num_sysregs, sprintf, xtensa_lookup_entry_struct::sysreg, xtensa_isa_internal_struct::sysreg_lookup_table, xtensa_lookup_entry_struct::u, xtensa_isa_bad_sysreg, xtensa_isa_name_compare(), XTENSA_UNDEFINED, xtisa_errno, and xtisa_error_msg.
const char* xtensa_sysreg_name | ( | xtensa_isa | isa, |
xtensa_sysreg | sysreg | ||
) |
Definition at line 1666 of file xtensa-isa.c.
References CHECK_SYSREG, xtensa_sysreg_internal_struct::name, NULL, and xtensa_isa_internal_struct::sysregs.
int xtensa_sysreg_number | ( | xtensa_isa | isa, |
xtensa_sysreg | sysreg | ||
) |
Definition at line 1675 of file xtensa-isa.c.
References CHECK_SYSREG, xtensa_sysreg_internal_struct::number, xtensa_isa_internal_struct::sysregs, and XTENSA_UNDEFINED.
|
extern |
Definition at line 147 of file elf32-xtensa.c.
Referenced by xtensa_op().