[FIRRTL] LowerToHW discards private modules
- Dominant language
- C++
- Stars
- 2.2k
- Forks
- 524
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 46
Description
The `LowerToHW` pass currently discards private modules that are not instantiated. This is problematic if the modules contain contracts that we would like to verify later on. It would be nice if `LowerToHW` would simply lower the existing modules, and if we used SymbolDCE or a similar pass later on to discard unused modules.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the LowerToHW pass and tracing where private, uninstantiated modules are removed. Compare its behavior with SymbolDCE or a similar later pass, using existing LowerToHW tests if present. Done means LowerToHW lowers existing private modules without discarding them, leaving unused-module elimination to a later pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100