[Mlir-commits] [mlir] [mlir][bufferization][NFC] Buffer deallocation: Add comment to `handleInterface` (PR #76956)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Thu Jan 4 06:03:08 PST 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-mlir
Author: Matthias Springer (matthias-springer)
<details>
<summary>Changes</summary>
This is a follow-up for #<!-- -->68648.
---
Full diff: https://github.com/llvm/llvm-project/pull/76956.diff
1 Files Affected:
- (modified) mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp (+6)
``````````diff
diff --git a/mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp b/mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
index 9459cc43547faf..529d5a808c012a 100644
--- a/mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
+++ b/mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
@@ -861,6 +861,12 @@ BufferDeallocation::handleInterface(MemoryEffectOpInterface op) {
for (auto operand : llvm::make_filter_range(op->getOperands(), isMemref)) {
if (op.getEffectOnValue<MemoryEffects::Free>(operand).has_value()) {
+ // The bufferization.manual_deallocation attribute can be attached to ops
+ // with an allocation and/or deallocation side effect. It indicates that
+ // the op is under a "manual deallocation" scheme. Deallocation ops are
+ // usually forbidden in the input IR (not supported by the buffer
+ // deallocation pass). However, if they are under manual deallocation,
+ // they can be safely ignored by the buffer deallocation pass.
if (!op->hasAttr(BufferizationDialect::kManualDeallocation))
return op->emitError(
"memory free side-effect on MemRef value not supported!");
``````````
</details>
https://github.com/llvm/llvm-project/pull/76956
More information about the Mlir-commits
mailing list