The following patch fixes PR48464. The description of the problem can
be found on
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48464
Committed as obvious after successful bootstrap on x86-64.
2011-04-11 Vladimir Makarov <vmaka...@redhat.com>
PR middle-end/48464
* ira.c (setup_pressure_classes): Fix typo in loop condition.
(setup_allocno_and_important_classes): Ditto.
Index: ira.c
===================================================================
--- ira.c (revision 172273)
+++ ira.c (working copy)
@@ -863,7 +863,7 @@ setup_pressure_classes (void)
registers available for the allocation. */
CLEAR_HARD_REG_SET (temp_hard_regset);
CLEAR_HARD_REG_SET (temp_hard_regset2);
- for (cl = 0; cl <= LIM_REG_CLASSES; cl++)
+ for (cl = 0; cl < LIM_REG_CLASSES; cl++)
{
for (i = 0; i < n; i++)
if ((int) pressure_classes[i] == cl)
@@ -923,7 +923,7 @@ setup_allocno_and_important_classes (voi
/* Collect classes which contain unique sets of allocatable hard
registers. Prefer GENERAL_REGS to other classes containing the
same set of hard registers. */
- for (i = 0; i <= LIM_REG_CLASSES; i++)
+ for (i = 0; i < LIM_REG_CLASSES; i++)
{
COPY_HARD_REG_SET (temp_hard_regset, reg_class_contents[i]);
AND_COMPL_HARD_REG_SET (temp_hard_regset, no_unit_alloc_regs);