diff options
author | Hongren Zheng <i@zenithal.me> | 2025-05-10 22:36:55 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-05-10 22:36:55 +0800 |
commit | 3f03f530c7411de8049c40a125b63b2defcdb8c2 (patch) | |
tree | fbf1988ff2d301254a21d64c6152b1f822522be0 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | 6bf948c2ece1bf5e78a8b11fd742e7938bb62e4e (diff) | |
download | llvm-3f03f530c7411de8049c40a125b63b2defcdb8c2.zip llvm-3f03f530c7411de8049c40a125b63b2defcdb8c2.tar.gz llvm-3f03f530c7411de8049c40a125b63b2defcdb8c2.tar.bz2 |
[MLIR][TableGen] Add genMnemonicAlias field for OpAsm{Type,Attr}Interface (#131504)
Since the introduction of `OpAsm{Type,Attr}Interface` (#121187), it is
possible to generate alias in AsmPrinter solely from the type/attribute
itself without consulting the `OpAsmDialectInterface`. This means the
behavior can be put in tablegen file near the type/attribute definition.
A common pattern is to just use the type/attr mnemonic as the alias.
Previously, like #130479/#130481/#130483, this means adding a default
implementation to `extraClassDeclaration` in `LLVM_Attr` base class.
However, as attribute definition may override `extraClassDeclaration`,
it might be preferred to have a new field in tablegen to specify this
behavior.
This commit adds a `genMnemonicAlias` field to `AttrOrTypeDef`, when
enabled, makes `mlir-tblgen` emit a default implementation of `getAlias`
using mnemonic. When `OpAsm{Attr,Type}Interface` is not specified by the
user, `tblgen` will automatically add the interface.
For users wanting other alias behavior, they can ignore such field and
still use `extraClassDeclaration` way.
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions