GCC gets every byte order by order instead of getting the word directly, because it couldn't be sure the word is fully aligned. This is why it has this much code. Am I correct?
pretty much
Обсуждают сегодня