[llvm] [WIP][RFC] Implementation for SVE2 long operations (PR #89310)

Eli Friedman via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 18 16:12:32 PDT 2024


efriedma-quic wrote:

Given the constraint of doing everything in SelectionDAG, this approach is probably the best you can do.

----

I think longer-term it will be important to do all the interleaving-related analysis together.  We need to worry about the interaction between interleaving add/sub, interleaving load/store, and pure element-wise operations that we want to invoke using deinterleaved operands.

Given that, we might actually want to explicitly represent the deinterleaving operation on IR: teach the vectorizer to generate a deinterleave+zero-extend instead of a double-width zero-extend, or something like that.

(See also current work on interleaved load/store in #89018 etc.)

https://github.com/llvm/llvm-project/pull/89310


More information about the llvm-commits mailing list