diff options
Diffstat (limited to 'include/opcode/riscv.h')
-rw-r--r-- | include/opcode/riscv.h | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/include/opcode/riscv.h b/include/opcode/riscv.h index afcd41ff1dd..a336eb42489 100644 --- a/include/opcode/riscv.h +++ b/include/opcode/riscv.h @@ -22,6 +22,7 @@ #define _RISCV_H_ #include "riscv-opc.h" +#include "riscv-opc-extended.h" #include <stdlib.h> #include <stdint.h> @@ -303,7 +304,6 @@ static const char * const riscv_pred_succ[16] = enum riscv_insn_class { INSN_CLASS_NONE, - INSN_CLASS_I, INSN_CLASS_C, INSN_CLASS_A, @@ -320,6 +320,7 @@ enum riscv_insn_class INSN_CLASS_ZBB, INSN_CLASS_ZBC, INSN_CLASS_ZBS, + INSN_CLASS_EXTENDED }; /* This structure holds information for a particular instruction. */ @@ -333,7 +334,7 @@ struct riscv_opcode /* Class to which this instruction belongs. Used to decide whether or not this instruction is legal in the current -march context. */ - enum riscv_insn_class insn_class; + int insn_class; /* A string describing the arguments for this instruction. */ const char *args; @@ -423,7 +424,7 @@ enum M_ZEXTW, M_SEXTB, M_SEXTH, - M_NUM_MACROS + M_EXTENDED }; /* The mapping symbol states. */ @@ -442,4 +443,8 @@ extern const char * const riscv_fpr_names_abi[NFPR]; extern const struct riscv_opcode riscv_opcodes[]; extern const struct riscv_opcode riscv_insn_types[]; +/* Extended extensions. */ + +extern const struct riscv_opcode *riscv_extended_opcodes[]; + #endif /* _RISCV_H_ */ |