[fpc-devel] Patch, font rendering on Arm-Linux devices.
Michael Schnell
mschnell at lumino.de
Thu Feb 28 09:58:47 CET 2008
> On x86 processors it's usually only a speed penalty (or has anyone ever
> seen the AC flag turned on?), on other processors you may even have to
> workaround exceptions (i.e. bus errors), because the processor simply
> refuses to read or write unaligned data.
It even is not guaranteed (or even common) that a misaligned access with
a processor that only can do aligned memory actions can be cured by an
exception.
That is why the compiler needs to create complex code for the
potentially misaligned elements of a packed record. All C compilers do
this and I am positive that FP does it, too. So no problem here (beyond
the additional cycles needed when working with packed records).
A real problem comes up if you manipulate a pointer to a (supposedly
aligned) multi-byte variable to make it point to an odd address. This
will make the program crash on certain processors (not PC not "big"
68Ks, but "small" 68 Ks.
-Michael
More information about the fpc-devel
mailing list