[llvm] [TTI] Add costing for vp.strided.load and vp.strided.store (PR #80360)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 1 19:37:42 PST 2024


================
@@ -1595,6 +1607,25 @@ class BasicTTIImplBase : public TargetTransformInfoImplCRTPBase<T> {
       return thisT()->getGatherScatterOpCost(Instruction::Load, RetTy, Args[0],
                                              VarMask, Alignment, CostKind, I);
     }
+    case Intrinsic::experimental_vp_strided_store: {
+      const Value *Data = Args[0];
+      const Value *Ptr = Args[1];
+      const Value *Mask = Args[3];
+      const Value *EVL = Args[4];
+      bool VarMask = !isa<Constant>(Mask) || !isa<Constant>(EVL);
+      Align Alignment = I->getParamAlign(1).value_or(Align(1));
----------------
lukel97 wrote:

Nit
```suggestion
      Align Alignment = I->getParamAlign(1).valueOrOne();
```

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


More information about the llvm-commits mailing list