[mlir][sparse] Split SparseTensorRewrite into PreSparsificationRewrite and PostSparsificationRewrite.
Reviewed By: aartbik, wrengr Differential Revision: https://reviews.llvm.org/D138153
This commit is contained in:
@@ -1021,11 +1021,17 @@ struct OutRewriter : public OpRewritePattern<OutOp> {
|
||||
//===---------------------------------------------------------------------===//
|
||||
// Methods that add patterns described in this file to a pattern list.
|
||||
//===---------------------------------------------------------------------===//
|
||||
void mlir::populateSparseTensorRewriting(RewritePatternSet &patterns,
|
||||
bool enableRT, bool enableForeach,
|
||||
bool enableConvert) {
|
||||
patterns.add<FoldInvariantYield, FuseSparseMultiplyOverAdd,
|
||||
ReshapeRewriter<tensor::ExpandShapeOp>,
|
||||
|
||||
void mlir::populatePreSparsificationRewriting(RewritePatternSet &patterns) {
|
||||
patterns.add<FoldInvariantYield, FuseSparseMultiplyOverAdd>(
|
||||
patterns.getContext());
|
||||
}
|
||||
|
||||
void mlir::populatePostSparsificationRewriting(RewritePatternSet &patterns,
|
||||
bool enableRT,
|
||||
bool enableForeach,
|
||||
bool enableConvert) {
|
||||
patterns.add<ReshapeRewriter<tensor::ExpandShapeOp>,
|
||||
ReshapeRewriter<tensor::CollapseShapeOp>>(patterns.getContext());
|
||||
if (enableForeach)
|
||||
patterns.add<ForeachRewriter>(patterns.getContext());
|
||||
|
||||
Reference in New Issue
Block a user