diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2023-04-26 13:33:05 +0100 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2023-05-25 13:57:52 +0000 |
commit | d397be9a2256a7cc00a2b00355ad9c869ad61493 (patch) | |
tree | dfc8c232a9457d4dfca15199069d68491741f921 /disas | |
parent | b56d5a8a4b0352bd499e026b8bdbdcf5f12753ac (diff) | |
download | qemu-d397be9a2256a7cc00a2b00355ad9c869ad61493.zip qemu-d397be9a2256a7cc00a2b00355ad9c869ad61493.tar.gz qemu-d397be9a2256a7cc00a2b00355ad9c869ad61493.tar.bz2 |
disas/riscv: Decode czero.{eqz,nez}
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'disas')
-rw-r--r-- | disas/riscv.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/disas/riscv.c b/disas/riscv.c index e61bda5..d597161 100644 --- a/disas/riscv.c +++ b/disas/riscv.c @@ -962,6 +962,8 @@ typedef enum { rv_op_cm_mvsa01 = 786, rv_op_cm_jt = 787, rv_op_cm_jalt = 788, + rv_op_czero_eqz = 789, + rv_op_czero_nez = 790, } rv_op; /* structures */ @@ -2119,6 +2121,8 @@ const rv_opcode_data opcode_data[] = { { "cm.mvsa01", rv_codec_zcmp_cm_mv, rv_fmt_rd_rs2, NULL, 0, 0, 0 }, { "cm.jt", rv_codec_zcmt_jt, rv_fmt_zcmt_index, NULL, 0 }, { "cm.jalt", rv_codec_zcmt_jt, rv_fmt_zcmt_index, NULL, 0 }, + { "czero.eqz", rv_codec_r, rv_fmt_rd_rs1_rs2, NULL, 0, 0, 0 }, + { "czero.nez", rv_codec_r, rv_fmt_rd_rs1_rs2, NULL, 0, 0, 0 }, }; /* CSR names */ @@ -2914,6 +2918,8 @@ static void decode_inst_opcode(rv_decode *dec, rv_isa isa) case 45: op = rv_op_minu; break; case 46: op = rv_op_max; break; case 47: op = rv_op_maxu; break; + case 075: op = rv_op_czero_eqz; break; + case 077: op = rv_op_czero_nez; break; case 130: op = rv_op_sh1add; break; case 132: op = rv_op_sh2add; break; case 134: op = rv_op_sh3add; break; |