[PATCH] D79062: [mlir][Vector] Provide progressive lowering of masked n-D vector transfers

Nicolas Vasilache via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 29 18:24:45 PDT 2020


nicolasvasilache marked 17 inline comments as done.
nicolasvasilache added inline comments.


================
Comment at: mlir/lib/Conversion/VectorToLoops/ConvertVectorToLoops.cpp:137
+  AffineLoopNestBuilder(majorIvs, majorLbs, majorUbs, majorSteps)([&] {
+    SmallVector<Value, 8> indices(xferOp.indices());
+    loopBody(
----------------
rriddle wrote:
> Why are you building a vector here? Is it because AffineLoopNestBuilder takes an ArrayRef<Value> instead of ValueRange?
It's because the first argument of AffineLoopNestBuilder is a `MutableArrayRef<Value>` which captures the induction variables so they can be reused.


================
Comment at: mlir/lib/Conversion/VectorToLoops/ConvertVectorToLoops.cpp:159
+    Value inBounds2 = majorIvsPlusOffsets.back() < ub;
+    inBounds = inBounds && inBounds2;
+  }
----------------
rriddle wrote:
> inbounds &= inBounds2;?
This would require `Value::operator&=(Value)` I believe ?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D79062/new/

https://reviews.llvm.org/D79062





More information about the llvm-commits mailing list