[llvm] [RISCV][GISEL] instruction-select for G_SPLAT_VECTOR (PR #111193)

Tobias Stadler via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 4 13:54:42 PDT 2024


tobias-stadler wrote:

> I don't follow. SelectionDAG is turning ISD::SPLAT_VECTOR into RISCVISD::VMV_V_X_VL or RISCVISD::VFMV_V_X_VL. We're never matching selected opcodes.

I'm talking about this:

> We have patterns to fold vector arithmetic with a splat operand into special instructions too. Those patterns expect G_VMV_V_X_VL/G_VFMV_V_F_VL

What I meant is that, I think we should prefer matching generic opcodes like SPLAT_VECTOR in the arithmetic patterns (like you suggested) rather than matching the generic target-specifc opcodes. sorry for not phrasing this clearly.

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


More information about the llvm-commits mailing list