我的问题是关于在startup script这样的ARM CORTEX M启动文件中使用.size运算符。
我已经阅读了有关.size运算符的其他问题,我的理解是,以下几行:
.size X,.-X
允许通过当前位置(。)与符号X的定义之间的距离来定义X的大小。
在X定义的末尾使用此行时可以。没问题。 但是,如果在符号前使用它,它将如何工作?
在启动脚本的第94行,您可以阅读:
.section .isr_vector,"a",%progbits
.type g_pfnVectors,%object
.size g_pfnVectors,.-g_pfnVectors
g_pfnVectors:
.word _estack
.word Reset_Handler
[...]
不是应该定义-1的大小吗?它如何运作?我想这不是一个错误,因为您可以在所有STM32启动代码中找到它^^
谢谢