[U-Boot] [PATCH v2] arm: Switch to -mno-unaligned-access when supported by the compiler

Wolfgang Denk
2014-02-11T18:18:03Z

Dear M?ns Rullg?rd,

In message <yw1xfvnpaclm.fsf@unicorn.mansr.com> you wrote:
>
> > With application code you don't really care whether a variable is
> > read/written in one piece or broken down into several smaller
> > reads/writes - except when you notice that performance suffers.
> >
> > When accessing hardware, it often makes a fundamental difference
> > whether you access a device register with it's correct size or not.
> > Usually breaking down an access into smaller ones results in crashes
> > or incorrect data or other errors.
>
> I'm well aware of this, but it has nothing to do with the issue at hand.

This is by your definition, or based on which exact rationale?

> Device registers are always aligned. In properly written code these are
> accessed using pointers the compiler knows to be aligned and thus does
> the right thing.

Maybe the device registers you have seen so far have always been
perfectly aligned. Lucky you. Note that there are a number of
designs around (that I do not hesitate to call broken) which have
such properties. And when we include external hardware into the
discussion like PCI attached devices or customer-designed FPGAs,
it becomes even more "interesting".

I think we can stop the discussion here (at least I will do that now).
I haven't seen any new arguments coming up.

Best regards,

Wolfgang Denk

--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
The trouble with our times is that the future is not what it used to
be. - Paul Valery