Contents|Index|Previous|Next

Calling conventions for m68k

The Motorola m68k pushes all arguments onto the stack, last to first, so that the lowest numbered argument not passed in a register is at the lowest address in the stack.

Function return values for integers are stored in D0 and D1. A7 has a reserved use. Registers A0, A1, D0, D1, F0, and F1 can be used for temporary values.

When a function is compiled with the default options, it must return with registers D2 through D7 and registers A2 through A6 unchanged.

If you have floating-point registers, then registers F2 through F7 must also be unchanged.

Note:
Functions compiled with different calling conventions cannot be run together without some care.