diff options
author | Brian Paul <[email protected]> | 2005-05-07 16:59:58 +0000 |
---|---|---|
committer | Brian Paul <[email protected]> | 2005-05-07 16:59:58 +0000 |
commit | 42fa81275c67d7d1ad8d255120af0ffeeb46b963 (patch) | |
tree | 1c786fb74f62263d6a1a312178bcef74daeffa5e /src/mesa/x86-64/calling_convention.txt | |
parent | e3f684b753c94d8657a1487655b41fdfc0119dba (diff) |
x86-64 transform optimizations (Mikko T.)
Diffstat (limited to 'src/mesa/x86-64/calling_convention.txt')
-rw-r--r-- | src/mesa/x86-64/calling_convention.txt | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/mesa/x86-64/calling_convention.txt b/src/mesa/x86-64/calling_convention.txt new file mode 100644 index 00000000000..4147f7eba91 --- /dev/null +++ b/src/mesa/x86-64/calling_convention.txt @@ -0,0 +1,50 @@ +Register Usage +rax temporary register; with variable arguments passes information + about the number of SSE registers used; 1st return register + +rbx* callee-saved register; optionally used as base pointer + +rcx used to pass 4th integer argument to functions + +rdx used to pass 3rd argument to functions 2nd return register + +rsp* stack pointer + +rbp* callee-saved register; optionally used as frame pointer + +rsi used to pass 2nd argument to functions + +rdi used to pass 1st argument to functions + +r8 used to pass 5th argument to functions + +r9 used to pass 6th argument to functions + +r10 temporary register, used for passing a function's static chain pointer + +r11 temporary register + +r12-15* callee-saved registers + +xmm0�1 used to pass and return floating point arguments + +xmm2�7 used to pass floating point arguments + +xmm8�15 temporary registers + +mmx0�7 temporary registers + +st0 temporary register; used to return long double arguments + +st1 temporary registers; used to return long double arguments + +st2�7 temporary registers + +fs Reserved for system use (as thread specific data register) + + + +*) must be preserved across function calls + +Integer arguments from list: rdi,rsi,rdx,rcx,r8,r9,stack +Floating point arguments from list: xmm0-xmm7
\ No newline at end of file |