From 6042d1dd489cd2188a6eee867a580aa664cc742b Mon Sep 17 00:00:00 2001 From: Chung-Lin Tang Date: Tue, 22 Feb 2011 03:23:21 +0000 Subject: [PATCH] re PR rtl-optimization/46002 (ICE: in update_copy_costs, at ira-color.c:319 with -fira-algorithm=priority) 2011-02-21 Chung-Lin Tang PR rtl-optimization/46002 * ira-color.c (update_copy_costs): Change class intersection test to reg_class_contents[] test of 'hard_regno'. From-SVN: r170388 --- gcc/ChangeLog | 6 ++++++ gcc/ira-color.c | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4ce11387b46..a78deb0c251 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2011-02-21 Chung-Lin Tang + + PR rtl-optimization/46002 + * ira-color.c (update_copy_costs): Change class intersection + test to reg_class_contents[] test of 'hard_regno'. + 2011-02-21 Joseph Myers * config/alpha/osf5.opt (mno-mips-tfile): Mark as Target rather diff --git a/gcc/ira-color.c b/gcc/ira-color.c index 9c5f4b72297..5c98ef91c2c 100644 --- a/gcc/ira-color.c +++ b/gcc/ira-color.c @@ -292,7 +292,8 @@ update_copy_costs (ira_allocno_t allocno, bool decr_p) gcc_unreachable (); cover_class = ALLOCNO_COVER_CLASS (another_allocno); - if (! ira_reg_classes_intersect_p[rclass][cover_class] + if (! TEST_HARD_REG_BIT (reg_class_contents[cover_class], + hard_regno) || ALLOCNO_ASSIGNED_P (another_allocno)) continue; -- 2.30.2