Albert ARIBAUD <albert.u.b...@aribaud.net> writes: > Hi Måns, > > On Tue, 11 Feb 2014 15:33:09 +0000, Måns Rullgård <m...@mansr.com> > wrote: > >> The problem is that the current settings do >> the exact opposite. By using -munaligned-access by default, you are >> asking the compiler to go ahead and do whatever it thinks is best, which >> is sometimes to perform an intentional unaligned access. Exactly when >> this will happen is largely impossible to predict. > > The -munaligned-access option does *not* "[ask] the compiler to go > ahead and do whatever it thinks is best", it tells it to use direct > native accesses when unaligned accesses are required, as opposed to > splitting unaligned accesses into smaller but aligned aligned native > accesses, which is what you get with -mno-unaligned-access.
The flag does both of those things. It even gives the compiler permission to merge multiple adjacent accesses into a single wider one. >> To get the behaviour you desire, the code should be compiled with >> -mno-unaligned-access. This tells the compiler to _never_ automatically >> perform an unaligned memory access. If it thinks an address might be >> unaligned, it will split the access. > > This shows that you really have not read my argument, in which I *did* > explain why we tell the compiler *not* to split unaligned accesses into > smaller correctly aligned accesses, i.e., why -munaligned-access is > used. I have read what you call your argument. Unfortunately for you, it is based on false premises, and as such any conclusions you arrive at are incorrect. -- Måns Rullgård m...@mansr.com _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot