Displaying 2 results from an estimated 2 matches for "mac_os_x_abi_function_call_guide".
2009 Jan 27
0
[LLVMdev] PPC calling convention -- how to provide an environment pointer?
...here *none* of its callees take any arguments.
>
> So: are R11 and R12 reserved enough on Darwin to be safe for our
> purposes?
>
Quoting from a table titled Register Preservation on page 22 of this
PDF:
http://developer.apple.com/documentation/developertools/Conceptual/LowLevelABI/Mac_OS_X_ABI_Function_Call_Guide.pdf
Reg Preserved
Notes
---------------------------
GPR0 No
(No notes.)
...
GPR2 No
Available for general use.
...
GPR11 Yes in nested functions. No in leaf functions.
In nested functions, the caller passes its stackframe to the nested
function in this register. In leaf functions, the regist...
2009 Jan 27
2
[LLVMdev] PPC calling convention -- how to provide an environment pointer?
...o the Darwin ABI. Let me know if these links don't work
for you:
http://developer.apple.com/documentation/developertools/Conceptual/LowLevelABI/100-32-bit_PowerPC_Function_Calling_Conventions/32bitPowerPC.html
http://developer.apple.com/documentation/developertools/Conceptual/LowLevelABI/Mac_OS_X_ABI_Function_Call_Guide.pdf
You may be able to use R11, R12, or R0. I assume you're aware that R0
reads as zero in some instruction fields; AFAIK, Darwin only uses R0
as a zero.
Good Luck,
stuart