New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
API: Implement and use the SymbolTable Trait #1338
Conversation
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #1338 +/- ##
==========================================
+ Coverage 89.66% 89.68% +0.01%
==========================================
Files 193 193
Lines 25043 25117 +74
Branches 3770 3786 +16
==========================================
+ Hits 22456 22526 +70
- Misses 1992 1994 +2
- Partials 595 597 +2
☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM modulo minor changes, thank you for doing this
Co-authored-by: Sasha Lopoukhine <superlopuh@gmail.com>
Co-authored-by: Sasha Lopoukhine <superlopuh@gmail.com>
Co-authored-by: Sasha Lopoukhine <superlopuh@gmail.com>
Co-authored-by: Sasha Lopoukhine <superlopuh@gmail.com>
1688168
to
cd821fe
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very nice!
Co-authored-by: Fehr Mathieu <mathieu.fehr@gmail.com>
The SymbolTable trait offer Symbol lookup utilites and ensure Symbol uniqueness amongst its children Symbols.
This implements it, tests it, and use it on implemented operations, that is:
builtin.module
,gpu.module
, andirdl.dialect
.For reference: https://mlir.llvm.org/docs/SymbolsAndSymbolTables/
NB: This documentation states "Described above are Symbols, which reside within a region of an operation defining a SymbolTable." but I could not find any enforcment of this anywhere in the codebase, so I didn't implement it. If anyone finds it, please tell 🙂