[llvm] [IR] Add llvm.vector.[de]interleave{4,6,8} (PR #139893)
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Fri May 16 10:53:08 PDT 2025
preames wrote:
I support this proposal. Note that's largely a reversal of my original stance on this, but seeing all the complexity here, I think adding the explicit variants if probably the right call.
Another option we could explore is to split deinterleaveN into N calls to an intrinsic for the form "deinterleave(N, Vec)". This is a more direct mapping to what we do for the fixed vector shuffles today. This was discussed in the original threads, but I'm still (mildly) of the opinion we went the wrong direction here. I'm happy to defer to those actually working on this though.
We could also do interleave(N, concat_vector(...)) instead. This seems less clearly motivated, and I'd only bother if we were deciding to do the former.
Note that even if we want to pursue my alternative, I support this proposal as an intermediate step. Let's clean up the complexity we have, then possibly revisit.
https://github.com/llvm/llvm-project/pull/139893
More information about the llvm-commits
mailing list