OSDN Git Service

2010-01-14 Andi Kleen <ak@linux.intel.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 4f7f36f..47e06e5 100644 (file)
@@ -1,3 +1,438 @@
+2010-01-14  Andi Kleen  <ak@linux.intel.com>
+
+       * config/i386/drivers-i386.c (detect_caches_intel):
+       Add l2sizekb parameter and fill in.
+       (host_detect_local_cpu): Add l2sizekb, fill in.
+       Add Atom small cache heuristic.
+
+2010-01-14  Andi Kleen  <ak@linux.intel.com>
+
+       * config/i386/drivers-i386.c (detect_caches_cpuid4):
+       Add level3 parameter and fill in.
+       (detect_caches_intel): Handle level3 cache.
+
+2010-01-14  Andi Kleen  <ak@linux.intel.com>
+
+       * config/i386/drivers-i386.c (host_detect_local_cpu):
+       Fix core duo detection.
+
+2010-01-14  Andi Kleen  <ak@linux.intel.com>
+
+       * config/i386/drivers-i386.c (host_detect_local_cpu):
+       Fix Atom detection.
+
+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
+       binutils version, and reword target configuration description.
+
+2010-01-11  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
+
+       * config/avr/avr.h (LINKER_NAME): Remove.
+
+2010-01-11  Janis Johnson  <janis187@us.ibm.com>
+
+       PR target/42416
+       * config/rs6000/rs6000.c (rs6000_override_options): On targets
+       that support VSX, warn for -mno-altivec if vsx is not disabled,
+       and disable vsx.
+
+2010-01-11  Joseph Myers  <joseph@codesourcery.com>
+           Shujing Zhao  <pearly.zhao@oracle.com>
+
+       PR translation/42469
+       * common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
+       fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
+       character between option name and help text.
+       * c.opt (imultilib): Likewise.
+
+2010-01-10  Rafael Avila de Espindola  <espindola@google.com>
+
+       * lto-streamer-out.c (output_unreferenced_globals): Output static
+       variables.
+
+2010-01-10  Steven Bosscher  <steven@gcc.gnu.org>
+
+       PR rtl-optimization/42621
+       * bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
+       optimizing for size.
+       (duplicate_computed_gotos): Remove now-redundant check.
+
+2010-01-10  Steve Ellcey  <sje@cup.hp.com>
+
+       PR target/37454
+       * configure.ac: Save and restore LDFLAGS and LIBS
+       * configure: Regenerate.
+
+2010-01-10  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/42667
+       * builtins.c (fold_builtin_strlen): Add type argument and
+       convert the resulting length to it.
+       (fold_builtin_1): Adjust.
+
+2010-01-09  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
+       sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
+       1 insn.
+       (num_insns_constant_wide): Adjust for that change.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/42631
+       * web.c (union_defs): Add used argument, to combine uses of
+       uninitialized regs.
+       (entry_register): Adjust type and tests of used argument.
+       (web_main): Widen used for new use.  Pass it to union_defs.
+       * df.h (union_defs): Adjust prototype.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/42630
+       * loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
+       uses in new incoming argument.  Free body.
+       (reset_debug_uses_in_loop): New.
+       (analyze_insn_to_expand_var): Call the latter if the former found
+       anything.  Fix whitespace.  Reject invalid dest overlaps before
+       going through all insns in the loop.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/42629
+       * haifa-sched.c (dying_use_p): Debug insns don't count.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR middle-end/42363
+       * gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
+       * tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
+       (verify_gimple_call): Reject LHS in noreturn calls.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/42604
+       PR debug/42395
+       * tree-vect-loop-manip.c (adjust_info): New type.
+       (adjust_vec): New pointer to vector.
+       (adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
+       (adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
+       (slpeel_update_phis_for_duplicate_loop): Use them.
+       (slpeel_update_phi_nodes_for_guard1): Likewise.
+       (slpeel_update_phi_nodes_for_guard2): Likewise.
+       (slpeel_tree_peel_loop_to_edge): Likewise.
+       (vect_update_ivs_after_vectorizer): Likewise.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       * vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
+       (DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
+
+2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
+       bogus uninitialized warning.
+
+2010-01-09  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/42512
+       * tree-scalar-evolution.c (interpret_loop_phi): Make sure
+       the evolution is compatible with the initial condition.
+
+2010-01-09  Jakub Jelinek  <jakub@redhat.com>
+
+       * gcc.c (process_command): Update copyright notice dates.
+       * gcov.c (print_version): Likewise.
+       * gcov-dump.c (print_version): Likewise.
+       * mips-tfile.c (main): Likewise.
+       * mips-tdump.c (main): Likewise.
+
+2010-01-08  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
+
+       PR target/41885
+       * config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
+       (rotlhi3): Delete.
+       (rotlhi3_8): Delete.
+       (rotlsi3): Delete.
+       (rotlsi3_8): Delete.
+       (rotlsi3_16): Delete.
+       (rotlsi3_24): Delete.
+       (rotl<mode>3): New.
+       (*rotw<mode>3): New.
+       (*rotb<mode>3): New.
+       * config/avr/avr.c (avr_rotate_bytes): New function.
+       * config/avr/avr-proto.h (avr_rotate_bytes): New function.
+
+2010-01-08  Steve Ellcey  <sje@cup.hp.com>
+
+       PR target/37454
+       * configure.ac: Modify -rdynamic check.
+       * configure: Regenerate.
+
+2010-01-08  DJ Delorie  <dj@redhat.com>
+
+       * config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
+       register popping order.
+
 2010-01-08  Richard Guenther  <rguenther@suse.de>
 
        PR lto/42528
        (concat_note_lists): ... here, and ...
        (unlink_other_notes, rm_other_notes): Merge into...
        (remove_notes): ... here.  Create REG_SAVE_NOTEs for
-       NOTE_INSN_EPILOGUE_BEG.  
+       NOTE_INSN_EPILOGUE_BEG.
 
 2010-01-06  Richard Guenther  <rguenther@suse.de>