[Lazarus] RE : RE : RE : RE : RE:RE:RE:FPC_REQUIRES_PROPER_ALIGNMENTdefinedonSolariscausescrashinlazarus
Ludo Brands
ludo.brands at free.fr
Sun Jul 10 15:08:43 CEST 2011
> The speed of emulated or low-resource systems is obviously a
> problem- I
> put some informal benchmarks on the wiki page I did a few
> weeks ago when
> I was putting Qemu on a development system with ARM, Mipsel and so on.
Do you have an Url for that page?
On Qemu sparc I'm stuck with debian etch (gdb too old => dead lock with
lazarus) since lenny is compiled for v8+. Display is limited at 8-bit which
lazarus doesn't support. Only solution that is working for me is a reverse
ssh tunnel, tunneling X11 and no encryption (else ssh and sshd cpu usage
goes through the roof with lazarus).
Similar solution for Qemu arm where the low screen resolution of the
versatilePB platform makes running lazarus impossible. On arm lenny is
running and debugging in lazarus works fine.
> So if I understand that correctly, that define is telling the
> compiler
> that it should always arrange data structures so that fields are
> aligned. It's obviously not in control of structures which
> are forced in
> some way, or of explicit pointer arithmetic.
>
The other way around. The compiler aligns data for all processors even when
it is not mandatory for the processor. This is for speed. The packed
directive tells the compiler to not align the data. The compiler sets
FPC_REQUIRES_PROPER_ALIGNMENT for the programmer. He should use this to
conditionally define packed structures or think twice when casting fe. pchar
to pword.
Ludo
More information about the Lazarus
mailing list