03-04-2022 07:42 AM
Hi,
looking at the binary sizes of libalgobsec.a, compiled for different architectures using GCC, I noticed that the size for Cortex_M33F (49453 B) is notably larger than the size for the comparable Cortex_M4F (27841). Both architectures support an FPU, and similar instruction sets; so I would expect similar compact code.
In case of the M4F, the size increase, in comparison to the non-FPU version, is only some hundred bytes, in case of the M33F it is around 12 KiB:
Cortex_M33 27337
Cortex_M33F 49453
Cortex_M4 27225
Cortex_M4F 27841
Is there a difference in GCC's compiler options (like, a different optimization choice) or some other conditions, that explain the binary size increase on M33F? I suppose that even functions that don't contain floating point instructions might have been doubled in size.
03-04-2022 08:29 AM
Hello knieriem,
Generally, different processors and compilers should not be so different with same software code. Let me check and give you feedback later.
04-07-2022 11:23 PM
04-13-2022 10:52 AM
There were two same topic, we could discuss in one ticket: https://community.bosch-sensortec.com/t5/MEMS-sensors-forum/BSEC-2-0-6-1-Cortex-M33F-binary-size-of-...