[llvm] [LV][EVL] Support call instruction with EVL-vectorization (PR #110412)

Alexey Bataev via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 30 03:37:00 PDT 2024


================
@@ -951,6 +954,52 @@ void VPWidenCallRecipe::execute(VPTransformState &State) {
   State.addMetadata(V, CI);
 }
 
+void VPWidenCallEVLRecipe::execute(VPTransformState &State) {
+  Function *CalledScalarFn = getCalledScalarFunction();
+  assert(!isDbgInfoIntrinsic(CalledScalarFn->getIntrinsicID()) &&
+         "DbgInfoIntrinsic should have been dropped during VPlan construction");
+  State.setDebugLocFrom(getDebugLoc());
+
+  bool UseIntrinsic = VectorIntrinsicID != Intrinsic::not_intrinsic;
+
+  // TODO: more intrinsics to support , Now only support the
+  // llvm.smax/llvm.smin/llvm.umax/llvm.umin
----------------
alexey-bataev wrote:

Why?

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


More information about the llvm-commits mailing list