[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#285396: [ARM] wide chars don't work



On Tue, 2005-01-11 at 12:37 -0500, Branden Robinson wrote:
> Here are his remarks, recast a bit from IRC-speak into something more
> conventional.
> 
>   GCC on ARM is doing something different from every other C compiler I've
>   seen.  It may not deviate from what the C specification allows, but it
>   appears to deviate from common practice.  The ARM folks would find code
>   would work with fewer problems if they fixed GCC to behave like other C
>   compilers do.  Having an array of structs of a byte each usually forces
>   16 bit alignment only on other compilers I've seen.

Jim is correct.  This behaviour of the ARM compiler seemed like a good
idea in 1988, but subsequent experience has shown that it was a mistake
to pad structs in this way.

Changing the default behaviour of the compiler definitely would result
in ABI breakage for some programs.  We plan to take care of this, and a
variety of other historical goofs, by switching to the new ARM "EABI".
This change will involve a flag day at some point during the next Debian
release cycle, but will result in better performance (by a factor of
more than 10 for some code) and greater compatibility with other
architectures.

> I'm also curious to know if xterm has always had this problem on Debian
> ARM, or if it has cropped up only with recent revisions of GCC.  Can anyone
> tell me?

I don't have any direct experience of the bug, but from the description
I've seen it sounds like it would always have been this way.  GCC's
behaviour certainly hasn't changed recently.

p.




Reply to: