On 14 Sep 2010, at 08:35, leledumbo wrote:
build command: nasm -f coff test.asm fpc asmio.pas fpc -o test driver.pas As you can see, I didn't use any optimizations because AFAIR FPC would change parameter passing mechanism when a certain optimizations are performed.
That's not the case. The only situation in which the compiler would be allowed to do that is for routines defined in the main program or in the implementation section of a unit that are not manually declared as public/export either (in your case they're both in the interface of a unit and manually declared as public), and for safety that maybe also are not called from inline assembler blocks (but it doesn't do that at this time).
Of course if it works I won't ask here, but it doesn't. I got access violation instead.
It works fine under linux (if you replace the "-f coff" with "-f elf"). Jonas _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal