aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineScheduler.cpp
diff options
context:
space:
mode:
authorAlex Zinenko <zinenko@google.com>2023-06-09 09:49:35 +0000
committerAlex Zinenko <zinenko@google.com>2023-06-09 10:44:24 +0000
commit95f495c7b3a6bc2ed47bb6f9977256ec0f841e52 (patch)
tree342719991f38935386856b316a6569799fdabefd /llvm/lib/CodeGen/MachineScheduler.cpp
parent95bfb1902db98dab846e62dae4d501459691223b (diff)
downloadllvm-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