I've developed some instrumentation which uses an MK22DX128 and noted a substantial code size increase since MCUXpresso-11.7. This was first experienced with 11.9, and testing today using the most current revision (25.6.3) yields similar results. Reported code and data sizes for the same source base are shown below.
MCUXpresso-11.7.1
Debug
PROGRAM_FLASH: 91812 B 128 KB 70.07%
Release
PROGRAM_FLASH: 83748 B 128 KB 63.89%
MCUXpresso-25.6.136
Debug
PROGRAM_FLASH: 126084 B 128 KB 96.19%
Release
PROGRAM_FLASH: 117836 B 128 KB 89.90%
The project was exported from 11.7 and imported without change into 25.6, and as far as I can tell is compiled using the same build parameters. Had I not recently deleted some diagnostics from the source base, the code would exceed available flash storage if compiled using the current revision of MCUXpresso. As it is likely that future updates to the source base will be required, I am concerned about ongoing support. At present, I have an older machine running Ubuntu-20.04 to host 11.7, however I cannot be assured that it will be available indefinitely.
Compiler options have been determined to be identical in both build environments and are listed below. Because my application depend upon 64-bit variables (both integer and floating point), Newlib is required.
I'm hoping that the difference in generated code size is due to some build parameter which I've overlooked. If that may be the case, any assistance in identifying and correcting the discrepancy would be most appreciated.
- J
Compiler options
-D__USE_CMSIS
-DCR_INTEGER_PRINTF
-DSDK_DEBUGCONSOLE=0
-D__MCUXPRESSO
-DNDEBUG
-DFSL_RTOS_BM
-DSDK_OS_BAREMETAL
-DCPU_MK22DX128VLF5
-DCPU_MK22DX128VLF5_cm4
-D__NEWLIB__
-I"/home/jstark/MCUXpresso/PTR-2/source"
-I"/home/jstark/MCUXpresso/PTR-2"
-I"/home/jstark/MCUXpresso/PTR-2/startup"
-I"/home/jstark/MCUXpresso/PTR-2/CMSIS"
-Os
-fno-common
-g
-gdwarf-4
-Wall
-c
-fmessage-length=0
-fno-builtin
-ffunction-sections
-fdata-sections
-fsingle-precision-constant
-fmacro-prefix-map="$(<D)/"=
-mcpu=cortex-m4
-mthumb
-D__NEWLIB__
-fstack-usage