[PATCH] D157005: [mlir][ArmSME] Add vector to tile slice op and lowerings
Diego Caballero via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 8 14:47:25 PDT 2023
dcaballe accepted this revision.
dcaballe added a comment.
This revision is now accepted and ready to land.
LGTM in general, thanks!
================
Comment at: mlir/include/mlir/Dialect/ArmSME/IR/ArmSME.td:424
+ (2-D scalable vector) slice at the given index. The 1-D vector type must
+ match the inner vector type of the 2-D vector type that represents the
+ tile. The updated tile is returned as the result.
----------------
-> element type?
================
Comment at: mlir/lib/Dialect/ArmSME/Transforms/LegalizeForLLVMExport.cpp:280-285
+ auto one = rewriter.create<arith::ConstantOp>(
+ loc, rewriter.getI1Type(),
+ rewriter.getIntegerAttr(rewriter.getI1Type(), 1));
+ auto predTy = VectorType::get(tileType.getShape()[0], rewriter.getI1Type(),
+ /*scalableDims=*/{true});
+ auto allActiveMask = rewriter.create<vector::SplatOp>(loc, predTy, one);
----------------
We are usually creating masks with `vector.create_mask` and `vector.constant_mask` but maybe it's already too late to introduce them here. I would expect them to have been lowered in an earlier stage. Just bringing this up in case you thought about it. (I'm not asking for changes)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D157005/new/
https://reviews.llvm.org/D157005
More information about the llvm-commits
mailing list