AROS ABIv1: Difference between revisions
Jump to navigation
Jump to search
(Created page with "= Libraries = * The library basecall register must be: - Saved by the called function by the ABI of the architecture - Not a register that is used to hold arguments - Not ...") |
|||
Line 1: | Line 1: | ||
= Libraries = | = Libraries = | ||
* Regcall ABI (ie AROS_LH(...)) | * Regcall ABI (ie AROS_LH(...)) | ||
Line 11: | Line 6: | ||
- Up to 14 arguments | - Up to 14 arguments | ||
* SysV ABI | * SysV ABI calls | ||
- Library base passed in via the basecall register | - Library base passed in via the basecall register | ||
- On the library side, the register is saved in the | - On the library side, the register is saved in the | ||
task's taskstorage slot for this library. | task's taskstorage slot for this library. |
Revision as of 02:28, 2 August 2012
Libraries
- Regcall ABI (ie AROS_LH(...))
- Library base passed in as an argument - Must not be (,...) varadic - Up to 14 arguments
- SysV ABI calls
- Library base passed in via the basecall register - On the library side, the register is saved in the task's taskstorage slot for this library.