如何解决为什么MSVC不在生成的汇编代码中内联变量名?
使用MSVC将下面的程序编译为汇编程序时:
int main() {int var1 = 1; int var2 = 2;}
然后生成的汇编代码将如下所示:
var1$ = 0
var2$ = 4
main PROC
sub rsp,24
mov DWORD PTR var1$[rsp],1
mov DWORD PTR var2$[rsp],2
xor eax,eax
add rsp,24
ret 0
main ENDP
我想知道为什么var1$ = 0
和var2$ = 4
是必需的,因为可以通过将它们mov
和{{1 }}。这样可以使程序集更小,也可以使.obj和.exe文件更小。
我正在使用mov DWORD PTR [rsp],1
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。