diff --git a/mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp b/mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp --- a/mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp +++ b/mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp @@ -686,6 +686,12 @@ patterns.add(context, RankReductionStrategy::ExtractInsertSlice); patterns.add(context); + // TODO: Patterns unrelated to unit dim folding should be factored out. + linalg::FillOp::getCanonicalizationPatterns(patterns, context); + tensor::EmptyOp::getCanonicalizationPatterns(patterns, context); + tensor::populateFoldTensorEmptyPatterns(patterns); + memref::populateResolveRankedShapeTypeResultDimsPatterns(patterns); + memref::populateResolveShapedTypeResultDimsPatterns(patterns); } void mlir::linalg::populateMoveInitOperandsToInputPattern(