Adding missing custom builders for AffineVectorLoadOp & AffineVectorStoreOp. In practice, it is difficult to correctly construct these ops without these builders (because the AffineMap is not included at construction time).
Details
Diff Detail
Event Timeline
Can you please separate out the fix to normalizeAffineParallel? It has really nothing to do with the builder additions.
mlir/lib/Dialect/Affine/Transforms/AffineParallelNormalize.cpp | ||
---|---|---|
22 | It has users outside of this repository. |
mlir/lib/Dialect/Affine/IR/AffineOps.cpp | ||
---|---|---|
2819 | I can see that you really don't like auto :) In general, this code was copy/pasted from existing MLIR code. |
Of course, I can. I was hoping to get this in quickly since downstream users are broken without it.
Thanks Frank! Sorry, I was OOO last week. Quick comments for now, I'll come back later.
mlir/lib/Dialect/Affine/IR/AffineOps.cpp | ||
---|---|---|
2819 | I think in general the rule is to only use auto when it help readability. I personally *try* to only use it for cast/isa/dyn_cast, for other cases where the type is obvious or redundant and for cases where the type is too large (e.g., iterators), but I sometimes abuse it as well :) | |
mlir/lib/Dialect/Affine/Transforms/AffineParallelNormalize.cpp | ||
22 | These changes seem unrelated to changes on affine.vector_load and affine.vector_store. Please, create a independent differential for them. |
Hey @flaub! What happened to this patch? Do you plan to finish it and land it?
Thanks,
Diego
mlir/lib/Dialect/Affine/Transforms/AffineParallelNormalize.cpp | ||
---|---|---|
22 | Yeah, I think just a rebase would work. Not sure, though, if @bondhugula has any other comments. |
unsigned