The following patch fixes a few SPARC GCC testsuite regressions.

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

Committed as rev. 184512.

2012-02-23  Vladimir Makarov <vmaka...@redhat.com>

        * lra-eliminations.c (update_reg_eliminate): Make hard register
        unallocatable when we make it a result of the elimination.

Index: lra-eliminations.c
===================================================================
--- lra-eliminations.c  (revision 184177)
+++ lra-eliminations.c  (working copy)
@@ -1103,6 +1103,9 @@ update_reg_eliminate (bitmap insns_with_
              if (lra_dump_file != NULL)
                fprintf (lra_dump_file, "    Using elimination %d to %d now\n",
                         ep1->from, ep1->to);
+             /* Prevent the hard register into which we eliminate now
+                from the usage for pseudos.  */
+             SET_HARD_REG_BIT (temp_hard_reg_set, ep1->to);
              gcc_assert (ep1->previous_offset == 0);
              ep1->previous_offset = ep->offset;
            }

Reply via email to