-
Notifications
You must be signed in to change notification settings - Fork 196
"Insufficient flash" error message doesn't always seem to work #439
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
Milestone
Comments
As an example, after fixing the
|
mkeeter
added a commit
that referenced
this issue
Jun 10, 2022
This PR implements task autosizing, at long last! It builds on the previous work with relocatable task builds (#584). After building the relocatable task ELF file, it runs a "dummy link" against a linker script with "infinite" memory (in practice, the entirety of memory available on the chip). It then parses the resulting (static) binary to extract sizes. After finding sizes for every task, it runs the same memory packer as before, then relinks each task with the resulting memory. Task sizes are based on the target microcontroller, with a new `alignment` parameter passed to `allocate_one`. There are extensive changes to `cargo xtask sizes` to make it more generically useful, decoupling the suggestions from the "find the size of a static ELF". WARNING: this changes the format of the exported JSON files! In addition, there are a bunch of new helper functions in `Config` to help with task and memory sizing / alignment. This fixes #474 and maybe #439, and deprecates #476
Can definitely confirm that this still doesn't always work. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
While working on #438 I got a lot of linker errors when sizes were wrong. But when working on fixing up sidecar, I got:
I remembered we were working on this but forgot it was merged; when I got the linker errors I assumed it was still in a branch. But clearly it's working sometimes and not other times.
The text was updated successfully, but these errors were encountered: