This version 3 of the patch adds endianness safety to both the optimizations
brought by the patch set.
It also adds some conditions that allow the __builtin_memcpy to be executed
on chunks of 16 bytes with guarantee of atomicity.

Changes from V2:
- patch 1:
  - add condition for the host not to be big endian.
- patch 2:
  - add condition for the host not to be big endian.
  - add condition for the host to support 16-byte atomic memory operations.
  - limit the large loads and stores to 16 byte chunks in order to guarantee
    atomicity on a larger range of processors.

Cc: Richard Handerson <richard.hender...@linaro.org>
Cc: Palmer Dabbelt <pal...@dabbelt.com>
Cc: Alistair Francis <alistair.fran...@wdc.com>
Cc: Bin Meng <bmeng...@gmail.com>
Cc: Weiwei Li <liwei1...@gmail.com>
Cc: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Cc: Liu Zhiwei <zhiwei_...@linux.alibaba.com>
Cc: Helene Chelin <helene.che...@embecosm.com>
Cc: Nathan Egge <ne...@google.com>
Cc: Max Chou <max.c...@sifive.com>

Helene CHELIN (1):
  target/riscv: rvv: reduce the overhead for simple RISC-V vector
    unit-stride loads and stores

Paolo Savini (1):
  target/riscv: rvv: improve performance of RISC-V vector loads and
    stores on large amounts of data.

 target/riscv/vector_helper.c | 61 +++++++++++++++++++++++++++++++++++-
 1 file changed, 60 insertions(+), 1 deletion(-)

-- 
2.34.1

Reply via email to