OSDN Git Service

PR middle-end/44337
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 18a3089..809ccb8 100644 (file)
@@ -1,3 +1,338 @@
+2010-05-31  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/44337
+       * expr.c (expand_assignment): Don't store anything for out-of-bounds
+       array accesses with non-MEM.
+
+       PR tree-optimization/44182
+       * tree-inline.c (copy_edges_for_bb): Don't split bb if a stmt that
+       newly needs to end a bb is followed by debug stmts, instead return
+       true from the function at the end.
+       (maybe_move_debug_stmts_to_successors): New function.
+       (copy_cfg_body): Call it if copy_edges_for_bb returned true.
+
+2010-05-31  Kai Tietz  <kai.tietz@onevision.com>
+
+       PR target/44161
+       * config/i386/cygming.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
+       flag_pic.
+
+2010-05-31  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * cgraphunit.c (cgraph_decide_is_function_needed): Really return false
+       for nested functions in non-optimized compilation.
+
+2010-05-31  Richard Guenther  <rguenther@suse.de>
+
+       * tree-ssa-structalias.c (find_func_aliases): Handle
+       BUILT_IN_RETURN.
+
+2010-05-30  Jan Hubicka  <jh@suse.cz>
+
+       * predict.c (maybe_hot_edge_p): Calls to functions called once is cold.
+
+2010-05-30  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/42975
+       * tree-eh.c (execute_cleanup_eh_1): Copy from execute_cleanup_eh.
+       (execute_cleanup_eh): Clear DECL_FUNCTION_PERSONALITY if it is
+       no longer needed.
+
+2010-05-30  Iain Sandoe  <iains@gcc.gnu.org>
+
+       * config/darwin.c (output_objc_section_asm_op): Add comment.
+       (name_needs_quotes): Add '_' to list of valid comment chars.
+       (machopic_output_function_base_name): Remove unneeded quotes.
+       (darwin_encode_section_info): Adjust asm whitespace.
+       * config/i386/darwin.h (ASM_OUTPUT_COMMON): Adjust asm tabs.
+       (ASM_OUTPUT_LOCAL): Ditto.
+       * config/rs6000/darwin.h (ASM_OUTPUT_COMMON): Ditto.
+       * config/darwin.h (GLOBAL_ASM_OP): Ditto.
+       * config/darwin9.h (ASM_OUTPUT_ALIGNED_COMMON): Ditto.
+       
+2010-05-30  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * config/rs6000/rs6000.c (rs6000_output_function_entry): Use
+       RS6000_OUTPUT_BASENAME unconditionally.
+       (rs6000_output_function_epilogue): Likewise.
+
+2010-05-30  Jan Hubicka  <jh@suse.cz>
+
+       * toplev.c (wrapup_global_declaration_2): Avoid creation of new varpool
+       nodes.
+
+2010-05-30  Richard Guenther  <rguenther@suse.de>
+
+       * tree-cfg.c (verify_gimple_assign_single): Implement
+       verification for COND_EXPR rhs.
+
+2010-05-30  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.h (cgraph_dump_file): Declare.
+       * cgraphunit.c (cgraph_dump_file): Export.
+       * ipa.c (dump_cgraph_node_set, dump_varpool_node_set): Be less
+       verbose.
+
+2010-05-30  Jan Hubicka  <jh@suse.cz>
+
+       * dwarf2out.c (reference_to_unused,
+       premark_types_used_by_global_vars_helper): Avoid creation of new
+       varpool nodes.
+
+2010-05-30  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.h (cgraph_node_cannot_return,
+       cgraph_edge_cannot_lead_to_return): New functions.
+       * cgraph.c (cgraph_node_cannot_return,
+       cgraph_edge_cannot_lead_to_return): Use them.
+       * ipa-pure-const.c (pure_const_names): New static var.
+       (check_call): Handle calls not leading to return.
+       (pure_const_read_summary): Dump info read.
+       (propagate): Dump info about propagation process; ignore side
+       effects of functions not leading to exit; fix handling of
+       pure functions.
+
+2010-05-30  Jan Hubicka  <jh@suse.cz>
+
+       * config/i386/i386.c (pro_epilogue_adjust_stack): Use EBP
+       for tail call epilogues.
+
+2010-05-30  Jan Hubicka  <jh@suse.cz>
+
+       * passes.c (ipa_write_optimization_summaries_1, ipa_write_summaries_2,
+       ipa_read_summaries_1, ipa_read_optimization_summaries_1): Initialize
+       dump files.
+
+2010-05-29  Jan Hubicka  <jh@suse.cz>
+
+       * ipa.c (cgraph_remove_unreachable_node): Walk references of correct
+       node; remove references in node we no longer keep in cgrpah but need
+       body of.
+
+2010-05-29  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.c (cgraph_mark_reachable): Relax check for analyzed nodes.
+
+2010-05-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR target/44165
+       * config/pa/pa32-linux.h (CTOR_LIST_BEGIN): Mark __CTOR_LIST__ as used.
+
+2010-05-29  Jan Hubicka  <jh@suse.cz>
+
+       * tree-vrp.c (debug_value_range, debug_all_value_ranges,
+       debug_asserts_for, debug_all_asserts): Annotate with DEBUG_FUNCTION.
+       * tree-into-ssa.c (debug_decl_set, debug_defs_stack, debug_currdefs,
+       debug_tree_ssa, debug_tree_ssa_stats, debug_def_blocks,
+       debug_names_replaced_by, debug_update_ssa): Likewise.   
+       * sbitmap.c (debug_sbitmap): Likewise.
+       * genrecog.c (debug_decision, debug_decision_list): Likewise.
+       * tree-pretty-print.c (debug_generic_expr, debug_generic_stmt,
+       debug_tree_chain): Likewise.
+       * tree-loop-distribution.c (debug_rdg_partitions): Likewise.
+       * cgraph.c (debug_cgraph_node, debug_cgraph): Likewise.
+       * optabs.c  (debug_optab_libfuncs): Likewise.
+       (verify_loop_closed_ssa): Likewise.
+       * value-prof.c (verify_histograms): Likewise.
+       * reload.c (debug_reload_to_stream, debug_reload): Likewise.
+       * bitmap.c (debug_bitmap_file, debug_bitmap, bitmap_print): Likewise.
+       * cfghooks.c (verify_flow_info): Likewise.
+       * fold-const.c (debug_fold_checksum): Likewise.
+       * omp-low.c (debug_omp_region, debug_all_omp_regions): Likewise.
+       * cfg.c (debug_regset, debug_flow_info, debug_bb, debug_bb_n):
+       Likewise.
+       * omega.c (debug_omega_problem): Likewise.
+       * cgraphunit.c (verify_cgraph_node, verify_cgraph): Likewise.
+       * tree-ssa-ccp.c (debug_lattice_value): Likewise.
+       * dominance.c (verify_dominators, debug_dominance_info,
+       debug_dominance_tree): Likewise.
+       * df-core.c (df_insn_uid_debug, df_insn_debug, df_insn_debug_regno,
+       * df_regno_debug, df_ref_debug,
+       debug_df_insn, debug_df_reg, debug_df_regno, debug_df_ref,
+       debug_df_defno, debug_df_useno, debug_df_chain): Likewise.
+       * tree-ssa-dom.c (debug_dominator_optimization_stats): Likewise.
+       * sel-sched.c (debug_state): Likewise.
+       * tree-ssa-alias.c (debug_alias_info, debug_points_to_info_for):
+       Likewise.
+       * cfganal.c (print_edge_list, verify_edge_list): Likewise.
+       * dwarf2out.c (debug_dwarf_die, debug_dwarf): Likewise.
+       * tree-eh.c (verify_eh_edges, verify_eh_dispatch_edge): Likewise.
+       * gimple-pretty-print.c (debug_gimple_stmt, debug_gimple_seq):
+       Likewise.
+       * c-pretty-print.c (debug_c_tree): Likewise.
+       * sel-sched-dump.c (debug_insn_rtx, debug_vinsn, debug_expr, debug_insn
+       debug_av_set, debug_lv_set, debug_ilist, debug_blist,
+       debug_insn_vector, debug_hard_reg_set, debug_mem_addr_value): Likewise.
+       * ebitmap.c (debug_ebitmap): Likewise.
+       * function.c (debug_find_var_in_block_tree): Likewise.
+       * print-rtl.c (debug_rtx): Likewise.
+       (debug_rtx_count): Likewise.
+       (debug_rtx_list, debug_rtx_range, debug_rtx_find): Likewise.
+       * stor-layout.c (debug_rli): Likewise.
+       * ipa.c (debug_cgraph_node_set, debug_varpool_node_set): Likewise.
+       * tree-data-ref.c (debug_data_references,
+       debug_data_dependence_relations, debug_data_reference,
+       debug_data_dependence_relation, debug_rdg_vertex,
+       debug_rdg_component, debug_rdg): Likewise.
+       * tree-affine.c (debug_aff): Likewise.
+       * tree-dfa.c (debug_referenced_vars, debug_variable, debug_dfa_stats):
+       Likewise.
+       * except.c (debug_eh_tree, verify_eh_tree): Likewise.
+       * emit-rtl.c (verify_rtl_sharing): Likewise.
+       * tree-ssa-pre.c (debug_pre_expr, debug_bitmap_set,
+       debug_value_expressions): Likewise.
+       * tree-ssa-live.c (debug_scope_block, debug_scope_blocks): Likewise.
+       * sese.c (debug_rename_map, debug_ivtype_map): Likewise.
+       * print-tree.c (debug_tree, debug_vec_tree): Likewise.
+       * cfglayout.c (verify_insn_chain): Likewise.
+       * graphite-clast-to-gimple.c (debug_clast_name_indexes,
+       debug_clast_stmt, debug_generated_program): Likewise.
+       * ggc-page.c (debug_print_page_list): Likewise.
+       * tree-ssa-ter.c (debug_ter): Likewise.
+       * graphite-dependences.c (debug_pddr): Likewise.
+       * sched-deps.c (debug_ds): Likewise.
+       * tree-ssa.c (verify_ssa): Likewise.
+       * graphite-poly.c (debug_scattering_function, debug_iteration_domain,
+       debug_scattering_functions, debug_iteration_domains, debug_pdr,
+       debug_pdrs, debug_pbb_domain, debug_pbb, debug_scop_context,
+       debug_scop, debug_cloog, debug_scop_params, debug_lst): Likewise.
+       * tree-inline.c (debug_find_tree): Likewise.
+       * graphite-ppl.c (debug_ppl_linear_expr, debug_ppl_polyhedron_matrix,
+       debug_ppl_powerset_matrix): Likewise.
+       * var-tracking.c (debug_dv): Likewise.
+       * system.h (DEBUG_FUNCTION, DEBUG_VARIABLE): Define.
+       * cfgloop.c (verify_loop_structure): Likewise.
+       * plugin.c (dump_active_plugins, debug_active_plugins): Likewise.
+       * c-common.c (verify_sequence_points): Likewise.
+       * sched-rgn.c (debug_regions, debug_region, debug_candidate,
+       debug_candidates, debug_rgn_dependencies): Likewise.
+       * tree-ssa-structalias.c (debug_constraint, debug_constraints,
+       * debug_constraint_graph, debug_solution_for_var,
+       debug_sa_points_to_info): Likewise.
+       * sched-vis.c (debug_insn_slim, debug_bb_slim, debug_bb_n_slim):
+       Likewie.
+       * tree-cfg.c (debug_cfg_stats, verify_stmts, debug_function,
+       debug_loops, debug_loop, debug_loop_num): Likewise.
+       * passes.c (debug_pass): Likewise.
+       (dump_properties): Likewise; add cfglayout property.
+       (debug_properties): Likewise.
+       * tree-ssa-reassoc.c (debug_ops_vector): Likewise.
+       * varpool.c (debug_varpool): Likewise.
+       * regcprop.c (debug_value_data): Likewise.
+       * tree-ssa-operands.c (verify_imm_links, debug_immediate_uses,
+       debug_immediate_uses_for): Likewise.
+
+2010-05-29  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR bootstrap/44315
+       * Makefile.in (build/gencondmd.o): Remove TM_H := $(GTM_H).
+       Filter out insn-flags.h.
+
+2010-05-29  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.h (struct varpool_node_set_def,
+       struct cgraph_node_set_def): Remove unused AUX pointer.
+       (cgraph_node_set_nonempty_p, varpool_node_set_nonempty_p): Use
+       VEC_empty macro.
+
+2010-05-29  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/44324
+       * ipa-cp.c (ipcp_insert_stage): Replace "clone" by "constprop".
+
+2010-05-29  Richard Guenther  <rguenther@suse.de>
+
+       * lto-streamer.c (cached_bp): New global variable.
+       (bitpack_create): Return the cached bitpack, if available.
+       (bitpack_delete): Clear and cache the bitpack, if appropriate.
+       (bp_pack_value): Remove redundant asserts.
+
+2010-05-29  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/44306
+       * tree-if-conv.c (is_true_predicate): New.
+       (is_predicated): Use is_true_predicate.
+       (add_to_predicate_list): Same.  Do not use unshare_expr.
+       (add_to_dst_predicate_list): Same.
+
+2010-05-29  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * tree-if-conv.c (add_to_dst_predicate_list): Do not use the ->aux
+       field on edges.
+       (predicate_bbs): Same.
+       (clean_predicate_lists): Same.
+       (find_phi_replacement_condition): Do not AND the predicate from
+       edge->aux.
+
+2010-05-29  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR bootstrap/44315
+       * Makefile.in (build/gencondmd.o): Add a missing `\'.
+
+2010-05-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR target/44261
+       config/pa/pa.md (negdf2_slow, negsf2_slow): New patterns.
+       (negdf2): Adjust expander pattern and use negdf2_slow.
+       (negsf2): Likewise.
+
+2010-05-29  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * basic-block.h (struct control_flow_graph): Move last_label_uid field
+       up.
+       * df.h (struct df_base_ref): Move regno field up.
+       * dwarf2out.c (struct dw_fde_struct): Move funcdef_number field down.
+       * expr.h (struct separate_ops): Move location field up.
+       * optabs.h (struct optab_d): Move libcall_basename field down.
+       * config/i386/i386.c (struct ix86_frame): Move red_zone_size up.
+       * config/i386/i386.h (struct machine_function): Convert call_abi field
+       into a bitfield.  Move cfa field to the end of the structure.
+
+2010-05-29  Jan Hubicka  <jh@suse.cz>
+
+       * varpool.c (varpool_get_node): Fix lookup.
+
+2010-05-29  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * config/spu/spu-protos.h: Do not include rtl.h.  Protect
+       RTL specific prototypes with #ifdef RTX_CODE.
+       * config/spu/spu-c.c: Include c-common.h instead of c-tree.h.
+       * config/spu/t-spu-elf: Fix dependencies.
+
+       * config/t-darwin (darwin-c.o): Remove C_TREE_H dependency.
+
+2010-05-29  Mike Stump  <mikestump@comcast.net>
+
+       PR bootstrap/44315
+       * Makefile.in (build/gencondmd.o): Be sure to use GTM_H instead of
+       TM_H when building to avoid dependency loops.
+
+2010-05-29  Jan Hubicka  <jh@suse.cz>
+
+       * cgraphunit.c (cgraph_materialize_clone): Only remove calles,
+       refs and body; not the whole node for masters of materialized
+       clones.
+
+2010-05-29  Mike Stump  <mikestump@comcast.net>
+
+       * config/rs6000/rs6000-c.c: Remove c-tree.h include.
+
+2010-05-29  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.c (clone_function_name): Take SUFFIX argument; export.
+       (cgraph_create_virtual_clone): Take SUFFIX argument; udpate
+       use of clone_function_name.
+       * cgraph.h (cgraph_create_virtual_clone, 
+       cgraph_function_versioning): update prototypes.
+       (clone_function_name): Declare.
+       * ipa-cp.c (ipcp_insert_stage): Update call of
+       cgraph_create_virtual_clone.
+       * omp-low.c (create_omp_child_function_name): Use
+       cgraph_create_virtual_clone.
+       * cgraphunit.c (cgraph_copy_node_for_versioning): Fix edges updating.
+       (cgraph_function_versioning): Take SUFFIX argument; produce new name
+       and make decl local.
+
 2010-05-29  Steven Bosscher  <steven@gcc.gnu.org>
 
        * vec.h: Include statistics.h
 
 2010-05-28  Jan Hubicka  <jh@suse.cz>
 
-       * ipa-reference.c (add_static_var): Remove redundant all_module_statics check.
-       (ipa_reference_write_optimization_summary): Call is_proper_for_analysis only
-       on local statics.
+       * ipa-reference.c (add_static_var): Remove redundant all_module_statics
+       check.
+       (ipa_reference_write_optimization_summary): Call is_proper_for_analysis
+       only on local statics.
 
 2010-05-28  Iain Sandoe  <iains@gcc.gnu.org>
 
 
 2010-05-28  Dodji Seketeli  <dodji@redhat.com>
 
-       revert fix for PR c++/44188
+       Revert fix for PR c++/44188
        * c-common.c (is_typedef_decl): Revert the moving of  this
        definition ...
        * tree.c (is_typedef_decl): ... here.
        (gen_typedef_die): Revert emitting DW_TAG_typedef  for
        typedefs naming anonymous tagged types.
 
-
 2010-05-28  Segher Boessenkool  <segher@kernel.crashing.org>
 
        * config/rs6000/rs6000-modes.def (PSImode): Delete.