[Bug middle-end/78355] LRA generates unaligned accesses when SLOW_UNALIGNED_ACCESS is 1
vmakarov at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Nov 16 15:45:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78355
--- Comment #5 from Vladimir Makarov <vmakarov at gcc dot gnu.org> ---
(In reply to Eric Botcazou from comment #1)
>
> if (!(MEM_ALIGN (reg) < GET_MODE_ALIGNMENT (mode)
> && SLOW_UNALIGNED_ACCESS (mode, MEM_ALIGN (reg)))
> || (MEM_ALIGN (reg) < GET_MODE_ALIGNMENT (innermode)
> && SLOW_UNALIGNED_ACCESS (innermode, MEM_ALIGN (reg))))
> return true;
>
> I'm going to test it on ARM, which has the same settings as your port, and
> this will probably also help the SPARC port for the switch to LRA.
>
> Vladimir, what do you think?
The analysis looks right for me. Although this code had a lot of troubles
until it was stabilized and came to the current state. So the change might
create some new failures but I hope it will not.
More information about the Gcc-bugs
mailing list