diff options
author | Robin Dapp <rdapp@ventanamicro.com> | 2024-10-16 22:39:08 +0200 |
---|---|---|
committer | Robin Dapp <rdapp@ventanamicro.com> | 2024-12-13 10:12:27 +0100 |
commit | cff3050a4fbec323629563b87c9a83bf3e7be908 (patch) | |
tree | 88706c8ed34f019f7d12941e00bb02fdab65ed3a /libgo | |
parent | 71bfc8c33e63f4a566079d34ed3bc98f45133e96 (diff) | |
download | gcc-cff3050a4fbec323629563b87c9a83bf3e7be908.zip gcc-cff3050a4fbec323629563b87c9a83bf3e7be908.tar.gz gcc-cff3050a4fbec323629563b87c9a83bf3e7be908.tar.bz2 |
RISC-V: Add interleave pattern.
This patch adds efficient handling of interleaving patterns like
[0 4 1 5] to vec_perm_const. It is implemented by a slideup and a
gather.
gcc/ChangeLog:
* config/riscv/riscv-v.cc (shuffle_interleave_patterns): New
function.
(expand_vec_perm_const_1): Use new function.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-interleave-run.c: New test.
* gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-interleave.c: New test.
Diffstat (limited to 'libgo')
0 files changed, 0 insertions, 0 deletions