[llvm] [VPlan] Don't fold live ins with both scalar and vector operands (PR #154067)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 18 04:07:33 PDT 2025


================
@@ -976,14 +976,9 @@ static Value *tryToFoldLiveIns(const VPRecipeBase &R, unsigned Opcode,
                           RFlags.getGEPNoWrapFlags());
   }
   case VPInstruction::PtrAdd:
-  case VPInstruction::WidePtrAdd:
     return Folder.FoldGEP(IntegerType::getInt8Ty(TypeInfo.getContext()), Ops[0],
                           Ops[1],
                           cast<VPRecipeWithIRFlags>(R).getGEPNoWrapFlags());
-  case Instruction::InsertElement:
-    return Folder.FoldInsertElement(Ops[0], Ops[1], Ops[2]);
-  case Instruction::ExtractElement:
-    return Folder.FoldExtractElement(Ops[0], Ops[1]);
----------------
lukel97 wrote:

We can't create a vector constant because we don't know the exact VF, so we can't create a vector type

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


More information about the llvm-commits mailing list