[fpc-pascal] Database problem on Solaris SPARC

Mark Morgan Lloyd markMLl.fpc-pascal at telemetry.co.uk
Thu Jul 12 15:04:23 CEST 2012


Jonas Maebe wrote:
> Thomas Schatzl wrote on Thu, 12 Jul 2012:
> 
>> On Thu, 2012-07-12 at 09:47 +0000, Mark Morgan Lloyd wrote:
>>>
>>> Program received signal SIGSEGV, Segmentation fault.
>>> [Switching to LWP 4]
>>> 0x004b08b8 in TPQCONNECTION__LOADFIELD (CURSOR=0xfad601a0,
>>> FIELDDEF=0xfad30f20, BUFFER=0xfa5f00bc, CREATEBLOB=fa
>>> 803               if FIntegerDatetimes then dbl^ := 
>>> pint64(buffer)^/1000000;
>>
>> Not sure if it applies to your case, but afaik SPARC requires natural
>> alignment for memory accesses. "buffer" is not aligned to 8 bytes
>> here... (0xfa5f00bc <---)
> 
> We only support 32 bit SPARC, and there we split a 64 bit load into two 
> 32 bit loads. dbl, assuming it points to a double, should point to a 64 
> bit-aligned memory location though (depending on the cpu, 32 bit 
> alignment may be sufficient, but better be safe than sorry).

I'll try to test against 2.7.1 later in the day, although as I've said 
Linux is OK. Is the  if FIntegerDatetimes then  something 
Solaris-specific Ludo?)?

-- 
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]



More information about the fpc-pascal mailing list