> move.w 4(%a6),%d0 But isn't the SP a7? So wouldn't it be: move.w 4(%a7),%d0 and isn't the reason that there a 4 bytes allocated by GCC because the top 4 bytes are a longword representing the address that the currrent function should return to? Not just because it's using the LINK instruction? Mark Leverentz