Rizin
unix-like reverse engineering framework and cli tools
|
Go to the source code of this file.
Macros | |
#define | MASK_RS1 (OP_MASK_RS1 << OP_SH_RS1) |
#define | MASK_RS2 (OP_MASK_RS2 << OP_SH_RS2) |
#define | MASK_RD (OP_MASK_RD << OP_SH_RD) |
#define | MASK_CRS2 (OP_MASK_CRS2 << OP_SH_CRS2) |
#define | MASK_IMM ENCODE_ITYPE_IMM (-1U) |
#define | MASK_RVC_IMM ENCODE_RVC_IMM (-1U) |
#define | MASK_UIMM ENCODE_UTYPE_IMM (-1U) |
#define | MASK_RM (OP_MASK_RM << OP_SH_RM) |
#define | MASK_PRED (OP_MASK_PRED << OP_SH_PRED) |
#define | MASK_SUCC (OP_MASK_SUCC << OP_SH_SUCC) |
#define | MASK_AQ (OP_MASK_AQ << OP_SH_AQ) |
#define | MASK_RL (OP_MASK_RL << OP_SH_RL) |
#define | MASK_AQRL (MASK_AQ | MASK_RL) |
#define | RISCV_NUM_OPCODES ((sizeof riscv_builtin_opcodes) / (sizeof (riscv_builtin_opcodes[0]))) |
Functions | |
static int | match_opcode (const struct riscv_opcode *op, insn_t insn) |
static int | match_never (const struct riscv_opcode *op, insn_t insn) |
static int | match_rs1_eq_rs2 (const struct riscv_opcode *op, insn_t insn) |
static int | match_rd_nonzero (const struct riscv_opcode *op, insn_t insn) |
static int | match_c_add (const struct riscv_opcode *op, insn_t insn) |
static int | match_c_lui (const struct riscv_opcode *op, insn_t insn) |
Variables | |
static const char *const | riscv_gpr_names_numeric [NGPR] |
static const char *const | riscv_gpr_names_abi [NGPR] |
static const char *const | riscv_fpr_names_numeric [NFPR] |
static const char *const | riscv_fpr_names_abi [NFPR] |
static const struct riscv_opcode | riscv_builtin_opcodes [] |
static struct riscv_opcode * | riscv_opcodes |
static int | bfd_riscv_num_opcodes = RISCV_NUM_OPCODES |
#define MASK_AQ (OP_MASK_AQ << OP_SH_AQ) |
Definition at line 81 of file riscv-opc.c.
Definition at line 83 of file riscv-opc.c.
#define MASK_CRS2 (OP_MASK_CRS2 << OP_SH_CRS2) |
Definition at line 74 of file riscv-opc.c.
#define MASK_IMM ENCODE_ITYPE_IMM (-1U) |
Definition at line 75 of file riscv-opc.c.
#define MASK_PRED (OP_MASK_PRED << OP_SH_PRED) |
Definition at line 79 of file riscv-opc.c.
#define MASK_RD (OP_MASK_RD << OP_SH_RD) |
Definition at line 73 of file riscv-opc.c.
#define MASK_RL (OP_MASK_RL << OP_SH_RL) |
Definition at line 82 of file riscv-opc.c.
#define MASK_RM (OP_MASK_RM << OP_SH_RM) |
Definition at line 78 of file riscv-opc.c.
#define MASK_RS1 (OP_MASK_RS1 << OP_SH_RS1) |
Definition at line 71 of file riscv-opc.c.
#define MASK_RS2 (OP_MASK_RS2 << OP_SH_RS2) |
Definition at line 72 of file riscv-opc.c.
#define MASK_RVC_IMM ENCODE_RVC_IMM (-1U) |
Definition at line 76 of file riscv-opc.c.
#define MASK_SUCC (OP_MASK_SUCC << OP_SH_SUCC) |
Definition at line 80 of file riscv-opc.c.
#define MASK_UIMM ENCODE_UTYPE_IMM (-1U) |
Definition at line 77 of file riscv-opc.c.
#define RISCV_NUM_OPCODES ((sizeof riscv_builtin_opcodes) / (sizeof (riscv_builtin_opcodes[0]))) |
Definition at line 679 of file riscv-opc.c.
|
static |
Definition at line 107 of file riscv-opc.c.
References MASK_CRS2, and match_rd_nonzero().
|
static |
|
static |
Definition at line 90 of file riscv-opc.c.
|
static |
Definition at line 85 of file riscv-opc.c.
Referenced by match_rd_nonzero(), and match_rs1_eq_rs2().
|
static |
Definition at line 102 of file riscv-opc.c.
References MASK_RD, and match_opcode().
Referenced by match_c_add(), and match_c_lui().
|
static |
Definition at line 95 of file riscv-opc.c.
References MASK_RS1, MASK_RS2, match_opcode(), OP_SH_RS1, and OP_SH_RS2.
|
static |
Definition at line 687 of file riscv-opc.c.
|
static |
Definition at line 112 of file riscv-opc.c.
Definition at line 54 of file riscv-opc.c.
Definition at line 46 of file riscv-opc.c.
Definition at line 39 of file riscv-opc.c.
Definition at line 31 of file riscv-opc.c.
|
static |
Definition at line 685 of file riscv-opc.c.
Referenced by get_opcode(), riscv_disassemble(), and riscv_op().