[PATCH v2 0/5] RISC-V: Add Ratified Cache Management Operation ISA Extensions
Tsukasa OI
research_trasio@irq.a4lg.com
Tue Jan 11 10:23:00 GMT 2022
This patchset adds support for three recently ratified RISC-V extensions:
- Zicbom (Cache-Block Management Instructions)
- Zicbop (Cache-Block Prefetch hint instructions)
- Zicboz (Cache-Block Zero Instructions)
`prefetch.[irw]' hint instructions in Zicbop extension require new operand
type which is pseudo S-type immediate with low 5-bits set to zero
(32-byte aligned). So, Zicbop changes are separate from Zicbom/Zicboz:
Patch 1: Zicbom/z/p (common)
Patch 2/3: Zicbom/z (regular CBO instructions)
Patch 4/5: Zicbop (prefetch hint instructions)
cf. <https://github.com/riscv/riscv-CMOs/blob/fc8e97a9531ac9811971a182ae431976b86216e1/specifications/cmobase-v1.0-rc2.pdf>
[PATCH v1]
0/5: <https://sourceware.org/pipermail/binutils/2021-December/118909.html>
1/5: <https://sourceware.org/pipermail/binutils/2021-December/118906.html>
2/5: <https://sourceware.org/pipermail/binutils/2021-December/118908.html>
3/5: <https://sourceware.org/pipermail/binutils/2021-December/118907.html>
4/5: <https://sourceware.org/pipermail/binutils/2021-December/118910.html>
5/5: <https://sourceware.org/pipermail/binutils/2021-December/118911.html>
[DIFF between v1 and v2]
This is functionally the same as v1 but with minor editorial changes.
1. Minor formatting changes in riscv_ip ('f' operand).
2. Minor rewording
3. Add instruction group comments to riscv-opc.h
4. Rebase against latest master
Tsukasa OI (5):
RISC-V: Add mininal support for Zicbo[mpz]
RISC-V: Cache management instructions
RISC-V: Cache management instruction testcases
RISC-V: Prefetch hint instructions and operand set
RISC-V: Prefetch hint instruction testcases
bfd/elfxx-riscv.c | 9 +++++++++
gas/config/tc-riscv.c | 18 ++++++++++++++++++
gas/testsuite/gas/riscv/zicbom.d | 15 +++++++++++++++
gas/testsuite/gas/riscv/zicbom.s | 7 +++++++
gas/testsuite/gas/riscv/zicbop-fail.d | 3 +++
gas/testsuite/gas/riscv/zicbop-fail.l | 4 ++++
gas/testsuite/gas/riscv/zicbop-fail.s | 4 ++++
gas/testsuite/gas/riscv/zicbop.d | 12 ++++++++++++
gas/testsuite/gas/riscv/zicbop.s | 4 ++++
gas/testsuite/gas/riscv/zicboz.d | 11 +++++++++++
gas/testsuite/gas/riscv/zicboz.s | 3 +++
include/opcode/riscv-opc.h | 16 ++++++++++++++++
include/opcode/riscv.h | 3 +++
opcodes/riscv-dis.c | 4 ++++
opcodes/riscv-opc.c | 9 +++++++++
15 files changed, 122 insertions(+)
create mode 100644 gas/testsuite/gas/riscv/zicbom.d
create mode 100644 gas/testsuite/gas/riscv/zicbom.s
create mode 100644 gas/testsuite/gas/riscv/zicbop-fail.d
create mode 100644 gas/testsuite/gas/riscv/zicbop-fail.l
create mode 100644 gas/testsuite/gas/riscv/zicbop-fail.s
create mode 100644 gas/testsuite/gas/riscv/zicbop.d
create mode 100644 gas/testsuite/gas/riscv/zicbop.s
create mode 100644 gas/testsuite/gas/riscv/zicboz.d
create mode 100644 gas/testsuite/gas/riscv/zicboz.s
base-commit: 9ed5be5650ba7c315cd7cfacccc9208de2f555df
--
2.32.0
More information about the Binutils
mailing list