Other Parts Discussed in Thread: MSPM0G3107, SYSCONFIG
Tool/software:
Hi
i currently face issues that seem like a stackoverflow; so I increased the stack size from 0x200 to 0x400 and finally even 0x800 yet the result has not changed.
Upon Closer inspection i see that in my linkerfile the stack size is still at 0x200 instead of the set larger size this is despite me doing a full clean rebuild of the project..
****************************************************************************** TI ARM Clang Linker PC v4.0.2 ****************************************************************************** >> Linked Fri Apr 11 13:58:16 2025 OUTPUT FILE NAME: <MCUCode.elf> ENTRY POINT SYMBOL: "_c_int00_noargs" address: 0000b061 MEMORY CONFIGURATION name origin length used unused attr fill ---------------------- -------- --------- -------- -------- ---- -------- FLASH 00000000 00020000 0000fa60 000105a0 R X SRAM 20200000 00008000 000045a1 00003a5f RW X BCR_CONFIG 41c00000 000000ff 00000060 0000009f R BSL_CONFIG 41c00100 00000080 00000058 00000028 R SEGMENT ALLOCATION MAP run origin load origin length init length attrs members ---------- ----------- ---------- ----------- ----- ------- 00000000 00000000 0000db10 0000db10 r-x 00000000 00000000 000000c0 000000c0 r-- .intvecs 000000c0 000000c0 0000be30 0000be30 r-x .text 0000bef0 0000bef0 00001c20 00001c20 r-- .rodata 0000db70 0000db70 00000ef0 00000ef0 r-- 0000db70 0000db70 00000ee0 00000ee0 r-- .cinit 0000ea50 0000ea50 00000010 00000010 r-- .binit 0001f000 0001f000 00001000 00001000 r-- 0001f000 0001f000 00000400 00000400 r-- .ProductionInfo 0001f400 0001f400 00000400 00000400 r-- .StateBackup 0001f800 0001f800 00000400 00000400 r-- .Diagnostics 0001fc00 0001fc00 00000400 00000400 r-- .Calibrations 20200000 20200000 00004344 00000000 rw- 20200000 20200000 00003645 00000000 rw- .data 20203648 20203648 00000800 00000000 rw- .sysmem 20203e48 20203e48 000004fc 00000000 rw- .bss 20204348 0000db10 00000060 00000060 r-x 20204348 0000db10 00000060 00000060 r-x .TI.ramfunc 20207e00 20207e00 00000200 00000000 rw- 20207e00 20207e00 00000200 00000000 rw- .stack 41c00000 41c00000 00000060 00000060 r-- 41c00000 41c00000 00000060 00000060 r-- .BCRConfig 41c00100 41c00100 00000058 00000058 r-- 41c00100 41c00100 00000058 00000058 r-- .BSLConfig SECTION ALLOCATION MAP
So for all that it seems like to me the stack size argument is completely ignored...
I use CCS Theia 20.1.1.8 and an MSPM0g3107 and the TIclang compiler on Windows in case that matters...
the complete linker settings are
where linker.opt contains
-Wl,-m"MCUCode.map" -Wl,-i"C:/ti/mspm0_sdk_2_04_00_06/source" -Wl,-i"C:/GitRepos/MCUCode/Debug/syscfg" -Wl,-i"C:/ti/ccs2002/ccs/tools/compiler/ti-cgt-armllvm_4.0.2.LTS/lib" -Wl,--diag_wrap=off -Wl,--display_error_number -Wl,--warn_sections -Wl,--xml_link_info="MCUCode_linkInfo.xml" -Wl,--rom_modeland eepromMap.opt contains
-Wl,-l"eepromMap.cmd"
where eepromMap.cmd in turn contains
SECTIONS { .ProductionInfo: type=NOINIT {} > 0x0001f000 .StateBackup: type=NOINIT {} > 0x0001F400 .Diagnostics: type=NOINIT {} > 0x0001F800 .Calibrations: type=NOINIT {} > 0x0001FC00 }
so for all that i am concerned i can not see any way how that size argument should be possibly overridden