https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121752
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|tree-optimization |testsuite
Priority|P3 |P1
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
To fully quote:
/* If the destination pointer is not aligned we must be able
to emit an unaligned store. */
&& (dest_align >= GET_MODE_ALIGNMENT (mode)
|| !targetm.slow_unaligned_access (mode, dest_align)
|| (optab_handler (movmisalign_optab, mode)
!= CODE_FOR_nothing)))
so there doesn't seem to be a suitable mov_misalign<mode>.
!STRICT_ALIGNMENT means that all mov<> can handle unaligned data (so mov ==
mov_misalign), STRICT_ALIGNMENT indicates there are (some) that can not.
The documentation for SLOW_UNALIGNED_ACCESS is a bit misleading, it's
enough to return true when for <mode> there's a mov<mode> alternative
that cannot handle unaligned access.
This is a testsuite issue, the testcase is new.