[llvm] [InstCombine] Let shrinkSplatShuffle act on vectors of different lengths (PR #148593)

Adar Dagan via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 15 05:52:38 PDT 2025


Adar-Dagan wrote:

> This is getting very close to needing to be cost based, which suggests we should move it the entire fold to VectorCombine - we already have VectorCombine::foldShuffleOfCastops for a shuffle of 2 matching casts, relaxing this to handle a single cast wouldn't be a huge amount of work.

@RKSimon 
>From what I see, VectorCombine::foldShuffleOfCastops tries to do the opposite transformation from what I am doing here, it tries to move the castop to be below the shuffle.

I think the transformation I am adding to here fits in InstCombine because we generally try to move up truncations and then act on smaller types.

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


More information about the llvm-commits mailing list