diff options
author | Max Chou <max.chou@sifive.com> | 2024-09-19 01:14:08 +0800 |
---|---|---|
committer | Alistair Francis <alistair.francis@wdc.com> | 2024-11-07 12:32:10 +1000 |
commit | 338aa15d50b37fa797677d96c091aa81a383e2a1 (patch) | |
tree | 7c361f72515cabb46f60f0346701135ce21e2618 /module-common.c | |
parent | 2f077842f2b356a086f70e54c831be53c6f0e101 (diff) | |
download | qemu-338aa15d50b37fa797677d96c091aa81a383e2a1.zip qemu-338aa15d50b37fa797677d96c091aa81a383e2a1.tar.gz qemu-338aa15d50b37fa797677d96c091aa81a383e2a1.tar.bz2 |
target/riscv: rvv: Provide a fast path using direct access to host ram for unmasked unit-stride load/store
This commit references the sve_ldN_r/sve_stN_r helper functions in ARM
target to optimize the vector unmasked unit-stride load/store
implementation with following optimizations:
* Get the page boundary
* Probing pages/resolving host memory address at the beginning if
possible
* Provide new interface to direct access host memory
* Switch to the original slow TLB access when cross page element/violate
page permission/violate pmp/watchpoints in page
The original element load/store interface is replaced by the new element
load/store functions with _tlb & _host postfix that means doing the
element load/store through the original softmmu flow and the direct
access host memory flow.
Signed-off-by: Max Chou <max.chou@sifive.com>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Message-ID: <20240918171412.150107-4-max.chou@sifive.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Diffstat (limited to 'module-common.c')
0 files changed, 0 insertions, 0 deletions