> Hello, > > Thanks for the quick answers. > > Peter Vreman a écrit : >> > 2) " end [ {$IFNDEF REGCALL} 'eax','ecx', {$ENDIF} 'edi']; " >> > Is the previous line meaningful? (See the routine below) >> >> No, FPC 1.9.x follows standard calling conventions. The changed >> registers >> are fixed. This information is not used for assembler procedures. But >> for >> assembler blocks within a procedure the information is used. > > With "standard calling conventions", do you mean I have to write > code like with Delphi (push/pop ebx,edi,esi)? Yesterday, I spent all > day long to remove all these push/pop :-)
FPC is delphi compatible with it's calling conventions on i386. > Should I also write push/pop for eax,ecx,edx when REGCALL is not > defined? See remark above. There is no difference with delphi anymore. Also note that the REGCALL define is unsupported. It is only a temporary define used internally for bootstrapping a 1.9.x compiler. It'll be removed without notice in the development series after 2.0. _______________________________________________ fpc-pascal maillist - [EMAIL PROTECTED] http://lists.freepascal.org/mailman/listinfo/fpc-pascal