Skip to content

ice40, ecp5: enable ABC9 by default #4019

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

Merged
merged 1 commit into from
Nov 3, 2023
Merged

Conversation

Ravenslofty
Copy link
Collaborator

It's been four years since ABC9 was last proposed to be used by default. The arguments made back then still apply: results are superior compared to the default ABC flow, and we seem to have gotten most of the bugs fixed or worked around.

So, I'm once again asking for your financial support ABC9 to be made the default on iCE40 and ECP5. I think using these two architectures as a baseline for wide adoption should quickly expose any other bugs in ABC9 that can then be fixed, given how popular they are over the others.

Copy link
Member

@whitequark whitequark left a comment

Choose a reason for hiding this comment

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

Based on discussion with @Ravenslofty I am in support of this change.

@Ravenslofty Ravenslofty force-pushed the lofty/abc9-by-default branch from 0cc2b40 to 1e6d9c1 Compare November 2, 2023 19:55
@Ravenslofty Ravenslofty force-pushed the lofty/abc9-by-default branch from 1e6d9c1 to 3208247 Compare November 3, 2023 08:52
@Ravenslofty Ravenslofty merged commit deebb82 into master Nov 3, 2023
@Ravenslofty
Copy link
Collaborator Author

Well, here goes nothing.

@Ravenslofty Ravenslofty deleted the lofty/abc9-by-default branch November 3, 2023 14:13
@nakengelhardt
Copy link
Member

I feel like this is a big enough change that it should have been discussed before merging...

@Ravenslofty
Copy link
Collaborator Author

Would you be willing to humour me?

  • It's past the beginning of the month, so the commercial builds of Yosys use the stable ABC flow.
  • There's a built-in option in this patch to revert back to that ABC flow, for emergencies.
  • ABC9 has been experimental for...five years now, and the only way for us to tell how stable it is in the real world is for it to get out there and receive bug reports.
  • I'm quite happy for this to be reverted at the end of the month, but I'm a little tired of the circle of "it's experimental because we don't know how it behaves in the real world" and "we don't know how it behaves in the real world because it's experimental".

Ultimately, as the de-facto maintainer of ABC9, responsibility for fixing the ensuing bug reports falls on my shoulders, and I would rather have this out there and then get reverted so bugs can be found and fixed than the present "useful feature is not enabled by default and scares users with a big (EXPERIMENTAL)."

@nakengelhardt
Copy link
Member

And this was so urgent that you could not wait until Monday to discuss these points at the dev JF? The release for this month is not out yet.

@Ravenslofty
Copy link
Collaborator Author

Okay, I've reverted it.

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

Successfully merging this pull request may close these issues.

3 participants