GCC rules.ld heap assignment
Posted: Mon Nov 09, 2015 12:00 am
As a result of Subversion Revision 8280, builds for the STM32F407 using GCC are excessively large.
Using the RT-STM32F407-DISCOVERY example project (unmodified) and the latest trunk code, the program compiles to 158240 bytes. By reversing the changes made to os/common/ports/ARM/ARMCMx/compilers/GCC/rules.ld in that commit the compiled size goes back down to 32144.
Similarly, for another project using a STM32F103x8 it compiles to 46698 bytes with the heap assignment linker script and 34090 bytes without. Is this expected behaviour?
On another note, the STM43F103x8 devices are not currently supported by the HAL macros. These devices are Medium Density so it works fine to use the STM32F103xB definition, but I just thought I'd let you know anyway. Not a huge priority.
Using the RT-STM32F407-DISCOVERY example project (unmodified) and the latest trunk code, the program compiles to 158240 bytes. By reversing the changes made to os/common/ports/ARM/ARMCMx/compilers/GCC/rules.ld in that commit the compiled size goes back down to 32144.
Similarly, for another project using a STM32F103x8 it compiles to 46698 bytes with the heap assignment linker script and 34090 bytes without. Is this expected behaviour?
On another note, the STM43F103x8 devices are not currently supported by the HAL macros. These devices are Medium Density so it works fine to use the STM32F103xB definition, but I just thought I'd let you know anyway. Not a huge priority.