[Mlir-commits] [mlir] d5d49b8 - [mlir][bufferization] Return early in aliasing analysis (#173529)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Fri Dec 26 04:12:09 PST 2025
Author: Suriyaa MM
Date: 2025-12-26T12:12:05Z
New Revision: d5d49b8d737bdf7723c1de6899da83c46c2db5ab
URL: https://github.com/llvm/llvm-project/commit/d5d49b8d737bdf7723c1de6899da83c46c2db5ab
DIFF: https://github.com/llvm/llvm-project/commit/d5d49b8d737bdf7723c1de6899da83c46c2db5ab.diff
LOG: [mlir][bufferization] Return early in aliasing analysis (#173529)
Fix for [mlir-opt crashes in OneShotModuleBufferize.cpp:139
#173371](https://github.com/llvm/llvm-project/issues/173371#issue-3757290676).
It just returns `failure()` if there is no `func.return` op.
Added:
Modified:
mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
Removed:
################################################################################
diff --git a/mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp b/mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
index c233e24c2a151..fab45dfca125f 100644
--- a/mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
+++ b/mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
@@ -136,7 +136,11 @@ aliasingFuncOpBBArgsAnalysis(FuncOp funcOp, OneShotAnalysisState &state,
// Find all func.return ops.
SmallVector<func::ReturnOp> returnOps = getReturnOps(funcOp);
- assert(!returnOps.empty() && "expected at least one ReturnOp");
+ // TODO: throw error when there is any non-func.return op that has the
+ // ReturnLike trait
+ if (returnOps.empty()) {
+ return funcOp.emitError("cannot bufferize func.func without func.return");
+ }
// Build alias sets. Merge all aliases from all func.return ops.
for (BlockArgument bbArg : funcOp.getArguments()) {
More information about the Mlir-commits
mailing list