ARM 匯編中的 "B ." 語(yǔ)句意義.
今天在玩 STM32F3 Discovery 的時(shí)候, 燒寫(xiě)程序后,
FreeRTOS 運(yùn)行一會(huì)就會(huì)跳轉(zhuǎn)到 startup_stm32f30x.s 內(nèi)的系統(tǒng)服務(wù)調(diào)用處理這段程序的"B ."處, 如下.
SVC_HandlerPROC
EXPORTSVC_Handler[WEAK]
B.
ENDP
查閱了一下 keil-MDK 的幫助文檔, 在Built-in variables and constants 節(jié)找到了解釋, 也就是跳轉(zhuǎn)到當(dāng)前行呀.
2333333. 如下圖:
好吧. 順便解釋一下 [WEAK] 的意義吧. 先看官方解釋 :)
先上一句別處的零散話:
WEAK
symbolisonlyimportedintoothersourcesifnoothersourceexportsanalternativesymbol.
If[WEAK]isusedwithoutsymbol,allexportedsymbolsareweak.
意思就是告訴鏈接器:
"我略弱但我很紳士, 如果你在別處看到和我一樣的符號(hào)實(shí)例.你就用它吧. 表管我, 求忽視! "