diff options
author | Alex Zinenko <zinenko@google.com> | 2023-06-09 09:49:35 +0000 |
---|---|---|
committer | Alex Zinenko <zinenko@google.com> | 2023-06-09 10:44:24 +0000 |
commit | 95f495c7b3a6bc2ed47bb6f9977256ec0f841e52 (patch) | |
tree | 342719991f38935386856b316a6569799fdabefd /llvm/lib/CodeGen/MachineScheduler.cpp | |
parent | 95bfb1902db98dab846e62dae4d501459691223b (diff) | |
download | llvm-95f495c7b3a6bc2ed47bb6f9977256ec0f841e52.zip llvm-95f495c7b3a6bc2ed47bb6f9977256ec0f841e52.tar.gz llvm-95f495c7b3a6bc2ed47bb6f9977256ec0f841e52.tar.bz2 |
[mlir][transform] add a check for nested consumption in ApplyEachOpTrait
ApplyEachOpTrait applies to payload ops associated with its operand
handle one-by-one in order. If a handle is consumed, this usually
indicates that the associated payload ops are erased or rewritten. Add a
check that we don't consume an ancestor payload operation before
consuming its descendant, as the latter is likely to be a dangling
pointer. Transform operations for which this is a legitimate behavior
(i.e., they consume the handle but don't actually erase or rewrite the
payload operation) should implement the interface directly and allow for
repeated handles.
Reviewed By: springerm
Differential Revision: https://reviews.llvm.org/D152510
Diffstat (limited to 'llvm/lib/CodeGen/MachineScheduler.cpp')
0 files changed, 0 insertions, 0 deletions