diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ira-color.c | 5 |
2 files changed, 7 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fcd3709..3027edb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-05-28 Jeff Law <law@redhat.com> + + * ira-color.c (update_curr_costs): Free updated hard reg costs. + (ira_reassign_conflict_allocnos): Remove bogus asserts. + (allocno_reload_assign): Likewise. + 2010-05-28 Nathan Froyd <froydnj@codesourcery.com> * tree-vect-stmts.c (vectorizable_assignment): Call build1 instead of diff --git a/gcc/ira-color.c b/gcc/ira-color.c index 448fae3..b46801c 100644 --- a/gcc/ira-color.c +++ b/gcc/ira-color.c @@ -2231,6 +2231,7 @@ update_curr_costs (ira_allocno_t a) ira_allocno_t another_a; ira_copy_t cp, next_cp; + ira_free_allocno_updated_costs (a); ira_assert (! ALLOCNO_ASSIGNED_P (a)); cover_class = ALLOCNO_COVER_CLASS (a); if (cover_class == NO_REGS) @@ -2332,8 +2333,6 @@ ira_reassign_conflict_allocnos (int start_regno) { a = sorted_allocnos[i]; ALLOCNO_ASSIGNED_P (a) = false; - ira_assert (ALLOCNO_UPDATED_HARD_REG_COSTS (a) == NULL); - ira_assert (ALLOCNO_UPDATED_CONFLICT_HARD_REG_COSTS (a) == NULL); update_curr_costs (a); } for (i = 0; i < allocnos_to_color_num; i++) @@ -2799,8 +2798,6 @@ allocno_reload_assign (ira_allocno_t a, HARD_REG_SET forbidden_regs) if (! flag_caller_saves && ALLOCNO_CALLS_CROSSED_NUM (a) != 0) IOR_HARD_REG_SET (ALLOCNO_TOTAL_CONFLICT_HARD_REGS (a), call_used_reg_set); ALLOCNO_ASSIGNED_P (a) = false; - ira_assert (ALLOCNO_UPDATED_HARD_REG_COSTS (a) == NULL); - ira_assert (ALLOCNO_UPDATED_CONFLICT_HARD_REG_COSTS (a) == NULL); cover_class = ALLOCNO_COVER_CLASS (a); update_curr_costs (a); assign_hard_reg (a, true); |