Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Certain annotations are not getting deleted by SFC, resulting in compilation failures when running MFC #1309

Open
2 tasks done
joonho3020 opened this issue Jan 9, 2023 · 0 comments
Assignees

Comments

@joonho3020
Copy link
Contributor

joonho3020 commented Jan 9, 2023

Background Work

Feature Description

DontTouchAnnotations are not getting deleted after the SFC pass, which results in MFC errors. This is because MFC will try to perform passes correlated to DontTouchAnnotations but the related variables may be missing(SFC could have renamed it or sth).

Currently, we are addressing this by deleting all the corresponding annotations by using jq inside common.mk (#1239).
In the long term, we want a cleaner way of doing this (e.g., fix the SFC to delete the annotations after they are used).

Another related issue is that MFC cannot compile designs containing Fixed & Interval types. At the moment, we are using SFC to compile CHIRRTL into LowFIRRTL & MFC to compile LowFIRRTL to Verilog when we find Fixed types inside the design (we perform grep Fixed inside common.mk). For the SFC + MFC compilation steps to work more elegantly, we need to rewrite Fixed types (and Interval types).

Motivating Example

Look at #1239.

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

No branches or pull requests

1 participant