OSDN Git Service

2010-01-14 Alexander Monakov <amonakov@ispras.ru>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index b233eb6..09ac3e2 100644 (file)
@@ -1,3 +1,262 @@
+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
+       * gcc.c (do_spec_1): Wrapped the error and notice messages of specs
+       strings with _().
+
+2010-01-13  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/42730
+       * tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
+       offset zero.
+
+2010-01-13  Steve Ellcey  <sje@cup.hp.com>
+
+       PR target/pr42542
+       * config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
+       for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
+       them signed.
+
+2010-01-13  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/libgcc-bfin.ver: Regenerate based on current
+       libgcc-std.ver.  Add entries for ___smulsi3_highpart and
+       ___umulsi3_highpart.
+
+       * config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
+       rather than schedule_insns if the pass is enabled.
+
+2010-01-13  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/42704
+       * tree-sra.c (sra_modify_assign): Do not delete assignments to
+       SSA_NAMEs.
+
+2010-01-13  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/42703
+       * tree-sra.c (analyze_access_subtree): Check that we can build a
+       reference to the original data within the aggregate.
+
+2010-01-13  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/42705
+       * tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after
+       labels.
+
+2010-01-13  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/42716
+       * fold-const.c (fold_unary_loc): Fold INDIRECT_REFs.
+
+2010-01-13  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/41371
+       * var-tracking.c (values_to_unmark): New variable.
+       (find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
+       values_to_unmark vector.  Moved body to...
+       (find_loc_in_1pdv_1): ... this.  Don't clear VALUE_RECURSED_INTO,
+       instead queue it into values_to_unmark vector.
+       (vt_find_locations): Free values_to_unmark vector.
+
+2010-01-13  Wolfgang Gellerich  <gellerich@de.ibm.com>
+
+       * config/s390/s390.c (override_options): Set
+       default of max-pending-list-length to 256
+
+2010-01-13  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/42678
+       * tree-pass.h (PROP_gimple_lcx): New.
+       * cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
+       * passes.c (init_optimization_passes): Move pass_lower_complex_O0
+       before the final cleanup_eh.
+       (dump_properties): Dump PROP_gimple_lcx.
+       * tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
+       (tree_lower_complex_O0): Remove.
+       (gate_no_optimization): Run if PROP_gimple_lcx is not set.
+       (pass_lower_complex_O0): Provide PROP_gimple_lcx.  Run
+       tree_lower_complex, schedule TODO_update_ssa.
+       * lto-streamer-out.c (output_function): Stream the functions
+       properties.
+       * lto-streamer-in.c (input_function): Likewise.
+       (lto_read_body): Do not override them here.
+
+2010-01-12  Joseph Myers  <joseph@codesourcery.com>
+
+       PR c/42708
+       * c-typeck.c (build_c_cast): Fold value cast to union type before
+       wrapping it in a CONSTRUCTOR.
+
+2010-01-12  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/42699
+       * cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
+       involved.
+
+2010-01-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
+       SUBTARGET_WARN_UNUSED_SPEC): Move ...
+       config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
+       SUBTARGET_WARN_UNUSED_SPEC): ... here
+       * config/mips/iris5.h (LIBGCC_SPEC): Define.
+
+2010-01-12  Julian Brown  <julian@codesourcery.com>
+
+        * config/arm/neon-schedgen.ml (Utils): Don't try to
+       open missing module.
+        (find_with_result): New.
+
+2010-01-12  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/42662
+       * simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
+       sharing when canonicalizing ({lt,ge}u (plus a b) b).
+
+       PR tree-optimization/42645
+       * tree-inline.c (processing_debug_stmt): Move earlier.  Make static.
+       (remap_ssa_name): If processing_debug_stmt and name wasn't found in
+       decl_map, set processing_debug_stmt to -1 and return name without
+       any remapping.
+
 2010-01-11  Dave Korn  <dave.korn.cygwin@gmail.com>
 
        * doc/install.texi (Specific#x-x-cygwin): Document minimum required