[FIRRTL] Add back owning module constraint for local targets after removing use of ExtractInstances
- Dominant language
- C++
- Stars
- 2.2k
- Forks
- 524
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 46
Description
In https://github.com/llvm/circt/pull/6811, we relaxed the owning module constraint for local targets. This should be safe, but is generally not something we want to do.
The problem is we have local targets to instances that have been extracted beyond the owning module boundary intentionally by ExtractInstances, but we still want to target them within the component they were originally a part of.
The change allows us to target them, and is safe, since it still requires a single instantiation site, but this extraction doesn't play well with the encapsulation of a component in general. Once we get off that approach, we should revert the above PR to restore the original constraint.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading pull request 6811 and the ExtractInstances discussion to understand why the owning-module constraint was relaxed for local targets. Identify the constraint and its original behavior, then determine whether the extraction approach has been removed. Done means restoring the original constraint without breaking intentional local targets.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- compilers
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100