https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118996
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |missed-optimization
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Hongtao Liu from comment #3)
> Original commit is added to avoid reload failure ~24 years ago, maybe we can
> try to remove the check in cse.cc.
Note SMALL_REGISTER_CLASSES (which became small_register_classes_for_mode_p )
has been there since the cse.c was checked in and has always been defined for
i386.
And
>
> commit 8bf4dfc24f1957b8f645e362e354655fb851fc89
> Author: Geoffrey Keating <[email protected]>
> Date: Mon Jul 2 23:24:02 2001 +0000
>
> cse.c (canon_hash): Don't register registers in very small register
> classes...
>
> * cse.c (canon_hash): Don't register registers in very small
> register classes, as extending their lifetime might cause
> reload to fail.
>
> From-SVN: r43714
just added CLASS_LIKELY_SPILLED_P (which became class_likely_spilled_p ).
https://gcc.gnu.org/pipermail/gcc-patches/2001-July/053437.html
Note CLASS_LIKELY_SPILLED_P was added to x86 backend in r0-8026-gf5316dfe88b8d1
(1994).
So both will block this cse anyways.