http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57862
--- Comment #1 from Mikael Pettersson <mikpe at it dot uu.se> --- This has all the indications of a mis-aligned memory access. Since you're on Linux, please make sure that the 'User faults' field in /proc/cpu/alignment shows a value of 2 (fixup) or 3 (fixup+warn). You can 'echo 3 > /proc/cpu/alignment' in your startup scripts to ensure this setting, or you can hack it into the kernel source's arch/arm/mm/alignment.c (which is what I do).