Jonas, although you resolved that on Mantis with "The problem had nothing to do with fdiv/fdivp, but with the fact that the code contains an extra "begin .. end" around the assembler block when compiled with FPC. That means it was no longer a pure assembler routine, and the compiler inserted entry and exit code that did not expect a value to be left on the FPU stack at the end of the assembler block. "
that is not really the case. I don't know if you have access to a Delphi compiler of that era D2,3,4,5,6,2005,2006) but it is still a Delphi bug as you would be able to see if you open up the CPU/FPU window in delphi.
It can of course be the case that there where actually 2 bugs. If you solved it both ways? Cudo's.... but I think there is more to it than just the begin/end.