The following patch improves pseudos splitting.

The patch was successfully bootstrapped on x86/x86-64.

Committed as rev. 187656.

2012-05-18  Vladimir Makarov <vmaka...@redhat.com>

* lra-constraints.c (need_for_split_p): Split only when there are at
        least 3 potential reloads instead of 2.

Index: lra-constraints.c
===================================================================
--- lra-constraints.c	(revision 187637)
+++ lra-constraints.c	(working copy)
@@ -3894,7 +3894,7 @@ need_for_split_p (HARD_REG_SET potential
 {
   gcc_assert (reg_renumber[regno] >= 0);
   return ((TEST_HARD_REG_BIT (potential_reload_hard_regs, reg_renumber[regno])
-	   && usage_insns[regno].reloads_num + 1 < reloads_num)
+	   && usage_insns[regno].reloads_num + 2 < reloads_num)
 	  || need_for_call_save_p (regno));
 }
 

Reply via email to