On 6/29/2026 4:38 AM, Robin Dapp wrote:
Hi,

Julien reported that we don't peel for alignment anymore after my
vector-misalignment changes last year.  Indeed, I didn't consider the
"scalar vectorization" case for slow-misaligned targets.  We fail
to perform peeling for alignment and instead emit byte accesses.

This patch now only returns true (=misalignment supported) if misaligned
scalar accesses are not slow.

Regtested on rv64gcv_zvl512b.  Going to wait for the CI before moving
forward.

Reported-by: Julien Thillard <[email protected]>

Regards
  Robin

        PR target/125994

gcc/ChangeLog:

        * config/riscv/riscv.cc (riscv_support_vector_misalignment):
        Handle scalar modes.

gcc/testsuite/ChangeLog:

        * gcc.target/riscv/rvv/autovec/pr125994.c: New test.
Testing looked good, so I went ahead and pushed this as part of preparing for tomorrow's patchwork call.

jeff

Reply via email to