]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/ChangeLog
2008-10-27 Vladimir Makarov <vmakarov@redhat.com>
[thirdparty/gcc.git] / gcc / ChangeLog
index 666594f8b30616cb98a3242be6db4408b7d66885..a683eca7e00aeace0d034ec247605c35bd49fbc0 100644 (file)
@@ -1,3 +1,41 @@
+2008-10-27  Vladimir Makarov  <vmakarov@redhat.com>
+
+       * ira-int.h (ira_allocno): Add member updated_cover_class_cost.
+       (ALLOCNO_UPDATED_COVER_CLASS_COST): New.
+       (ira_fast_allocation): Remove the prototype.
+       
+       * ira-color.c (update_copy_costs, allocno_cost_compare_func,
+       assign_hard_reg, calculate_allocno_spill_cost): Use updated costs.
+       (color_pass): Modify the updated costs.
+       (ira_color): Rename to color.  Make it static.
+       (ira_fast_allocation): Rename to fast_allocation.  Make it static.
+       (ira_color): New function.
+       
+       * ira-conflicts.c (process_regs_for_copy): Propagate hard reg cost
+       change.
+
+       * ira-lives.c (last_call_num, allocno_saved_at_call): New
+       variables.
+       (set_allocno_live, clear_allocno_live, mark_ref_live,
+       mark_ref_dead): Invalidate corresponding element of
+       allocno_saved_at_call.
+       (process_bb_node_lives): Increment last_call_num.  Setup
+       allocno_saved_at_call.  Don't increase ALLOCNO_CALL_FREQ if the
+       allocno was already saved.
+       (ira_create_allocno_live_ranges): Initiate last_call_num and
+       allocno_saved_at_call.
+
+       * ira-build.c (ira_create_allocno): Initiate
+       ALLOCNO_UPDATED_COVER_CLASS_COST.
+       (create_cap_allocno, propagate_allocno_info,
+       remove_unnecessary_allocnos): Remove setting updated costs.
+       (ira_flattening): Set up ALLOCNO_UPDATED_COVER_CLASS_COST.
+
+       * ira.c (ira):  Don't call ira_fast_allocation.
+
+       * ira-costs.c (setup_allocno_cover_class_and_costs): Don't set up
+       updated costs.
+       
 2008-10-27  Vladimir Makarov  <vmakarov@redhat.com>
 
        PR middle-end/37813