Pass optional name in ImportDefinitionAnno used during Separate elaboration of definition and instance #2592
Conversation
|
@mwachs5 @azidar @jackkoenig - this PR addresses part of the problem when we have prefixing / name changes involved between different elaborations - i.e. the subsequent elaborations need to be passed "the final name in the circuit" of the definition. What this final name will be is a separate problem to solve (for example when there is a High level this is what was done
Still working on adding more tests - feel free to comment / suggest changes or request for more clarifications. |
|
In general, I think we'd be better served to re-visit #2155 and fix its limitations. What do you think? I'll comment on that PR |
|
@mwachs5 - agreed. However my main concern is that path might take longer depending on the challenges we face. Adding support to pass extModName for the external definition - might be useful to come up with adhoc solutions tackle with prefixing + multiple elaborations. |
core/src/main/scala/chisel3/experimental/hierarchy/core/Definition.scala
Outdated
Show resolved
Hide resolved
|
@mwachs5 @jackkoenig @azidar - please re-review when you all can! |
jackkoenig
left a comment
There was a problem hiding this comment.
One nit but overall LGTM
|
@jackkoenig FYI we would need this backported to 3.5 (assuming that's what we use internally). Not sure who is going to take care of that. |
Used for separate elaboration of Definition and Instance (cherry picked from commit 48d57cc)
Contributor Checklist
docs/src?Type of Improvement
API Impact
Backend Code Generation Impact
definition.proto.name- now it can hold a different value provided by the user.Technical Debt
Desired Merge Strategy
Squash
Release Notes
Reviewer Checklist (only modified by reviewer)
3.4.x, [small] API extension:3.5.x, API modification or big change:3.6.0)?Enable auto-merge (squash), clean up the commit message, and label withPlease Merge.Create a merge commit.