[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v4 00/11] target/riscv: Support zimop/zcmop/zama16b/zabha
From: |
LIU Zhiwei |
Subject: |
[PATCH v4 00/11] target/riscv: Support zimop/zcmop/zama16b/zabha |
Date: |
Tue, 9 Jul 2024 19:36:41 +0800 |
I once used a wrong major opcode for zimop. It should use 0x73 as major opcode.
This was detected after I got a toolchain with zimop support. Before that, I
tested
this implementation with hardwire code instruction instead of assemble code.
This patch set has been queued to alistair/riscv-to-apply.next, but it is still
not
merged by the master branch. I think we had better fix it before merging into
the
master.
v3->v4:
1. Fix zimop opcode and disassemble
v2->v3:
1. Add review tags.
2. Reword the patch 10 in commit log
v1->v2:
1. Fix the isa orders.
2. Make zimop/zcmop/zama16b/zabha depend on priviledged 1.13
3. Add review tags.
The v2 patch set is here
https://mail.gnu.org/archive/html/qemu-riscv/2024-06/msg00489.html
The v1 patch set is here
1. zimop/zcmop
https://mail.gnu.org/archive/html/qemu-riscv/2024-05/msg00207.html
2. zama16b
https://mail.gnu.org/archive/html/qemu-riscv/2024-05/msg00212.html
3. zabha
https://mail.gnu.org/archive/html/qemu-riscv/2024-05/msg00214.html
LIU Zhiwei (11):
target/riscv: Add zimop extension
disas/riscv: Support zimop disassemble
target/riscv: Add zcmop extension
disas/riscv: Support zcmop disassemble
target/riscv: Support Zama16b extension
target/riscv: Move gen_amo before implement Zabha
target/riscv: Add AMO instructions for Zabha
target/riscv: Move gen_cmpxchg before adding amocas.[b|h]
target/riscv: Add amocas.[b|h] for Zabha
target/riscv: Expose zabha extension as a cpu property
disas/riscv: Support zabha disassemble
disas/riscv.c | 181 ++++++++++++++++++++
target/riscv/cpu.c | 8 +
target/riscv/cpu_cfg.h | 4 +
target/riscv/insn16.decode | 1 +
target/riscv/insn32.decode | 33 ++++
target/riscv/insn_trans/trans_rva.c.inc | 51 ++----
target/riscv/insn_trans/trans_rvd.c.inc | 14 +-
target/riscv/insn_trans/trans_rvf.c.inc | 14 +-
target/riscv/insn_trans/trans_rvi.c.inc | 6 +
target/riscv/insn_trans/trans_rvzabha.c.inc | 145 ++++++++++++++++
target/riscv/insn_trans/trans_rvzacas.c.inc | 13 --
target/riscv/insn_trans/trans_rvzcmop.c.inc | 29 ++++
target/riscv/insn_trans/trans_rvzimop.c.inc | 37 ++++
target/riscv/tcg/tcg-cpu.c | 5 +
target/riscv/translate.c | 38 ++++
15 files changed, 529 insertions(+), 50 deletions(-)
create mode 100644 target/riscv/insn_trans/trans_rvzabha.c.inc
create mode 100644 target/riscv/insn_trans/trans_rvzcmop.c.inc
create mode 100644 target/riscv/insn_trans/trans_rvzimop.c.inc
--
2.25.1
- [PATCH v4 00/11] target/riscv: Support zimop/zcmop/zama16b/zabha,
LIU Zhiwei <=
- [PATCH v4 01/11] target/riscv: Add zimop extension, LIU Zhiwei, 2024/07/09
- [PATCH v4 02/11] disas/riscv: Support zimop disassemble, LIU Zhiwei, 2024/07/09
- [PATCH v4 03/11] target/riscv: Add zcmop extension, LIU Zhiwei, 2024/07/09
- [PATCH v4 04/11] disas/riscv: Support zcmop disassemble, LIU Zhiwei, 2024/07/09
- [PATCH v4 05/11] target/riscv: Support Zama16b extension, LIU Zhiwei, 2024/07/09
- [PATCH v4 06/11] target/riscv: Move gen_amo before implement Zabha, LIU Zhiwei, 2024/07/09