[fpc-pascal] Mozilla XPCOM

Jonas Maebe jonas.maebe at elis.ugent.be
Thu Jun 3 14:26:58 CEST 2010


On 03 Jun 2010, at 10:08, Jonas Maebe wrote:

> On 03 Jun 2010, at 08:55, Michael Van Canneyt wrote:
>
>> When I was debugging it (linux 64 bit) , the whole application  
>> stopped on a floating point error somewhere in mozilla's Javascript  
>> engine; I never got
>> around to debugging that.
>
> Did you try disabling floating point exceptions? A lot of C code  
> assumes that floating point exceptions are disabled (since that's  
> what the C library does on startup).

Another possible problem can be the fact that FPC currently is not  
fully compliant with the x86-64 ABIs. In particular, the following  
data structures are wrongly handled when passed to cdecl/stdcall  
routines *as value or const parameter*, and when they are returned  
from a cdecl/stdcall routine:
* arrays <= 16 bytes of integer or floating point numbers (handled  
wrongly on all x86-64 platforms)
* records <= 16 bytes containing floating point numbers or arrays of  
floating point numbers (handled wrongly on non-Win64 platforms under  
most, but not all, circumstances )

I'm working on a fix for that, and it's finally almost finished.


Jonas



More information about the fpc-pascal mailing list