[Bug rtl-optimization/58679] [4.9 regression] ICE in create_pre_exit, at mode-switching.c:421 with -mavx after r202915
amylaar at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat Oct 26 16:22:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58679
--- Comment #12 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> ---
(In reply to Jorn Wolfgang Rennecke from comment #10)
> (In reply to Uroš Bizjak from comment #7)
>
> > CC author. Hopefully, following part will be reverted:
> >
> > 2013-10-25 Vladimir Makarov <vmakarov@redhat.com>
> >
> > [...]
> > * lra-spills.c (lra_final_code_change): Remove useless move insns.
>
> For the return value sanity checks, we need only a subset of these moves
> preserved.
> Ones that are
> - in the exit block, and
> - likely_spilled_p, and
> - pertain to the function result register, or a part of it.
P.S.: the fact that we have no-op moves like that indicates potential
trouble - it means this likely spilled register is also live before
the return value copy. So if we need to spill it to do a mode switch,
we are between a rock and a hard place.
More information about the Gcc-bugs
mailing list