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

--- Comment #13 from Tom de Vries <vries at gcc dot gnu.org> ---
Author: vries
Date: Thu Mar  1 05:51:08 2018
New Revision: 258093

URL: https://gcc.gnu.org/viewcvs?rev=258093&root=gcc&view=rev
Log:
Fix liveness analysis in lra for spilled-into hard regs

2018-03-01  Tom de Vries  <t...@codesourcery.com>

        PR rtl-optimization/83327
        * lra-int.h (hard_regs_spilled_into): Declare.
        * lra.c (hard_regs_spilled_into): Define.
        (init_reg_info): Init hard_regs_spilled_into.
        * lra-spills.c (assign_spill_hard_regs): Update hard_regs_spilled_into.
        * lra-lives.c (make_hard_regno_born, make_hard_regno_dead)
        (process_bb_lives): Handle hard_regs_spilled_into.
        (lra_create_live_ranges_1): Before doing liveness propagation, clear
        regs in all_hard_regs_bitmap if set in hard_regs_spilled_into.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/lra-int.h
    trunk/gcc/lra-lives.c
    trunk/gcc/lra-spills.c
    trunk/gcc/lra.c

Reply via email to