Compiled application from GCC v7 differs and does not work in comparison to GCC v4.8 version
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
GNU Arm Embedded Toolchain |
New
|
Undecided
|
Unassigned |
Bug Description
I am compiling the source code from https:/
The outputs from keil, segger embedded studio and ARM GCC v4.8.4 all work on the target device and produce a hex filesize of 66KB, the ARM GCC v7.2.1 version however produces a smaller hex file of 57KB and whilst it illuminates the LED on the target board, no other parts of the application function (which call 'softdevice' functions, i.e. functions that reside in an application that already resides on the embedded hardware), so it seems to be missing something or a lot.
I don't know how to investigate what is causing the problems i.e. if code is missing or what. The application compilation flags are the same for all builds - with debug, optimise for size. I've attached a zip of 3 hex files, the larger files from GCC v4.8 and SES's version of GCC and the smaller non-functioning one from GCC v7. I also made a quick script to compare what functions were in the disassembly of both versions and I've included that in the zip file too along with the assembly files themselves if they're of any use.
Toolchains being used are from the binary releases on the launchpad site.
Host machine is windows 7 64-bit
Testcase: download the nRF52 SDK v14.2.0 from http://
New toolchains can reveal old bugs.
Start by generating and comparing .map files for the builds.