AROS ABIv1

From www.evillabs.net
Revision as of 21:29, 1 August 2012 by Ezrec (talk | contribs) (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 ...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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.