OSDN Git Service

Implement -Wno-maybe-uninitialized
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index d14cc00..248ba57 100644 (file)
@@ -1,3 +1,301 @@
+2011-04-26  Xinliang David Li  <davidxl@google.com>
+
+       * tree-ssa-uninit.c (warn_uninitialized_phi): Pass
+        warning code.
+       * c-family/c-opts.c (c_common_handle_option): Set
+       warn_maybe_uninitialized.
+       * opts.c (common_handle_option): Ditto.
+       * common.opt:  New option.
+       * tree-ssa.c (warn_uninit): Add one more parameter.
+       (warn_uninitialized_var): Pass warning code.
+       * tree-flow.h: Interface change.
+
+
+2011-04-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config/mips/iris6.h (LOCAL_LABEL_PREFIX): Don't test
+       TARGET_NEWABI.
+       (WINT_TYPE_SIZE): Use INT_TYPE_SIZE.
+       (TARGET_OS_CPP_BUILTINS): Remove TARGET_IRIX6 guards.
+
+2011-04-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config/mips/mips.h (DBX_OUTPUT_SOURCE_LINE): Remove.
+       * config/mips/mips.opt (mmips-tfile): Remove.
+
+       * doc/install.texi (Specific, mips-*-*): Move mips-tfile,
+       mips-tdump reference to ...
+       (Specific, alpha*-dec-osf5.1): ... here.
+       Adapt for Tru64 UNIX.
+       * doc/trouble.texi (Cross-Compiler Problems): Replace MIPS
+       reference by Tru64 UNIX.
+
+2011-04-26  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/48768
+       * tree-ssa.c (insert_debug_temp_for_var_def): If degenerate_phi_result
+       is error_mark_node, set value to NULL.
+
+       PR tree-optimization/48734
+       * tree-ssa-reassoc.c (eliminate_redundant_comparison): Give up
+       if return value from maybe_fold_*_comparsions isn't something
+       the code is prepared to handle.
+
+2011-04-26  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/predicates.md (ext_QIreg_operand): Remove extra
+       mode check.
+       (ext_QIreg_nomode_operands): Remove.
+       * config/i386/i386.md (*anddi_1): Use ext_QIreg_operand.
+       (*andsi_1): Ditto.
+       (*andhi_1): Ditto.
+
+2011-04-26  Andrew Stubbs  <ams@codesourcery.com>
+
+       * config/arm/arm.c (arm_gen_constant): Remove can_negate_initial.
+
+2011-04-26  Richard Guenther  <rguenther@suse.de>
+
+       * c-typeck.c (build_unary_op): Do not expand array-refs via
+       pointer arithmetic.  Only adjust qualifiers for function types.
+
+2011-04-26  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/48694
+       * tree.h (OEP_CONSTANT_ADDRESS_OF): New operand_equal_flag.
+       * fold-const.c (operand_equal_p): For TREE_CONSTANT ADDR_EXPRs
+       compare the operands with OEP_CONSTANT_ADDRESS_OF.  Treat trees
+       with TREE_SIDE_EFFECTS equal when OEP_CONSTANT_ADDRESS_OF is set.
+
+2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * c-family/c-common.c (struct c_common_resword): Add __underlying_type.
+       * c-family/c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
+        * doc/extend.texi: Document __underlying_type.
+
+2011-04-25  Segher Boessenkool  <segher@kernel.crashing.org>
+
+       * config/rs6000/titan.md (automata_option "progress"): Remove.
+
+2011-04-25  Jeff Law  <law@redhat.com>
+
+       * tree-vrp.c (identify_jump_threads): Handle GIMPLE_SWITCH too.
+
+2011-04-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * system.h (ENUM_BITFIELD): Remove.
+
+2011-04-25  Maxim Kuvyrkov  <maxim@codesourcery.com>
+           Eric Botcazou <ebotcazou@adacore.com>
+
+       * combine.c (combine_simplify_rtx): Avoid mis-simplifying conditionals
+       for STORE_FLAG_VALUE==-1 case.
+
+2011-04-24  Richard Sandiford  <richard.sandiford@linaro.org>
+
+       PR target/43804
+       * config/m68k/constraints.md (T): Allow PIC operands that satisfy
+       LEGITIMATE_PIC_OPERAND_P.
+
+2011-04-24  Jan Hubicka  <jh@suse.cz>
+
+       * ipa-prop.c (ipa_propagate_indirect_call_infos): Remove obsolette
+       WPA hack.
+       * ipa-prop.h (ipa_get_param, ipa_is_param_used,
+       ipa_param_cannot_devirtualize_p, ipa_param_types_vec_empty,
+       ipa_get_ith_jump_func, ipa_get_lattice): Fortify array bounds.
+       * ipa-inline-analysis.c (add_clause): Fix clause ordering.
+       (and_predicates, or_predicates, predicates_equal_p, evaulate_predicate):
+       Sanity check predicate length.
+       (remap_predicate): Likewise; sanity check jump functions.
+       (inline_read_section, inline_write_summary): Sanity check
+       predicate length.
+
+2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR other/48748
+       * doc/extend.texi (Type Traits): Document __is_standard_layout,
+       __is_literal_type, and __is_trivial; update throughout about
+       possibly cv-qualified void types.
+
+2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       * doc/sourcebuild.texi (Ada Tests): Adjust reference to ACATS
+       testsuite and make it version agnostic.
+
+2011-04-22  Jan Hubicka  <jh@suse.cz>
+
+       * ipa-inline-analysis.c (inline_write_summary): Fix thinko.
+
+2011-04-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/48685
+       * fold-const.c (fold_convert_loc): Add NOP_EXPR when casting
+       to VOID_TYPE even around MODIFY_EXPR.
+
+2011-04-22  Mike Stump  <mikestump@comcast.net>
+
+       * gensupport.c (read_md_rtx): Fix typo in comment.
+       * config/cris/cris.opt (moverride-best-lib-options): Fix typo in
+       comment.
+
+2011-04-22  Jan Hubicka  <jh@suse.cz>
+
+       * gengtype.c (open_base_files): Add ipa-inline.h include.
+       * ipa-cp.c (ipcp_get_lattice, ipcp_lattice_from_jfunc): Move to
+       ipa-prop.c; update all uses.
+       * ipa-prop.c: (ipa_get_lattice, ipa_lattice_from_jfunc): ... here.
+       * ipa-inline-transform.c (inline_call): Use inline_merge_summary to
+       merge summary of inlined function into former caller.
+       * ipa-inline.c (max_benefit): Remove.
+       (edge_badness): Compensate for removal of benefits.
+       (update_caller_keys): Use
+       reset_node_growth_cache/reset_edge_growth_cache.
+       (update_callee_keys): Likewise.
+       (update_all_callee_keys): Likewise.
+       (inline_small_functions): Do not collect max_benefit; do not reset
+       estimated_growth; call free_growth_caches and initialize_growth_caches.
+       * ipa-inline.h (struct condition, type clause_t, struct predicate,
+       struct size_time_entry): New structures.
+       (INLINE_SIZE_SCALE, INLINE_TIME_SCALE, MAX_CLAUSES): New constants.
+       (inline_summary): Remove size_inlining_benefit, time_inlining_benefit
+       and estimated_growth.
+       (edge_growth_cache_entry): New structure.
+       (node_growth_cache, edge_growth_cache): New global vars.
+       (estimate_growth): Turn into inline.
+       (inline_merge_summary, do_estimate_edge_growth, do_estimate_edge_time,
+       initialize_growth_caches, free_growth_caches): Declare.
+       (estimate_edge_growth): Rewrite.
+       (estimate_edge_time): Implement as inline cache lookup.
+       (reset_node_growth_cache, reset_edge_growth_cache): New inline
+       functions.
+       (MAX_TIME): Reduce to allow multiplicatoin by INLINE_SIZE_SCALE.
+       (NUM_CONDITIONS): New constant.
+       (predicate_conditions): New enum.
+       (IS_NOT_CONSTANT): New constant.
+       (edge_removal_hook_holder): New var.
+       (node_growth_cache, edge_growth_cache): New global vars.
+       (true_predicate, single_cond_predicate, false_predicate,
+       not_inlined_predicate, add_condition, add_clause, and_predicates,
+       or_predicates, predicates_equal_p, evaulate_predicate, dump_condition,
+       dump_clause, dump_predicate, account_size_time,
+       evaulate_conditions_for_edge): New functions.
+       (inline_summary_alloc): Move to heap.
+       (inline_node_removal_hook): Clear condition and entry vectors.
+       (inline_edge_removal_hook): New function.
+       (initialize_growth_caches, free_growth_caches): New function.
+       (dump_inline_summary): Update.
+       (edge_execution_predicate): New function.
+       (will_be_nonconstant_predicate): New function.
+       (estimate_function_body_sizes): Compute BB and constantness predicates.
+       (compute_inline_parameters): Do not clear estimated_growth.
+       (estimate_edge_size_and_time): New function.
+       (estimate_calls_size_and_time): New function.
+       (estimate_callee_size_and_time): New function.
+       (remap_predicate): New function.
+       (inline_merge_summary): New function.
+       (do_estimate_edge_time): New function based on...
+       (estimate_edge_time): ... this one.
+       (do_estimate_edge_growth): New function.
+       (do_estimate_growth): New function based on....
+       (estimate_growth): ... this one.
+       (inline_analyze_function): Analyze after deciding on jump functions.
+       (inline_read_section): New function.
+       (inline_read_summary): Use it.
+       (inline_write_summary): Write all the new data.
+       * ipa-prop.c (ipa_get_param_decl_index): Export.
+       (ipa_lattice_from_jfunc): Move here from ipa-cp.c
+       * ipa-prop.h (ipa_get_param_decl_index, ipa_lattice_from_jfunc):
+       Declare.
+       (ipa_get_lattice): Move here from ipa-cp.c
+       * Makefile.in (GTFILES): Add ipa-inline.h and ipa-inline-analysis.c
+       * params.def (PARAM_EARLY_INLINING_INSNS): Set to 11.
+       * cgraph.h (cgraph_clone_inlined_nodes, compute_inline_parameters,
+       cgraph_edge_inlinable_p): Remove.
+       * cgraphunit.c: Include ipainline.h
+       (cgraph_process_new_functions): Update call of
+       compute_inline_parameters.
+
+2011-04-22  Richard Guenther  <rguenther@suse.de>
+
+       * tree.c (build_int_cst): Properly create canonicalized integer
+       constants.
+       (build_int_cst_type): Remove scary comments.
+
+2011-04-22  Xinliang David Li  <davidxl@google.com>
+
+       * toplev.c (process_options): Enable -Werror=coverage-mismatch
+       by default when -Wno-error is not specified.
+       * opts-global.c (decode_options): Remove call to
+       control_warning_options.
+
+2011-04-22  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/48717
+       * tree-ssa-forwprop.c (associate_plusminus): For A + ~A and
+       ~A + A optimizations use build_int_cst_type instead of build_int_cst.
+
+2011-04-22  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/bfin/bfin-protos.h (Mmode): Don't define.  Expand
+       definition where used.
+
+2011-04-22  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/48716
+       * gimplify.c (gimplify_bind_expr): Mark as GOVD_LOCAL also
+       TREE_STATIC variables declared inside of some OpenMP construct.
+
+2011-04-22  Martin Jambor  <mjambor@suse.cz>
+
+       PR middle-end/48585
+       * tree-inline.c (copy_bb): Create new edges only for analyzed nodes.
+
+2011-04-22  Alexander Monakov  <amonakov@ispras.ru>
+
+       PR c/36750
+       * c-typeck.c (pop_init_level): Do not warn about initializing
+       with ` = {0}'.
+
+2011-04-22  Alan Modra  <amodra@gmail.com>
+
+       * config/rs6000/rs6000.c (rs6000_function_arg): Remove CALL_LIBCALL
+       when returning call_cookie.
+       (rs6000_function_ok_for_sibcall): Allow sibcalls via function
+       pointers, to functions with no more vector args than the current
+       function, and some non-local calls for ABI_V4.
+       * config/rs6000/rs6000.md (sibcall_nonlocal_aix32,
+       sibcall_nonlocal_aix64): Combine to ..
+       (sibcall_nonlocal_aix<mode>): ..this.  Handle function pointer calls.
+       (sibcall_value_nonlocal_aix32, sibcall_value_nonlocal_aix64): Combine..
+       (sibcall_value_nonlocal_aix<mode>): ..likewise.
+       (*sibcall_nonlocal_sysv<mode>): Handle function pointer calls.
+       (sibcall_value_nonlocal_sysv<mode>): Likewise.  Correct call cookie
+       operand.
+       * config/rs6000/darwin.md (sibcall_nonlocal_darwin64,
+       sibcall_value_nonlocal_darwin64, sibcall_symbolic_64,
+       sibcall_value_symbolic_64): Delete.
+
+2011-04-21  Xinliang David Li  <davidxl@google.com>
+
+       * cgraph.h: Remove pid.
+       * cgraph.c: Remove pid.
+       * value-prof.c (init_node_map): New function.
+       (del_node_map): New function.
+       (find_func_by_funcdef_no): New function.
+       (gimple_ic_transform): Call new function.
+       * cgraphunit.c (cgraph_finalize_function): Remove pid.
+       * function.c (get_last_funcdef_no): New function.
+       * function.h (get_last_funcdef_no): New function.
+       * tree-profile.c (gimple_gen_ic_func_profiler): Pass funcdef_no
+       to libgcov function.
+       (tree-profiling): Call node map init and delete function.
+
+2011-04-21  Ian Lance Taylor  <iant@google.com>
+
+       * godump.c (go_format_type): Use exported Go name for anonymous
+       field name.
+
 2011-04-21  Nathan Froyd  <froydnj@codesourcery.com>
 
        * config/frv/frv.c (frv_init_builtins): Delete `endlink' variable.
        (expand_stack_vars): ...and here.
        (stack_var_cmp): Sort by descending order of size.
        (partition_stack_vars): Change heuristic.
-       (union_stack_vars): Fix to reflect changes in
-       partition_stack_vars.
+       (union_stack_vars): Fix to reflect changes in partition_stack_vars.
        (dump_stack_var_partition): Add newline after each partition.
 
 2011-04-21  Dimitrios Apostolou  <jimis@gmx.net>
            Jeff Law  <law@redhat.com>
 
-       * gengtype-state.c (read_a_state_token): Fix argument to 
-       obstack_free.
+       * gengtype-state.c (read_a_state_token): Fix argument to obstack_free.
        * gengtype.c (matching_file_name_substitute): Likewise.
 
 2011-04-21  Richard Guenther  <rguenther@suse.de>
 
        PR lto/48703
-       * tree.c (free_lang_data_in_decl): Do not zero TREE_TYPE of
-       DECL_NAME.
+       * tree.c (free_lang_data_in_decl): Do not zero TREE_TYPE of DECL_NAME.
 
 2011-04-21  Eric Botcazou  <ebotcazou@adacore.com>