[all-commits] [llvm/llvm-project] 4f6325: [mlir][transform] Fix crash when op is erased duri...

Matthias Springer via All-commits all-commits at lists.llvm.org
Thu Sep 14 05:59:49 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4f63252d5d0acfc32633a36e18fff469a606e6ce
      https://github.com/llvm/llvm-project/commit/4f63252d5d0acfc32633a36e18fff469a606e6ce
  Author: Matthias Springer <me at m-sp.org>
  Date:   2023-09-14 (Thu, 14 Sep 2023)

  Changed paths:
    M mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.h
    M mlir/lib/Dialect/Transform/IR/TransformInterfaces.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/test/Dialect/Transform/test-interpreter.mlir
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp

  Log Message:
  -----------
  [mlir][transform] Fix crash when op is erased during transform.foreach (#66357)

Fixes a crash when an op, that is mapped to handle that a
`transform.foreach` iterates over, was erased (through the
`TrackingRewriter`). Erasing an op removes it from all mappings and
invalidates iterators. This is already taken care of when an op is
iterating over payload ops in its `apply` method, but not when another
transform op is erasing a tracked payload op.




More information about the All-commits mailing list