[fpc-devel] register calling convention for Apple M1 ?

Martin Frb lazarus at mfriebe.de
Wed Feb 16 21:17:37 CET 2022

Trying to get the IDE lldb based debugger to work on M1....
But I don't have M1 myself, so ...

      procedure fpc_Raiseexception (Obj : TObject; AnAddr : CodePointer; 
AFrame : Pointer); compilerproc;
is entered, the IDE tries to get the arguments. In normal user installs 
this code has no debug info, though the IDE relies on knowing the 
register for each of he arguments?

I do hope that the call on M1 also uses registers. If so, can anyone 
tell me which registers?

Obj:     On 64bit-Intel Linux that is RDI   (Win64: RCX)
AnAddr:  On 64bit-Intel Linux that is RSI   (Win64: RDX)
AFrame:  On 64bit-Intel Linux that is RDX   (Win64: R8)

Anything similar on M1?

More information about the fpc-devel mailing list