OSDN Git Service

2010-01-14 Alexander Monakov <amonakov@ispras.ru>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 80ab5e6..09ac3e2 100644 (file)
@@ -1,3 +1,140 @@
+2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
+
+       * config/rs6000/rs6000.c (rs6000_variable_issue): Rename to...
+       (rs6000_variable_issue_1): this.  Use...
+       (rs6000_variable_issue): here.  Reimplement.  Print debug info.
+
+2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
+
+       * sel-sched-ir.c (sel_restore_other_notes): Rename to sel_restore_notes.
+       Update all callers.  Call reemit_notes for all insns.
+
+2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
+
+       PR rtl-optimization/42246
+       * sel-sched-ir.h (get_all_loop_exits): Include exits from inner
+       loops.
+
+2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
+
+       * sel-sched.c (compute_av_set_at_bb_end): Do not test that number of
+       all successors is the same as number of successors in current region.
+
+2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
+
+       * sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
+       to rename is not separable.  Otherwise check that its LHS is not NULL.
+
+2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
+
+       * sel-sched.c (choose_best_reg_1):  Loop over all regs for mode.
+
+2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
+
+       * sel-sched.c (mark_unavailable_hard_regs): Do not try to search
+       available registers when failed to discover LHS register class.
+       Fix indentation.  Update comment.
+
+2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
+           Alexander Monakov  <amonakov@ispras.ru>
+
+       PR rtl-optimization/42389
+       * sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
+       to can_issue_more.
+       (advance_state_on_fence): Likewise.
+       (sel_target_adjust_priority): Print debug output only when
+       sched_verbose >= 4, not 2.
+       (get_expr_cost): Do not issue all unique insns on the next cycle.
+       (fill_insns): Initialize can_issue_more from the value saved
+       with the fence.
+       * sel-sched-ir.c (flist_add): New parameter issue_more.
+       Init FENCE_ISSUE_MORE with it.
+       (merge_fences): Likewise.
+       (init_fences): Update call to flist_add.
+       (add_to_fences, add_clean_fence_to_fences)
+       (add_dirty_fence_to_fences): Likewise.
+       (move_fence_to_fences): Update call to merge_fences.
+       (invoke_reorder_hooks): Do not reset can_issue_more on insns from
+       sched groups.
+       * sel-sched-ir.h (struct _fence): New field issue_more.
+       (FENCE_ISSUE_MORE): New accessor macro.
+
+2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
+
+       PR rtl-optimization/42388
+       * sel-sched-ir.c (maybe_tidy_empty_bb): Do not delete empty blocks
+       that have no predecessors nor successors.  Do not call move_bb_info
+       for empty blocks outside of current region.
+
+2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
+
+       PR rtl-optimization/42294
+       * sel-sched-ir.h (struct _sel_insn_data): Update comment.
+       * sel-sched.c (move_exprs_to_boundary): Transitively add all
+       originators' originators.
+
+2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
+
+       PR rtl-optimization/39453
+       PR rtl-optimization/42246
+       * sel-sched-ir.c (considered_for_pipelining_p): Do not test
+       for pipelining_p.
+       (sel_add_loop_preheaders): Add preheader to last_added_blocks.
+
+2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
+           Alexander Monakov  <amonakov@ispras.ru>
+
+       PR middle-end/42245
+       * sel-sched-ir.c (sel_recompute_toporder): New.  Use it...
+       (maybe_tidy_empty_bb): ... here.  Make static.  Add new
+       argument.  Update all callers.
+       (tidy_control_flow): ... and here.  Recompute topological order
+       of basic blocks in region if necessary.
+       (sel_redirect_edge_and_branch): Change return type.  Return true
+       if topological order might have been invalidated.
+       (purge_empty_blocks): Export and move from...
+       * sel-sched.c (purge_empty_blocks): ... here.
+       * sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
+        (maybe_tidy_empty_bb): Delete prototype.
+       (purge_empty_blocks): Declare.
+
+2010-01-14  Andrey Belevantsev <abel@ispras.ru>
+
+       PR rtl-optimization/42249
+       * sel-sched.c (try_replace_dest_reg): When chosen register
+       and original register is the same, do not bail out early, but
+       still check all original insns for validity of replacing destination
+       register.  Set EXPR_TARGET_AVAILABLE to 1 before leaving function
+       in this case.
+
+2010-01-14  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/42721
+       Port from no-undefined-overflow branch
+       2009-03-09  Richard Guenther  <rguenther@suse.de>
+
+       * fold-const.c (add_double_with_sign): Fix unsigned overflow
+       detection.
+
+2010-01-14  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/42665
+       * gimple.c (iterative_hash_gimple_type): Avoid hashing
+       error_mark_node.
+
+2010-01-14  Ira Rosen  <irar@il.ibm.com>
+
+       PR tree-optimization/42709
+       * tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
+       as scalar type in creation of constant vector operand.
+
+2010-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       PR testsuite/42414
+       * Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
+       (check-parallel-%): Match `testsuite' directory component only
+       at the end.
+
 2010-01-14  Shujing Zhao  <pearly.zhao@oracle.com>
 
        PR translation/39521