https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86968
--- Comment #4 from joseph at codesourcery dot com <joseph at codesourcery dot com> --- Any unaligned access things that don't work for big-endian ARM are probably fallout from the issues with big-endian NEON (NEON architectural lane numbers are different from the architecture-independent lane numbers in GNU C vector extensions and GCC IR, and GCC expects each machine mode to have a single defined memory layout and a single defined layout in any given register, and to be able to move between core and NEON registers, and between core registers and memory, in the respective layouts used for those registers, but some NEON loads and stores for big-endian don't work with those expectations, so unaligned vector operations are limited for big-endian ARM).