[all-commits] [llvm/llvm-project] fd018b: [mlir] transform dialect: don't crash in verifiers
ftynse via All-commits
all-commits at lists.llvm.org
Sun Sep 28 14:15:14 PDT 2025
Branch: refs/heads/users/ftynse/transform-verifier
Home: https://github.com/llvm/llvm-project
Commit: fd018beeabf8a02e35fb2fc375096ef1174ba6b5
https://github.com/llvm/llvm-project/commit/fd018beeabf8a02e35fb2fc375096ef1174ba6b5
Author: Alex Zinenko <git at ozinenko.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Transform/IR/TransformDialect.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/test/Dialect/Transform/ops-invalid.mlir
Log Message:
-----------
[mlir] transform dialect: don't crash in verifiers
Fix crashes in the verifier of `transform.with_named_sequence` attribute
attached to a symbol table operation caused by it constructing a call graph
inside the symbol table. The call graph construction assumes calls and
callables, such as functions or named sequences, have been verified, but it is
not yet the case when the attribute verifier on the (parent) symbol table
operation runs. Trigger such verification manually before constructing the call
graph. This adds redundancy in verification, but there is currently no
mechanism to change the order of verificaiton. In performance-critical
scenarios, verification can be disabled altogether.
Remove unnecessary verfificaton from `transform::IncludeOp::getEffects`. It was
introduced along with the op definition as the op used to inspect the body of
callee, which assumed the body existed, to identify handle consumption
behavior. This was later evolved to having explicit argument attributes on the
callee, which handles the absence of such attributes gracefully without the
need for verification, but the verification was never removed. It would have
been causing infinite recursion if kept in place.
Fixes #159646.
Fixes #159734.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list