[llvm] [LV][EVL] Support cast instruction with EVL-vectorization (PR #108351)

Alexey Bataev via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 13 06:58:07 PST 2024


================
@@ -1686,6 +1686,15 @@ class VPWidenIntrinsicRecipe : public VPRecipeWithIRFlags {
         MayWriteToMemory(CI.mayWriteToMemory()),
         MayHaveSideEffects(CI.mayHaveSideEffects()) {}
 
+  VPWidenIntrinsicRecipe(CastInst &CI, Intrinsic::ID VectorIntrinsicID,
+                         ArrayRef<VPValue *> CallArguments, Type *Ty,
+                         DebugLoc DL = {})
+      : VPRecipeWithIRFlags(VPDef::VPWidenIntrinsicSC, CallArguments, CI),
+        VectorIntrinsicID(VectorIntrinsicID), ResultTy(Ty),
+        MayReadFromMemory(CI.mayReadFromMemory()),
+        MayWriteToMemory(CI.mayWriteToMemory()),
+        MayHaveSideEffects(CI.mayHaveSideEffects()) {}
+
----------------
alexey-bataev wrote:

Can you unify the constructor instead of copying it?

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


More information about the llvm-commits mailing list