diff --git a/mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp b/mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp --- a/mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp +++ b/mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp @@ -425,7 +425,7 @@ FailureOr fusionResult = fuseElementwiseOps(rewriter, &opOperand); if (failed(fusionResult)) - rewriter.notifyMatchFailure(genericOp, "fusion failed"); + return rewriter.notifyMatchFailure(genericOp, "fusion failed"); Operation *producer = opOperand.get().getDefiningOp(); for (auto [origVal, replacement] : fusionResult->replacements) { Value origValCopy = origVal;