[PATCH 0/6] tests/tcg/riscv64: Add system mode rvv ld/st tests

Max Chou posted 6 patches 2 weeks, 3 days ago
Failed in applying to current master (apply log)
target/riscv/tcg/pmp.c                    |  31 +--
target/riscv/tcg/vector_helper.c          |  45 +++-
tests/tcg/riscv64/Makefile.softmmu-target |  38 +++
tests/tcg/riscv64/rvv-ldst.inc            |  91 +++++++
tests/tcg/riscv64/test-rvv-ldst-ff-page.S |  83 +++++++
tests/tcg/riscv64/test-rvv-ldst-ff-pmp.S  | 259 ++++++++++++++++++++
tests/tcg/riscv64/test-rvv-ldst-seg-pmp.S | 141 +++++++++++
tests/tcg/riscv64/test-rvv-ldst-us-pmp.S  | 281 ++++++++++++++++++++++
8 files changed, 943 insertions(+), 26 deletions(-)
create mode 100644 tests/tcg/riscv64/rvv-ldst.inc
create mode 100644 tests/tcg/riscv64/test-rvv-ldst-ff-page.S
create mode 100644 tests/tcg/riscv64/test-rvv-ldst-ff-pmp.S
create mode 100644 tests/tcg/riscv64/test-rvv-ldst-seg-pmp.S
create mode 100644 tests/tcg/riscv64/test-rvv-ldst-us-pmp.S
[PATCH 0/6] tests/tcg/riscv64: Add system mode rvv ld/st tests
Posted by Max Chou 2 weeks, 3 days ago
Hi Richard,

This patchset adds several rvv load/store tests with PMP permission
settings, as we discussed during your v1 submission.

While building the tests, I noticed that pmp_hart_has_privs has a scope
issue that yields unexpected results. This affects both the vector
fault-only-first load and vector unit-stride ld/st instructions.
I therefore attempted to correct pmp_hart_has_privs and
vext_ldst_us_notail, adding matching tests.

Hope these system mode tests and fixes can help you.

PS: I tried applying v2
<20260821040404.268123-1-richard.henderson@linaro.org> to the master and
riscv-to-apply.next branches, but both conflicted.

Thanks,
rnax

Based-on: <20260821040404.268123-1-richard.henderson@linaro.org>

Max Chou (6):
  target/riscv: Match PMP entries lying inside the checked range
  target/riscv: rvv: Probe unit-stride accesses by the first element
  tests/tcg/riscv64: Add vector masked fault-only-first PMP test
  tests/tcg/riscv64: Add vector unit-stride PMP test
  tests/tcg/riscv64: Add vector fault-only-first page probe test
  tests/tcg/riscv64: Add vector segment PMP region spanning test

 target/riscv/tcg/pmp.c                    |  31 +--
 target/riscv/tcg/vector_helper.c          |  45 +++-
 tests/tcg/riscv64/Makefile.softmmu-target |  38 +++
 tests/tcg/riscv64/rvv-ldst.inc            |  91 +++++++
 tests/tcg/riscv64/test-rvv-ldst-ff-page.S |  83 +++++++
 tests/tcg/riscv64/test-rvv-ldst-ff-pmp.S  | 259 ++++++++++++++++++++
 tests/tcg/riscv64/test-rvv-ldst-seg-pmp.S | 141 +++++++++++
 tests/tcg/riscv64/test-rvv-ldst-us-pmp.S  | 281 ++++++++++++++++++++++
 8 files changed, 943 insertions(+), 26 deletions(-)
 create mode 100644 tests/tcg/riscv64/rvv-ldst.inc
 create mode 100644 tests/tcg/riscv64/test-rvv-ldst-ff-page.S
 create mode 100644 tests/tcg/riscv64/test-rvv-ldst-ff-pmp.S
 create mode 100644 tests/tcg/riscv64/test-rvv-ldst-seg-pmp.S
 create mode 100644 tests/tcg/riscv64/test-rvv-ldst-us-pmp.S

-- 
2.43.0