OSDN Git Service

* doc/invoke.texi (-fvar-tracking-assignments): Fix typo.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index c516bb8..6374791 100644 (file)
@@ -1,3 +1,362 @@
+2010-02-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * doc/invoke.texi (-fvar-tracking-assignments): Fix typo.
+
+2010-02-26  Jakub Jelinek  <jakub@redhat.com>
+
+       * Makefile.in (var-tracking.o): Depend on $(DIAGNOSTIC_H).
+       * var-tracking.c: Include diagnostic.h.
+       (debug_dv): New function.
+       (dump_var): Print DEBUG_EXPR_DECLs as D#N instead of D.-N.
+
+       PR debug/43160
+       * var-tracking.c (dv_onepart_p): Return true for DEBUG_EXPR_DECLs.
+       (add_value_chain, add_value_chains, remove_value_chain,
+       remove_value_chains): Handle DEBUG_EXPRs.
+       (check_changed_vars_1, check_changed_vars_2): Handle DEBUG_EXPR_DECLs.
+
+       PR debug/43161
+       * regcprop.c (struct queued_debug_insn_change): New type.
+       (struct value_data_entry): Add debug_insn_changes field.
+       (struct value_data): Add n_debug_insn_changes field.
+       (debug_insn_changes_pool): New variable.
+       (free_debug_insn_changes, apply_debug_insn_changes,
+       cprop_find_used_regs_1, cprop_find_used_regs): New functions.
+       (kill_value_one_regno): Call free_debug_insn_changes if needed.
+       (init_value_data): Clear debug_insn_changes and n_debug_insn_changes
+       fields.
+       (replace_oldest_value_reg): Don't change DEBUG_INSNs, instead queue
+       changes for them.
+       (copyprop_hardreg_forward_1): Don't call apply_change_group for
+       DEBUG_INSNs.  For a real insn, if there are queued DEBUG_INSN
+       changes, call cprop_find_used_regs via note_stores.
+       (copyprop_hardreg_forward): When copying vd from predecessor
+       which has any queued DEBUG_INSN changes, make sure the pointers are
+       cleared.  At the end call df_analyze and then if there are any
+       DEBUG_INSN changes queued at the end of some basic block for still
+       live registers, apply them.
+       (pass_cprop_hardreg): Set TODO_df_finish in todo_flags_finish.
+
+2010-02-25  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config.gcc (i[34567]86-*-* | x86_64-*-*): Split long line.
+       (arm*-*-*): Ditto.
+
+2010-02-25  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config.gcc: Set arch/cpu for i[34567]86-*-*|x86_64-*-*
+       targets.  Set the default with_cpu/with_arch from arch/cpu.
+       Allow x86-64 and native for with_cpu/with_arch.
+
+2010-02-25  Nicolas Benoit  <nbenoit@tuxfamily.org>
+
+       * ebitmap.c: Change calls to verify_popcount with calls to
+       sbitmap_verify_popcount.
+       (ebitmap_clear_bit): Fixed map->cacheindex test and
+       map>cache update when bit clearing results in an empty
+       element.
+
+2010-02-25  Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       PR target/43154
+       * config/rs6000/vector.md (VEC_64): New iterator for V2DF, V2DI.
+       (vec_interleave_high<mode>): Rename from vec_interleave_highv2df
+       and support both V2DF and V2DI modes.
+       (vec_interleave_low<mode>): Rename from vec_interleave_lowv2df and
+       support both V2DF and V2DI modes.
+       (general): Delete trailing whitespace from a few patterns.
+
+       * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
+       V2DF/V2DI interleave high/low builtins.
+
+       * config/rs6000/rs6000-builtin.def (VSX_BUILTIN_VEC_MERGE*): Add
+       new VSX builtins.
+
+       * config/rs6000/rs6000.c (bdesc_2arg): Add support for V2DF/V2DI
+       interleave high/low functions.
+
+2010-02-25  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       * doc/extend.texi (Symbol-Renaming Pragmas): Fix spelling of
+       #pragma extern_prefix.
+
+2010-02-25  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/43166
+       * cfgexpand.c (expand_debug_expr) <case VAR_DECL>: If mode is
+       BLKmode, assert op0 is a MEM and just adjust its mode.
+
+       PR debug/43165
+       * cfgexpand.c (expand_debug_expr): Don't call simplify_gen_subreg
+       if bitpos isn't multiple of mode's bitsize.
+
+2010-02-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       * c.opt (-ftemplate-depth=): New.
+       (-ftemplate-depth-): Deprecate.
+       * optc-gen.awk: Handle -ftemplate-depth=.
+       * opth-gen.awk: Likewise.
+       * c-opts.c (c_common_handle_option): Likewise.
+       * doc/invoke.texi (-ftemplate-depth-): Replace with
+       -ftemplate-depth=.
+
+2010-02-24  Jason Merrill  <jason@redhat.com>
+
+       * doc/invoke.texi: Improve -Wabi and -fabi-version docs.
+
+2010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * cfg.c (alloc_aux_for_block): Remove inline.
+       (alloc_aux_for_edge): Likewise.
+
+2010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config.gcc: Fix typo in mips-sgi-irix6.[0-4]* obsoletion.
+
+2010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config/i386/sol2.h (NO_DBX_BNSYM_ENSYM): Define.
+       * config/i386/sol2-gas.h: New file.
+       * config.gcc (i[34567]86-*-solaris2*): Use it.
+
+2010-02-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       PR c/43128
+       * c-typeck.c (ep_convert_and_check): New.
+       (build_conditional_expr): Use it.
+       (build_binary_op): Likewise.
+
+2010-02-24  Jakub Jelinek  <jakub@redhat.com>
+
+       * regcprop.c (copyprop_hardreg_forward_1): Don't call df_insn_rescan.
+
+       PR debug/43150
+       * gimplify.c (gimplify_type_sizes): Clear DECL_IGNORED_P for VLA
+       bounds even for -O+.
+       * var-tracking.c (track_expr_p): If !need_rtl, don't mandate
+       expr needs to have DECL_NAME set.
+
+2010-02-24  Nick Clifton  <nickc@redhat.com>
+
+       * config/mep/mep.c: Include gimple.h.
+       (mep_function_uses_sp): Delete unused function.
+       (mep_gimplify_va_arg_expr): Change types of pre_p and post_p
+       parameters.  Use unsigned integers to count args.  Return a
+       NULL_RTX instead of an error_mark_node.  Toidy up formatting.
+
+2010-02-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/43107
+       * config/i386/i386.c (avx_vpermilp_parallel): Reject indexes
+       greater or equal to nelt instead of 2 * nelt.
+       (expand_vec_perm_1): When op0 and op1 are equal, mask indexes
+       with nelt - 1.
+
+2010-02-23  Jason Merrill  <jason@redhat.com>
+
+       PR debug/42800
+       * cfgexpand.c (expand_used_vars): Keep artificial non-ignored vars
+       in cfun->local_decls even if they have register types.
+
+       PR c++/42837
+       * stor-layout.c (place_field): Don't warn about unnecessary
+       DECL_PACKED if the type is packed.
+
+2010-02-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/43139
+       * config/i386/i386.c (ix86_delegitimize_address): Delegitimize all
+       GOTOFF relocs, even when the base reg isn't pic pointer.
+
+2010-02-23  Michael Matz  <matz@suse.de>
+
+       PR debug/43077
+       * cfgexpand (expand_debug_expr): Expand TERed ssa names in place.
+       (expand_gimple_basic_block): Generate and use debug temps if there
+       are debug uses left after the last real use of TERed ssa names.
+       Unlink debug immediate uses when they are expanded.
+
+2010-02-23  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       PR 43123
+       * config/i386/i386.c (override_options): Reorganise to provide
+       better error messages.
+
+2010-02-22  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/43083
+       * graphite-scop-detection.c (create_single_exit_edge): Move
+       the call to find_single_exit_edge to....
+       (create_sese_edges): ...here.  Don't handle multiple edges
+       exiting the function.
+       (build_graphite_scops): Don't handle multiple edges
+       exiting the function.
+
+2010-02-22  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/43097
+       * sese.c (get_rename): Assert that old_name is an SSA_NAME.
+       (rename_variables_in_stmt): Continue when the use is not an SSA_NAME.
+
+2010-02-22  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/43026
+       * sese.c (expand_scalar_variables_expr): Handle COMPONENT_REF.
+
+2010-02-22  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       PR c++/43126
+       * c-typeck.c (convert_arguments): Print declaration location.
+       * c-common.c (validate_nargs): Rename as
+       builtin_function_validate_nargs.
+       (check_builtin_function_arguments): Update.
+
+2010-02-22  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/43045
+       * tree-inline.c (declare_return_variable): Use the type of
+       the call stmt lhs if available.
+
+2010-02-22  Duncan Sands  <baldrick@free.fr>
+
+       * passes.c (register_pass): Always consider all pass lists when
+       ref_pass_instance_number is zero.
+
+2010-02-22  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/42749
+       * tree-tailcall.c (adjust_return_value_with_ops): Drop update
+       parameter.  Do arithmetic in the original type.
+       (update_accumulator_with_ops): Likewise.
+       (adjust_accumulator_values): Adjust.
+
+2010-02-22  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
+
+       * config/s390/s390.md ("movqi"): Re-add the mem->mem alternative.
+       (QI to BLKmode splitter): New splitter.
+
+2010-02-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/i386.c (initial_ix86_tune_features): Turn on
+       X86_TUNE_INTER_UNIT_MOVES for m_ATOM.
+
+2010-02-22  Richard Guenther  <rguenther@suse.de>
+
+       * tree-vect-slp.c (vect_slp_analyze_bb): Fix typo.
+
+2010-02-22  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       Migrate crti, crtn, crtbegin, crtend build rules to libgcc.
+       * config/mmix/t-mmix (EXTRA_MULTILIB_PARTS): Don't set.
+       ($(T)crti.o, $(T)crtn.o): Remove rules.
+
+2010-02-21  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/35259
+       * doc/invoke.texi (-fassociative-math): Document that this
+       option is automatically enabled for Fortran.
+
+2010-02-20  David S. Miller  <davem@davemloft.net>
+
+       * configure.ac: Test if linker and assembler properly support
+       GOTDATA_OP relocations.
+       * configure: Rebuild.
+       * config.in: Likewise.
+       * config/sparc/sparc.md (UNSPEC_MOVE_GOTDATA): New.
+       (movsi_lo_sum_pic): Use %gdop_*() relocs if available.
+       (movsi_high_pic): Likewise.
+       (movdi_lo_sum_pic): Likewise.
+       (movdi_high_pic): Likewise.
+       (movsi_pic_gotdata_op): New pattern.
+       (movdi_pic_gotdata_op): Likewise.
+       * config/sparc/sparc.c (legitimize_pic_address): If flag_pic is 2,
+       emit gen_mov{si,di}_pic_gotdata_op for the GOT slot load.
+       
+2010-02-20  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/43067
+       * config/i386/sse.md (xop_mulv2div2di3_low): Change type
+       attribute to ssemul.
+       (xop_mulv2div2di3_high): Ditto.
+
+2010-02-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       PR c++/35669
+       * c.opt (Wconversion-null): New option.
+       * doc/invoke.texi (Wconversion-null): Document.
+
+2010-02-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       * common.opt (Wlarger-than-): Add Undocumented.
+
+2010-02-19  Mike Stump  <mikestump@comcast.net>
+
+       * config/t-darwin (gt-darwin.h): Remove as Makefile now handles it.
+
+2010-02-19  Jason Merrill  <jason@redhat.com>
+
+       PR target/40332
+       * configure.ac (gcc_cv_as_cfi_advance_working): Check 32-bit advance.
+       * configure: Likewise.
+
+2010-02-20  Alan Modra  <amodra@gmail.com>
+
+       PR middle-end/42344
+       * cgraph.h (cgraph_make_decl_local): Declare.
+       * cgraph.c (cgraph_make_decl_local): New function.
+       (cgraph_make_node_local): Use it.
+       * cgraphunit.c (cgraph_function_versioning): Likewise.
+       * ipa.c (function_and_variable_visibility): Likewise.
+
+2010-02-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR bootstrap/43121
+       * except.c (sjlj_emit_function_enter): Don't call
+       add_reg_br_prob_note, instead add REG_BR_PROB note to the last insn
+       directly.
+       * rtl.h (add_reg_br_prob_note): Remove prototype.
+
+2010-02-19  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       PR 41779
+       * c-common.c (conversion_warning): Remove widening conversions
+       before checking the conversion of integers to reals.
+
+2010-02-19  Mike Stump  <mikestump@comcast.net>
+
+       PR middle-end/43125
+       * c-decl.c (merge_decls): Merge DECL_PRESERVE_P.
+
+       PR objc/43061
+       * cgraphunit.c (process_function_and_variable_attributes): Check
+       DECL_PRESERVE_P instead of looking up attribute "used".
+       * ipa-pure-const.c (check_decl): Likewise.
+       * ipa-reference.c (has_proper_scope_for_analysis): Likewise.
+       * ipa-type-escape.c (has_proper_scope_for_analysis): Likewise.
+       * config/sol2.c (solaris_insert_attributes): Set DECL_PRESERVE_P
+       instead of attribute "used".
+       * config/sol2-c.c (solaris_pragma_init): Likewise.
+       (solaris_pragma_fini): Likewise.
+
+2010-02-19  Jakub Jelinek  <jakub@redhat.com>
+
+       * ipa-struct-reorg.c (make_field_acc_node, gen_cluster, peel_field):
+       Use XCNEW instead of xcalloc.
+       (add_access_to_acc_sites, create_new_var_node, add_alloc_site): Use
+       XNEW instead of xmalloc.
+       (get_fields): Use XNEWVEC instead of xmalloc.
+
+       PR debug/43084
+       * ipa-struct-reorg.c (add_access_to_acc_sites): For debug stmts don't
+       populate vars array.
+       (create_new_general_access): For debug stmts just reset value.
+       (get_stmt_accesses): For accesses within debug stmts just record them
+       using add_access_to_acc_sites instead of preventing the peeling or
+       counting them as accesses.
+
+       PR middle-end/42233
+       * dojump.c (do_jump) <case TRUTH_NOT_EXPR>: Invert priority.
+
 2010-02-19  Richard Guenther  <rguenther@suse.de>
 
        PR tree-optimization/42916