[llvm] [Mips] Promote MSA half-vector shuffles to integer vectors (PR #226105)
Folkert de Vries via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 24 11:57:51 PDT 2026
================
@@ -154,6 +154,10 @@ MipsSETargetLowering::MipsSETargetLowering(const MipsTargetMachine &TM,
addMSAFloatType(MVT::v4f32, &Mips::MSA128WRegClass);
addMSAFloatType(MVT::v2f64, &Mips::MSA128DRegClass);
+ // Shuffle half vectors as integers to avoid expanding them through
+ // EXTRACT_VECTOR_ELT and BUILD_VECTOR with an illegal scalar f16 type.
+ setOperationPromotedToType(ISD::VECTOR_SHUFFLE, MVT::v8f16, MVT::v8i16);
----------------
folkertdev wrote:
Are there other operations that need a similar promotion? Is there a better way to find out than one bug report at the time?
https://github.com/llvm/llvm-project/pull/226105
More information about the llvm-commits
mailing list