ARM MDK开发中的\$Super\$\$main与\$Sub\$\$main
参考
一般在.s文件中通过类似如下代码来跳入__main中,也就是$Sub$$main函数中:
; reset Vector table address.
LDR R0, =0xE000ED08
STR R2, [R0]
LDR R0, =SystemInit
BLX R0
LDR R0, =__main
BX R0
ENDP
当代码中出现如下代码时,一般表示使用$Super$$main来跳入main函数中,只是使用宏定义的方式去替换$Super$$main为main
/* invoke system main function */
#if defined(__CC_ARM) || defined(__CLANG_ARM)
//$Super$$main(); /* for ARMCC. */
#elif defined(__ICCARM__) || defined(__GNUC__)
main();
#endif

浙公网安备 33010602011771号