-
Notifications
You must be signed in to change notification settings - Fork 317
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[FIRRTL][IMDCE] Don't remove modules with symbol uses (#8114)
Mark any modules alive that appear as symbol references outside of hierarchical path and instance operations. Prevent modules from being deleted if they are explicitly marked as alive. This fixes an issue in IMDCE where references to modules in `firrtl.formal` or other unknown operations would become invalidated due to the pass deleting the modules despite these references. The pattern of walking operations' attribute dictionary an looking for symbol references is inspired by what MLIR's `SymbolTable` does internally in `walkSymbolRefs` when looking for symbol uses.
- Loading branch information
1 parent
bef7139
commit e4a2d66
Showing
2 changed files
with
62 additions
and
16 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters