Skip to content
This repository has been archived by the owner on Aug 19, 2024. It is now read-only.

Preserve annotations from initial FIRRTL pass #9

Merged
merged 1 commit into from
Dec 27, 2018

Conversation

nhynes
Copy link

@nhynes nhynes commented Dec 27, 2018

This PR fixes an issue where new/updated annotations from the initial compiler pass are not passed to the following lowering pass.

Related: chipsalliance/chisel#968

Copy link
Member

@ducky64 ducky64 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks fine. Though it also seems like a bit of a gotcha (it's not immediately obvious that one needs to modify the options after the FIRRTL run to pass through annotations), but I assume this is something that will be fixed by annotations as options?

@nhynes
Copy link
Author

nhynes commented Dec 27, 2018

this is something that will be fixed by annotations as options?

Yep, I can successfully load bundle memories from file now. I think that the root issue is that the emitted FIR string doesn't actually contain any of the annotations--they're stored separately in the CircuitState, so unless that is passed into treadle wholesale, they have to be added through options.

@ducky64 ducky64 merged commit cfcef43 into ucb-bar:master Dec 27, 2018
@nhynes nhynes deleted the preserve-annos branch December 27, 2018 20:10
@jackkoenig
Copy link
Collaborator

I believe that Annotations as options will fix this because it is generalizing everything (including CircuitState) into Annotations which will then be what is passed to everything (including treadle)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants