http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57862
--- Comment #3 from Mikael Pettersson <mikpe at it dot uu.se> --- (In reply to Gaetano Mendola from comment #2) > who is faulty? > Kernel configuration on this platform, the architecture, the compiler or > even me ? All of the above. The architecture for getting mis-alignment very very wrong, the kernel for not enforcing correct handling of alignment faults, the compiler for sometimes generating mis-aligned accesses where the original code had none (there are PRs about that affecting at least ARM and I believe also SPARC), and your code for (apparently) having a load from a mis-aligned address where portable code should use memcpy() (the fact that memcpy() didn't help you is a consequence of one of those PRs). My ARMv5TE box' /proc/cpu/alignment currently reads User: 100669 all of which come from gcc's own test suite. That's just so wrong.