https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114659

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #11 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #10)
> I'm not sure if we can
> look at the hardreg for the FP mode in question and decide based on its mode
> for example.

I think not just the mode, but would need to look at the
targetm.c.excess_precision and whether the mode it promotes to has any padding
bits or something similar.
Though, I'm afraid targetm.c.excess_precision reflects mostly what the FEs
should do, rather than what the hw instructions do with the mode, so maybe it
would be better
to have a target hook which says for a floating point scalar mode whether moves
using it preserve all bits or not, default to yes (I think that is the behavior
on most of the arches) and deal with the exceptions (i?86, ia64, m68k, what
else).
Are there some other targets which say canonicalize NaNs on simple moves?

Reply via email to