bulebule icon indicating copy to clipboard operation
bulebule copied to clipboard

Update the toolchain

Open Peque opened this issue 6 years ago • 2 comments

To newer versions of arm-none-eabi-gcc and arm-none-eabi-binutils.

Requirements:

  • [ ] Generated binary must fit in the microcontroller (ideally not growing in size)
  • [ ] Performance must not be affected significantly
  • [ ] 1278df6f7cf3cd6a8f5ec541ba1210dc46afb3df should be reverted (see #416)
  • [ ] libopencm3 should compile successfully for all families

Peque avatar Sep 16 '19 18:09 Peque

Maybe the solution is to set the "specs":

LDFLAGS         += -specs=nano.specs
/* or */
TGT_LDFLAGS     += -specs=nano.specs

Should we use the TGT_ prefix?

Maybe related links:

  • https://stackoverflow.com/questions/57963506/section-text-will-not-fit-after-upgrading-arm-none-eabi-gcc
  • https://github.com/search?q=org%3Alibopencm3+nano&type=Code
  • https://stackoverflow.com/questions/54042558/g-arm-none-eabi-upgrade-from-4-9-to-gcc-8-2-generated-binary-do-not-fit-any-m
  • http://pabigot.github.io/bspacm/newlib.html

Peque avatar Sep 16 '19 20:09 Peque

Have a look at:

  • https://keithp.com/blogs/picolibc/
  • https://github.com/keith-packard/picolibc

Update on picolibc (now Amazon is paying the developer): https://static.sched.com/hosted_files/osselc21/7b/picolibc.pdf

Peque avatar Sep 25 '19 22:09 Peque