[fpc-devel] registers used in function call, any rule?

Jonas Maebe jonas.maebe at elis.ugent.be
Wed Apr 27 20:03:51 CEST 2011


On 27 Apr 2011, at 19:51, Martin wrote:

> Not sure were I got my original info from... , but at current lazarus-ide (debugger) assumes that (on 64 bit) arguments (to fpc_raiseexceptions) are passed in RDI, RSI, RDX.
> 
> I thought some one had told me that this was some kind of standard and would always work? (I may be wrong...)
> 
> Now I just been running some code in the debugger 64 bit, win XP.
> 
> And the first arg was either in rax or rcx; see assembler below
> 
> Any ideas how to know what register to expect?

Win64 uses a different ABI than all other x86-64 platforms.


Jonas


More information about the fpc-devel mailing list