[Bug middle-end/78355] LRA generates unaligned accesses when SLOW_UNALIGNED_ACCESS is 1
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Nov 15 09:12:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78355
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
if (!SLOW_UNALIGNED_ACCESS (mode, MEM_ALIGN (reg))
|| (MEM_ALIGN (reg) < GET_MODE_ALIGNMENT (innermode)
&& SLOW_UNALIGNED_ACCESS (innermode, MEM_ALIGN (reg)))
|| MEM_ALIGN (reg) >= GET_MODE_ALIGNMENT (mode))
return true;
looks good to me given
gcc/defaults.h:#define SLOW_UNALIGNED_ACCESS(MODE, ALIGN) STRICT_ALIGNMENT
doesn't do that check itself (maybe it and all ports should be fixed
instead...)
More information about the Gcc-bugs
mailing list