AROS ABIv1: Difference between revisions

From www.evillabs.net
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 ...")
(No difference)

Revision as of 21:29, 1 August 2012

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 a scratch register
  • Regcall ABI (ie AROS_LH(...))
 - Library base passed in as an argument
 - Must not be (,...) varadic
 - Up to 14 arguments
  • SysV ABI
 - 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.