llvm-project
88738a74 - [RISCV] Optimize two source deinterleave2 via ri.vunzip2{a,b} (#142667)

Commit
118 days ago
[RISCV] Optimize two source deinterleave2 via ri.vunzip2{a,b} (#142667) As done for the existing vnsrl cases, we can split a two source deinterleave2 into two single source deinterleave2 and a slideup. We can also use a concat-then-deinterleave2 tactic. Both are equally valid (except in the m8 source type case), and the concat-then-deinterleave2 saves one instruction for fractional LMUL cases. Additionally, if we happen to know the exact VLEN and our fixed vectors are an even number of vector registers, we can avoid the need to split or concat entirely and just use both registers sources.
Author
Parents
Loading