[all-commits] [llvm/llvm-project] 6403e1: [mlir] add a dynamic user-after-parent-freed trans...
ftynse via All-commits
all-commits at lists.llvm.org
Fri Jun 10 04:05:49 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 6403e1b12a61dd7dd2682916afdec6b0a8049c10
https://github.com/llvm/llvm-project/commit/6403e1b12a61dd7dd2682916afdec6b0a8049c10
Author: Alex Zinenko <zinenko at google.com>
Date: 2022-06-10 (Fri, 10 Jun 2022)
Changed paths:
M mlir/include/mlir/Dialect/Transform/IR/TransformDialect.td
M mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.h
M mlir/lib/Dialect/Transform/IR/TransformInterfaces.cpp
A mlir/test/Dialect/Transform/expensive-checks.mlir
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.td
M mlir/test/lib/Dialect/Transform/TestTransformDialectInterpreter.cpp
Log Message:
-----------
[mlir] add a dynamic user-after-parent-freed transform dialect check
In the transform dialect, a transform IR handle may be pointing to a payload IR
operation that is an ancestor of another payload IR operation pointed to by
another handle. If such a "parent" handle is consumed by a transformation, this
indicates that the associated operation is likely rewritten, which in turn
means that the "child" handle may now be associated with a dangling pointer or
a pointer to a different operation than originally. Add a handle invalidation
mechanism to guard against such situations by reporting errors at runtime.
Reviewed By: springerm
Differential Revision: https://reviews.llvm.org/D127480
More information about the All-commits
mailing list