On 11/11/24 7:12 AM, Robin Dapp wrote:
Hi,

instead of loading the permutation indices and using vmslt in order to
determine which elements belong to which source vector we can compute
the proper mask at compile time.  That way we can emit vlm instead of
vle + vmslt.

Regtested on rv64gcv.

Regards
  Robin

gcc/ChangeLog:

        * config/riscv/riscv-v.cc (shuffle_merge_patterns): Load VLS
        indices directly.

gcc/testsuite/ChangeLog:

        * gcc.target/riscv/rvv/autovec/vls/merge-1.c: Check for vlm and
        no vmsleu etc.
        * gcc.target/riscv/rvv/autovec/vls/merge-2.c: Ditto.
        * gcc.target/riscv/rvv/autovec/vls/merge-3.c: Ditto.
        * gcc.target/riscv/rvv/autovec/vls/merge-4.c: Ditto.
        * gcc.target/riscv/rvv/autovec/vls/merge-5.c: Ditto.
        * gcc.target/riscv/rvv/autovec/vls/merge-6.c: Ditto.
OK
jeff

Reply via email to