mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-11-05 20:35:44 +00:00
disas/riscv: Add amocas.[w,d,q] instructions
Signed-off-by: Rob Bradford <rbradford@rivosinc.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com> Message-ID: <20231207153842.32401-3-rbradford@rivosinc.com> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
parent
b52d49e97f
commit
6c848c192e
1 changed files with 9 additions and 0 deletions
|
@ -903,6 +903,9 @@ typedef enum {
|
|||
rv_op_vwsll_vv = 872,
|
||||
rv_op_vwsll_vx = 873,
|
||||
rv_op_vwsll_vi = 874,
|
||||
rv_op_amocas_w = 875,
|
||||
rv_op_amocas_d = 876,
|
||||
rv_op_amocas_q = 877,
|
||||
} rv_op;
|
||||
|
||||
/* register names */
|
||||
|
@ -2090,6 +2093,9 @@ const rv_opcode_data rvi_opcode_data[] = {
|
|||
{ "vwsll.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm, NULL, 0, 0, 0 },
|
||||
{ "vwsll.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm, NULL, 0, 0, 0 },
|
||||
{ "vwsll.vi", rv_codec_v_i, rv_fmt_vd_vs2_uimm_vm, NULL, 0, 0, 0 },
|
||||
{ "amocas.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1, NULL, 0, 0, 0 },
|
||||
{ "amocas.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1, NULL, 0, 0, 0 },
|
||||
{ "amocas.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1, NULL, 0, 0, 0 },
|
||||
};
|
||||
|
||||
/* CSR names */
|
||||
|
@ -2841,6 +2847,9 @@ static void decode_inst_opcode(rv_decode *dec, rv_isa isa)
|
|||
case 34: op = rv_op_amoxor_w; break;
|
||||
case 35: op = rv_op_amoxor_d; break;
|
||||
case 36: op = rv_op_amoxor_q; break;
|
||||
case 42: op = rv_op_amocas_w; break;
|
||||
case 43: op = rv_op_amocas_d; break;
|
||||
case 44: op = rv_op_amocas_q; break;
|
||||
case 66: op = rv_op_amoor_w; break;
|
||||
case 67: op = rv_op_amoor_d; break;
|
||||
case 68: op = rv_op_amoor_q; break;
|
||||
|
|
Loading…
Reference in a new issue