On 9/16/25 08:21, Raphael Moreira Zinsly wrote:
Changes since v1:
        - Fixed permutations with two pivots and repeated elements.

-- >8 --

Improve shuffle_slide_patterns to better recognize permutations that
can be constructed by a slideup or slidedown, covering more cases:
Slideup one vector into the middle the other like
   {0, 4, 5, 3}.
Slidedown one vector not ending in the last element like
   {5, 6, 2, 3}.
Slidedown one vector from the beginning like
   {4, 5, 2, 3}.

gcc/ChangeLog:

        * riscv/riscv-v.c
        (shuffle_slide_patterns): Cover more permutations.

gcc/testsuite/ChangeLog:

        * gcc.target/riscv/rvv/autovec/shuffle-slide-run.h:
        New test.
        * gcc.target/riscv/rvv/autovec/shuffle-slidedown-run.c:
        Likewise.
        * gcc.target/riscv/rvv/autovec/shuffle-slideup-run.c:
        Likewise.
        * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slide.h:
        Likewise.
        * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-1.c:
        Likewise.
        * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-2.c:
        Likewise.
        * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-perm.h:
        Likewise.
        * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-1.c:
        Likewise.
        * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-2.c:
        Likewise.
        * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-perm.h:
        Likewise.
just a follow-up.  rv32 passes with this version in my tester.

Given Juzhe has acked and Robin reviewed it internally. I think this is good to go once pre-commit CI is done.
Jeff

Reply via email to