https://github.com/nikic commented: It may be cleaner to separate out the scalable case into a separate code path, because there is only a single supported scalable shufflevector operation (which is the zero index splat). https://github.com/llvm/llvm-project/pull/115536