[all-commits] [llvm/llvm-project] 92f7e8: [mlir][Linalg] Implement padding for linalg.conv a...
hanhanW via All-commits
all-commits at lists.llvm.org
Fri Mar 13 14:37:17 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 92f7e8133ae98e1f300bad164c4099b2e609bae7
https://github.com/llvm/llvm-project/commit/92f7e8133ae98e1f300bad164c4099b2e609bae7
Author: Hanhan Wang <hanchung at google.com>
Date: 2020-03-13 (Fri, 13 Mar 2020)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h
M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
M mlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
M mlir/lib/Dialect/Linalg/Transforms/LinalgTransforms.cpp
M mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp
M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
M mlir/test/Dialect/Linalg/loops.mlir
M mlir/test/Dialect/Linalg/roundtrip.mlir
Log Message:
-----------
[mlir][Linalg] Implement padding for linalg.conv and lowering to loops.
Summary:
To enable this, two changes are needed:
1) Add an optional attribute `padding` to linalg.conv.
2) Compute if the indices accessing is out of bound in the loops. If so, use the
padding value `0`. Otherwise, use the value derived from load.
In the patch, the padding only works for lowering without other transformations,
e.g., tiling, fusion, etc.
Differential Revision: https://reviews.llvm.org/D75722
More information about the All-commits
mailing list