Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> writes: > Dereferencing an unaligned pointer may be "undefined" in some > technical meaning, but it sure as hell isn't undefined in reality, and > compilers that willfully do stupid things should not be catered to > overly. Reality is a lot more important. Thanks for succinctly putting it this way. I think you said the above number of times, and I was looking for one of them to include a reference to in the response I was preparing, but this message made it unnecessary ;-) > And I think gcc can be tweaked to use "movbe" on x86 with the right > magic incantation (ie not just __builtin_bswap32(), but also the > switch to enable the new instructions). So having code to detect gcc > and using __builtin_bswap32() would indeed be a good thing.