Vectorization of Linalg's depthwise convolution only supports floating
point types. Previous version assumed floating point operations would
work. This version checks whether the computation is integer or floating
point and adjust the inner loop computation.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp | ||
---|---|---|
1781–1820 | style nit: auto |
Comment Actions
LGTM! A couple of minor comments. Thanks!
mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp | ||
---|---|---|
1781 |
|
mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp | ||
---|---|---|
1765 | This is a problem: this is not a precondition and we have created I leaving IR in a potentially invalid state which will create all sorts of issues. Please find a way to hoist that into a precondition and a guarantee that this will succeed on we start producing IR. Separately: if (!llvm::all_of(resVals, [](Value v){ return c})) return failure(); |
This is a problem: this is not a precondition and we have created I leaving IR in a potentially invalid state which will create all sorts of issues.
Please find a way to hoist that into a precondition and a guarantee that this will succeed on we start producing IR.
Separately: