When I parse the data for flash/rom data like: .text+.ARM.exidx I get the following graph:
(I also can't add the .relocate section because it parses it like RAM only and will set max to 30k.)
What I am missing is the parsing of the maximum value. It currently parses as 0 bytes. (hence the (MAX) .text .ARM.exidx is all the way at the bottom)
When I include the rom section like: .text+.ARM.exidx,rom I'll get the following graph:
Which is a workaround-ish because now it does show the maximum value, however it looks ugly as sh--.
The other issues that is happening is that the FMEA_SAFETY_DATA_LOCATION and TOUCH_SAFETY_DATA_LOCATION are parsed like they have 30k of space each, so I can't include them in the .relocate+.bss+.stack calculation, because than the maximum becomes 90k, and not 32k (which is expected: (0x7580 + 0x670+0x400 = 0x8000 = 32k).
For a reference, this is the output from the compiler:
"C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\arm\arm-gnu-toolchain\bin\arm-none-eabi-size.exe" "[redacted].elf"
text data bss dec hex filename
148044 2844 16904 167792 28f70 [redacted].elf
Done executing task "RunCompilerTask".
Using "RunOutputFileVerifyTask" task from assembly "C:\Program Files (x86)\Atmel\Studio\7.0\Extensions\Application\AvrGCC.dll".
Task "RunOutputFileVerifyTask"
Program Memory Usage : 150888 bytes 57,6 % Full
Data Memory Usage : 19748 bytes 60,3 % Full
If there is anything I should be doing/testing/changing please let me know.
Kind regards,
Edit, if I require to send you the used .ld and .map file, let me know. Because I'll have to remove company sensitive information from the map file first.
I seem to be unable to properly parse the .text section in our map file. Map file is generated by (arm) gcc.
This is the output that I am getting from a test-run with fixed pre-built .map file + associated linker file:
When I parse the data for flash/rom data like:
.text+.ARM.exidx
I get the following graph: (I also can't add the.relocate
section because it parses it like RAM only and will set max to 30k.) What I am missing is the parsing of the maximum value. It currently parses as 0 bytes. (hence the (MAX) .text .ARM.exidx is all the way at the bottom)When I include the
rom
section like:.text+.ARM.exidx,rom
I'll get the following graph: Which is a workaround-ish because now it does show the maximum value, however it looks ugly as sh--.The other issues that is happening is that the FMEA_SAFETY_DATA_LOCATION and TOUCH_SAFETY_DATA_LOCATION are parsed like they have 30k of space each, so I can't include them in the
.relocate+.bss+.stack
calculation, because than the maximum becomes 90k, and not 32k (which is expected: (0x7580 + 0x670+0x400 = 0x8000 = 32k).For a reference, this is the output from the compiler:
Where:
In the linker file:
If there is anything I should be doing/testing/changing please let me know.
Kind regards,
Edit, if I require to send you the used .ld and .map file, let me know. Because I'll have to remove company sensitive information from the map file first.