This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
gcc4.7 backport committed (PR53700)
- From: Vladimir Makarov <vmakarov at redhat dot com>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Mon, 18 Jun 2012 14:34:25 -0400
- Subject: gcc4.7 backport committed (PR53700)
The following patch was backported to gcc4.7. The patch solves PR53700.
It was successfully bootstrapped on x86/x86-64.
2012-06-18 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/53700
Backport from mainline
2012-03-29 Vladimir Makarov <vmakarov@redhat.com>
* ira-color.c (setup_left_conflict_sizes_p): Process all
conflicting objects.
Index: ira-color.c
===================================================================
--- ira-color.c (revision 188736)
+++ ira-color.c (working copy)
@@ -821,7 +821,6 @@ setup_left_conflict_sizes_p (ira_allocno
node_preorder_num = node->preorder_num;
COPY_HARD_REG_SET (node_set, node->hard_regs->set);
node_check_tick++;
- curr_allocno_process++;
for (k = 0; k < nobj; k++)
{
ira_object_t obj = ALLOCNO_OBJECT (a, k);
@@ -838,12 +837,10 @@ setup_left_conflict_sizes_p (ira_allocno
conflict_data = ALLOCNO_COLOR_DATA (conflict_a);
if (! ALLOCNO_COLOR_DATA (conflict_a)->in_graph_p
- || conflict_data->last_process == curr_allocno_process
|| ! hard_reg_set_intersect_p (profitable_hard_regs,
conflict_data
->profitable_hard_regs))
continue;
- conflict_data->last_process = curr_allocno_process;
conflict_node = conflict_data->hard_regs_node;
COPY_HARD_REG_SET (conflict_node_set, conflict_node->hard_regs->set);
if (hard_reg_set_subset_p (node_set, conflict_node_set))