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

Mel Chen via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 13 01:26:54 PST 2024


================
@@ -1027,6 +1027,10 @@ InstructionCost VPWidenIntrinsicRecipe::computeCost(ElementCount VF,
   for (const auto &[Idx, Op] : enumerate(operands())) {
     auto *V = Op->getUnderlyingValue();
     if (!V) {
+      if (VPIntrinsic::isVPIntrinsic(VectorIntrinsicID)) {
+        Arguments.push_back(V);
+        break;
+      }
----------------
Mel-Chen wrote:

I see, but I don't have better idea for this, since both all-true mask and EVL are not Value when we computing cost. :(
BTW, I think the assertion should be fixed because not all vp intrinsic have mask (vp.select, vp.merge).

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


More information about the llvm-commits mailing list