Moved getStaticLoopRanges and getStaticShape methods to LinalgInterfaces.td to add...
authorInho Seo <inhoseo@google.com>
Wed, 10 Mar 2021 11:56:14 +0000 (03:56 -0800)
committerHanhan Wang <hanchung@google.com>
Wed, 10 Mar 2021 12:06:22 +0000 (04:06 -0800)
commit2ce4caf4143bc7f6fe084da03d2ce268a7a06a6d
tree377684f38e446a06e7ce4a5ad4765994583d6181
parenta94ac467c2974d9afe68f3fe6cff27bd19bcfad0
Moved getStaticLoopRanges and getStaticShape methods to LinalgInterfaces.td to add static shape verification

It is to use the methods in LinalgInterfaces.cpp for additional static shape verification to match the shaped operands and loop on linalgOps. If I used the existing methods, I would face circular dependency linking issue. Now we can use them as methods of LinalgOp.

Reviewed By: hanchung

Differential Revision: https://reviews.llvm.org/D98163
mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
mlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp
mlir/lib/Dialect/Linalg/Utils/Utils.cpp