工具与软件:
您好!
将我的 C++程序与 tiarmclang (v 3.2.2)链接后、我可以在创建的 elf 中看到为初始化消隐的符号:
num: 值 大小类型 绑定 到 NDX 名称
1201:00007aa4 0 NOTYPE 全局隐藏 6 __TI_NOTYPE Handler_Table_Base
1202:00007ab0 NOTYPE 全局隐藏 6 __TI_NOTYPE Handler_Table_Limit
1198:00007ad8 0 NOTYPE 全局隐藏 6 __TI_CINIT_Base
1199:00007b08 0 NOTYPE 全局隐藏 6 __TI_CINIT_LIMIT
但是,当我从 ResetISR()开始调试程序时,我使用以下行进入 run_cinit ():
如果(&&_TI_ADC Handler_Table_Base!= Handler_Table_Limit)
对 assambler 指令进行步进时、我看到&_TI_ADC Handler_Table_Base 和 Handler_Table_Limit 均为零。 因为没有任何变量的初始化。
我的 Linker 调用为:
tiarmclang -o project.elf -DeviceFamily_CC13X1 -mcpu=cortex-m4 -mfloat-abi=soft -mfpu=none -mlittle-endian -mthumb -gdwarf-3 -march=armv7e-m -wti-pragma -wti-macros-wti-intrinsics
-parameter -wno-psabi -wdouble-promotions -dDEBUG -undebug -WL、--rom_model -WL、--zero_init=on < >-lbuild -lsimplelink_cc13xx_cc26xx_sdk_7_41_00_17/source -lsimplelink_cc13xx_cc26xx_sdk_7_41_00_17/kernel/tirtos7/packages -Lsyscfg/ linker.cmd -emit、-m=project.map -wl、--emit_references:file=-linker=l_libs-libs-libs_libs-libs-link_text=libs-libs-link_text=libs-lib_release- project.info.xml