From: vmakarov Date: Sun, 16 Nov 2014 05:00:30 +0000 (+0000) Subject: 2014-11-15 Vladimir Makarov X-Git-Tag: upstream/5.3.0~4088 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=68474cd7b6cb84976a796919d2c8138e965d6d7f;p=platform%2Fupstream%2Flinaro-gcc.git 2014-11-15 Vladimir Makarov * lra-remat.c (cand_transf_func): Process regno for rematerialization too. * lra.c (lra): Switch on rematerialization pass. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217624 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b50fd18..758c3ad 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2014-11-15 Vladimir Makarov + * lra-remat.c (cand_transf_func): Process regno for + rematerialization too. + * lra.c (lra): Switch on rematerialization pass. + +2014-11-15 Vladimir Makarov + * lra.c (lra): Switch off rematerialization pass. 2014-11-15 Marc Glisse diff --git a/gcc/lra-remat.c b/gcc/lra-remat.c index f638a1d..fcb1b6f 100644 --- a/gcc/lra-remat.c +++ b/gcc/lra-remat.c @@ -860,6 +860,10 @@ cand_trans_fun (int bb_index, bitmap bb_in, bitmap bb_out) bitmap_set_bit (&temp_bitmap, cid); break; } + /* Check regno for rematerialization. */ + if (bitmap_bit_p (bb_changed_regs, cand->regno) + || bitmap_bit_p (bb_dead_regs, cand->regno)) + bitmap_set_bit (&temp_bitmap, cid); } return bitmap_ior_and_compl (bb_out, &bb_info->gen_cands, bb_in, &temp_bitmap); diff --git a/gcc/lra.c b/gcc/lra.c index 661a384..9309d5e 100644 --- a/gcc/lra.c +++ b/gcc/lra.c @@ -2354,7 +2354,7 @@ lra (FILE *f) break; /* Now we know what pseudos should be spilled. Try to rematerialize them first. */ - if (0&&lra_remat ()) + if (lra_remat ()) { /* We need full live info -- see the comment above. */ lra_create_live_ranges (lra_reg_spill_p, true);