x64函数调用,在windows和linux上参数传递的不同。
windows
rcx,rdx,r8,r9 按照从左到右的顺序
xmm0,1,2,3 用来存储浮点参数
其余的参数依次从右向左压入栈中。
linux
当参数在 6 个以内,参数从左到右依次放入寄存器: rdi, rsi, rdx, rcx, r8, r9。
当参数大于 6 个, 剩余的参数,依次从右向左压入栈中。
x64函数调用,在windows和linux上参数传递的不同。
windows
rcx,rdx,r8,r9 按照从左到右的顺序
xmm0,1,2,3 用来存储浮点参数
其余的参数依次从右向左压入栈中。
linux
当参数在 6 个以内,参数从左到右依次放入寄存器: rdi, rsi, rdx, rcx, r8, r9。
当参数大于 6 个, 剩余的参数,依次从右向左压入栈中。