This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[new-regalloc-branch] small fix in `undef_to_bitmap'
- To: gcc-patches at gcc dot gnu dot org
- Subject: [new-regalloc-branch] small fix in `undef_to_bitmap'
- From: Denis Chertykov <denisc at overta dot ru>
- Date: Wed, 01 Aug 2001 23:51:21 +0400
- Cc: Denis Chertykov <denisc at overta dot ru>, Michael Matz <matzmich at cs dot tu-berlin dot de>, Daniel Berlin <dan at cgsoftware dot com>
Wed Aug 1 23:40:05 2001 Denis Chertykov <denisc@overta.ru>
* ra.c (undef_to_bitmap): Handle more variants of *undefined.
Index: ra.c
===================================================================
RCS file: /cvs/gcc/egcs/gcc/Attic/ra.c,v
retrieving revision 1.1.2.27
diff -c -3 -p -r1.1.2.27 ra.c
*** ra.c 2001/08/01 19:45:13 1.1.2.27
--- ra.c 2001/08/01 19:51:38
*************** undef_to_bitmap (wp, undefined)
*** 620,626 ****
case 0xff00 : *undefined = 0; return get_sub_conflicts (wp, 8, 8);
case 0xfff0 : *undefined = 0xf0; return get_sub_conflicts (wp, 8, 8);
case 0xffff : *undefined = 0; return get_sub_conflicts (wp, 16, 0);
! default : break;
}
/* XXX */
abort ();
--- 620,641 ----
case 0xff00 : *undefined = 0; return get_sub_conflicts (wp, 8, 8);
case 0xfff0 : *undefined = 0xf0; return get_sub_conflicts (wp, 8, 8);
case 0xffff : *undefined = 0; return get_sub_conflicts (wp, 16, 0);
! default :
! {
! unsigned HOST_WIDE_INT u = *undefined;
! int word;
! int size;
!
! for (word = 0; ! (u & 1); ++word)
! u >>= 1;
! for (size = 0; u & 1; ++size)
! u >>= 1;
! if (u)
! abort ();
! *undefined = u;
! return get_sub_conflicts (wp, size, word);
! }
! break;
}
/* XXX */
abort ();