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

--- Comment #9 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Richard Sandiford <rsand...@gcc.gnu.org>:

https://gcc.gnu.org/g:db8d94a0570dc1f3de10c9eb9fe6e91df804272b

commit r12-6490-gdb8d94a0570dc1f3de10c9eb9fe6e91df804272b
Author: Richard Sandiford <richard.sandif...@arm.com>
Date:   Tue Jan 11 19:24:59 2022 +0000

    ira: Fix old-reload targets [PR103974]

    The new IRA heuristics would need more work on old-reload targets,
    since flattening needs to be able to undo the cost propagation.
    It's doable, but hardly seems worth it.

    This patch therefore makes all the new calls to
    ira_subloop_allocnos_can_differ_p return false if !ira_use_lra_p.
    The color_pass code that predated the new function (and that was
    the source of ira_subloop_allocnos_can_differ_p) continues to
    behave as before.

    It's a hack, but at least it has the advantage that the new parameter
    would become obviously unused if reload and (!)ira_use_lra_p were
    removed.  The hack should therefore disappear alongside reload.

    gcc/
            PR rtl-optimization/103974
            * ira-int.h (ira_subloop_allocnos_can_differ_p): Take an
            extra argument, default true, that says whether old-reload
            targets should be excluded.
            * ira-color.c (color_pass): Pass false.

Reply via email to