[all-commits] [llvm/llvm-project] 8c2d7c: [mlir][IR] Add SymbolUserTypeInterface (#198435)

Jared Hoberock via All-commits all-commits at lists.llvm.org
Sat Jul 18 02:50:16 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8c2d7cc3a9983459628c028d8537eaf79551f396
      https://github.com/llvm/llvm-project/commit/8c2d7cc3a9983459628c028d8537eaf79551f396
  Author: Jared Hoberock <jaredhoberock at gmail.com>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M mlir/include/mlir/IR/CMakeLists.txt
    M mlir/include/mlir/IR/SymbolInterfaces.td
    M mlir/include/mlir/IR/SymbolTable.h
    M mlir/lib/IR/SymbolTable.cpp
    A mlir/test/IR/test-verifiers-symbol-user-type.mlir
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/test/lib/Dialect/Test/TestTypes.h
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][IR] Add SymbolUserTypeInterface (#198435)

This change adds SymbolUserTypeInterface, analogous to
SymbolUserAttrInterface, and extends SymbolTable verification to check
participating types.

Verification visits the types owned by an operation, (operand/result
types, block argument types, attribute-contained types, nested type
parameters) and checks each distinct type at most once, interrupting on
the first failure. Deduplication spans the whole symbol-table walk, so a
type used by multiple operations is checked only once.

Attribute (SymbolUserAttrInterface) verification also gets deduped the
same way.

Assisted-by: Codex (OpenAI)
Assisted-by: Claude (Anthropic)



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