Skip to content

build.yml: Use a newer build toolchain #2306

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 7 commits into from
Dec 3, 2019
Merged

Conversation

jepler
Copy link

@jepler jepler commented Nov 20, 2019

.. the new version is not offered in .deb form, so the installation process also changes

Problems:

  • several m0 builds (pirkey, trinket, pyruler) no longer fit
  • this uses the tarball direct from arm; I think we'd prefer to have it in storage managed by circuitpython project, like the current toolchain .deb

@jepler jepler requested a review from tannewt November 20, 2019 16:22
@jepler
Copy link
Author

jepler commented Nov 20, 2019

@tannewt let me know what direction you'd like to see this go in, now that we know there are failures due to binary size increases

@tannewt
Copy link
Member

tannewt commented Nov 20, 2019

Let's close this for now. We can update along with CP 6. The Pirkey is hundreds of bytes over which will be hard to recover.

@jepler
Copy link
Author

jepler commented Nov 20, 2019

@tannewt makes sense, couldn't have been predicted without the CI run...

@jepler jepler closed this Nov 20, 2019
@jepler
Copy link
Author

jepler commented Nov 21, 2019

I'm looking at this again, there are some optimization flags we can set so that gcc9 behaves closer to gcc7 in terms of code size. I think this may let the most constrained m0 boards fit again.

@jepler jepler reopened this Nov 21, 2019
.. the new version is not offered in .deb form, so the installation
process also changes
By tweaking the optimizer flags, we can get back a few hundred bytes
and allow these builds to work with the gcc9 compiler.
By tweaking the optimizer flags further, this build also fits
pewpew10, pirkey_m0, and uchip all fit now.  However, pirkey_m0
now has just 76 bytes flash available.
@jepler
Copy link
Author

jepler commented Nov 26, 2019

Sigh another board that doesn't fit

.. inline-unit-growth was the same across all boards, and the highest
max-inline-insns-auto parameter was shared across 2 of 5 boards, so it's
worth a little work to follow the DRY principle
@jepler jepler marked this pull request as ready for review December 2, 2019 02:22
Copy link
Member

@tannewt tannewt left a comment

Choose a reason for hiding this comment

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

Nice! Looks great! Thanks for sticking with this.

@tannewt tannewt merged commit e1a904f into adafruit:master Dec 3, 2019
@jepler jepler deleted the gcc9 branch November 3, 2021 21:09
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.

2 participants