我是汇编的新手,试图了解以下函数的 objdump:
int nothing(int num) {
return num;
}
Run Code Online (Sandbox Code Playgroud)
这是结果(linux,x86-64,gcc 8):
push rbp
mov rbp,rsp
mov DWORD PTR [rbp-0x4],edi
mov eax,DWORD PTR [rbp-0x4]
pop rbp
ret
Run Code Online (Sandbox Code Playgroud)
我的问题是: 1.edi从哪里来?阅读一些介绍文档,我的印象是[rbp-0x4]将包含num. 2. 从上面可以看出,edi 显然包含了这个论点。但是,它[rbp-0x4]扮演什么角色呢?为什么不只是mov eax, edi?
谢谢!