[Lazarus] RE : RE : RE :RE:FPC_REQUIRES_PROPER_ALIGNMENTdefinedonSolariscausescrashin lazarus
Mark Morgan Lloyd
markMLl.lazarus at telemetry.co.uk
Sat Jul 9 00:33:06 CEST 2011
Ludo Brands wrote:
>> Attached is a patch to components/synedit/synregexpr.pas that
>> fixes alignment issues. I've tested the code against a test
>> unit (attached) that is a mix of
>> fpc/packages/regexpr/examples/testreg1.pp and
>> Demos/SelfTest/TestRegExpr.drp (from the official TRegExpr
>> package). The result is the same for aligned and non-aligned
>> platforms (error 120,121,122,123,124 and 703). This tests
>> only that my changes have not introduced a new bug, but,
>> since I'm testing on Solaris x86, I can't be sure that all
>> data is aligned properly. It's possible I've missed
>> something. I've tried to set the AC cpu flag to force
>> alignment checking but that generates alignment errors in libc :(
>>
>> Could you please test this on one of your sparc/arm systems?
>>
>
> I've tested the patch on a "qemulated" sparc debian and it works fine with
> the test unit. QEMU sparc does generate SIGBUS for unaligned data (contrary
> to QEMU ARM). A small testprogram (unaligned integer) confirmed that.
Not using Qemu for SPARC here- got the real thing in abundance :-) I
can't help but wonder whether Qemu ARM ignores alignment issues because
of the CPU it's emulating or simply because the coder didn't notice the
restriction. More tomorrow.
--
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 Lazarus
mailing list