[llvm] [LV][EVL] Support call instruction with EVL-vectorization (PR #110412)
    via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Wed Oct 30 20:59:18 PDT 2024
    
    
  
================
@@ -1023,6 +1038,18 @@ InstructionCost VPWidenIntrinsicRecipe::computeCost(ElementCount VF,
   // clear Arguments.
   // TODO: Rework TTI interface to be independent of concrete IR values.
   SmallVector<const Value *> Arguments;
+
+  Intrinsic::ID FID = VectorIntrinsicID;
+  unsigned NumOperands = getNumOperands();
+  if (VPIntrinsic::isVPIntrinsic(VectorIntrinsicID)) {
+    std::optional<Intrinsic::ID> ID =
+        VPIntrinsic::getFunctionalIntrinsicIDForVP(VectorIntrinsicID);
+    if (ID) {
+      FID = ID.value();
----------------
LiqinWeng wrote:
for 1) Implemented in #108533
for 2) The root cause is that there is no way to get the EVL Value && mask Value at this stage, and VP Intrinsic cannot configure the correct ArgmentsSize in CostAttr

https://github.com/llvm/llvm-project/pull/110412
    
    
More information about the llvm-commits
mailing list