This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[new-regalloc-branch]: (try_recolor_web) reset colors bugfix
- From: Denis Chertykov <denisc at overta dot ru>
- To: gcc-patches at gcc dot gnu dot org
- Cc: Michael Matz <matz at kde dot org>
- Date: Thu, 28 Feb 2002 22:23:36 +0300
- Subject: [new-regalloc-branch]: (try_recolor_web) reset colors bugfix
Thu Feb 28 22:14:34 2002 Denis Chertykov <denisc@overta.ru>
* ra.c: (try_recolor_web): Restore original colors: spilled,
allocated.
Index: ra.c
===================================================================
RCS file: /cvs/gcc/egcs/gcc/Attic/ra.c,v
retrieving revision 1.1.2.47
diff -c -3 -p -r1.1.2.47 ra.c
*** ra.c 2002/02/04 21:26:21 1.1.2.47
--- ra.c 2002/02/28 19:22:26
*************** try_recolor_web (web)
*** 5884,5895 ****
for (wl = web->conflict_list; wl; wl = wl->next)
{
struct web *web2 = alias (wl->t);
! if (web2->type == SPILLED && old_colors[web2->id])
{
! remove_list (web2->dlink, &WEBS(SPILLED));
! web2->color = old_colors[web2->id] - 1;
! put_web (web2, COLORED);
! }
}
}
free (old_colors);
--- 5884,5901 ----
for (wl = web->conflict_list; wl; wl = wl->next)
{
struct web *web2 = alias (wl->t);
! if (old_colors[web2->id])
{
! if (web2->type == SPILLED)
! {
! remove_list (web2->dlink, &WEBS(SPILLED));
! web2->color = old_colors[web2->id] - 1;
! put_web (web2, COLORED);
! }
! else if (web2->type == COLORED)
! web2->color = old_colors[web2->id] - 1;
! else
! abort ();
}
}
free (old_colors);