[问题] callstack for x86/x64

楼主: yshihyu (yshihyu)   2016-01-24 16:13:50
https://gist.github.com/anonymous/3f2a1d658af451d1b9f6 // 程式码
gcc -m32 -g test.c -o test
objdump -dS test
https://gist.github.com/anonymous/88ad40d047d19827b202
gcc -g test.c -o test
objdump -dS test
https://gist.github.com/anonymous/95e284285fc3f558c082
请问为什么分析 call stack gcc 都会加上 -m32 ,
看网络上讲法x64函数参数是用register 传递, 这样不能分析吗?
-m32 是内存传递?
如果不加上 -m32 在 x64 分析 call stack 会有什么问题吗?
谢谢
作者: mshockwave (夏克维夫)   2016-01-24 17:19:00
不行在64bits机子上用32bits的calling convention吧
作者: tjjh89017 (伊达政宗)   2016-01-24 17:34:00
-m32是把程式编译成32bit
作者: descent (“雄辩是银,沉默是金”)   2016-01-24 22:09:00
x86/x64 的 function call convention 不同,单纯看你想看哪一种

Links booklink

Contact Us: admin [ a t ] ucptt.com