[fpc-pascal] ASM Converting from Turbo Pascal

Peter Vreman peter at freepascal.org
Tue Aug 29 11:24:01 CEST 2006


> Hello,
>
> in fpc you have to tell the compiler which registers are used in asm code.
>
> for example
>
> asm
>        mov  ax,123
> end [eax];
>
> Is it possible to make a compilerswitch that the compiler tells that there
> is
> every register used in asm code? In this case it woult be possible to port
> asm code from turbopascal to fpc without any change.
>
> for example
>
> {$asmallregsused+} or something like that
>
> asm
>         ...asmcode...
>         ...asmcode...
>         ...asmcode...
>         ...asmcode...
> end;     --->>> now every Register used, as set in the compilerswitch;

It is not needed. The registers you need to save/resotre for procedures
are now determined by the calling convention just like Delphi. For
assembler blocks inside a pascal procedure the default is that all
registers are used.






More information about the fpc-pascal mailing list