+2010-05-14 Alan Modra <amodra@gmail.com>
+
+ PR target/44075
+ * config/rs6000/rs6000.c (struct machine_function): Reorder
+ fields for better packing. Add lr_save_state.
+ (rs6000_ra_ever_killed): Return lr_save_state if set.
+ (rs6000_emit_eh_reg_restore): Set lr_save_state.
+
+2010-05-13 Jan Hubicka <jh@suse.cz>
+
+ * varpool.c (decide_is_variable_needed): Drop code checking
+ TREE_SYMBOL_REFERENCED.
+
+2010-05-13 Jan Hubicka <jh@suse.cz>
+
+ * final.c (output_addr_const): Do not call mark_decl_referenced.
+ * cgraphunit.c (process_function_and_variable_attributes): Use
+ mark_needed_node dirrectly.
+ (assemble_thunk): Do not call mark_decl_referenced.
+
+2010-05-13 Anatoly Sokolov <aesok@post.ru>
+
+ * targhooks.c (default_mode_dependent_address_p): Cast 'addr' to rtx.
+
+2010-05-13 Jeff Law <law@redhat.com>
+
+ * ira-conflicts.c (print_allocno_conflicts): New function broken out
+ from...
+ (print_conflicts): Call print_allocno_conflicts.
+
+2010-05-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/44104
+ * dwarf2out.c (modified_type_die): Don't dereference mod_type_die
+ if it is NULL.
+
+2010-05-13 Kai Tietz <kai.tietz@onevision.com>
+
+ * config.gcc (i[34567]86-*-mingw* | x86_64-*-mingw*): Choose
+ t-mingw-w64 or t-mingw-w32 for multilib configuration.
+ * config/i386/t-mingw-w32: New.
+ * config/i386/t-mingw-w64 (MULTILIB_OSDIRNAMES): Change lib64 to lib.
+
+2010-05-13 Martin Jambor <mjambor@suse.cz>
+
+ * gimple.c (gimple_fold_obj_type_ref): Removed (a replacement moved to
+ gimple-fold.c).
+ * gimple-fold.c (get_base_binfo_for_type): New function.
+ (gimple_get_relevant_ref_binfo): Likewise.
+ (gimple_fold_obj_type_ref_known_binfo): Likewise.
+ (gimple_fold_obj_type_ref): Likewise.
+ (fold_gimple_call): Simplify condition for folding virtual calls
+ and call gimple_fold_obj_type_ref.
+ * gimple.h (gimple_get_relevant_ref_binfo): Declare.
+ (gimple_fold_obj_type_ref_known_binfo): Likewise.
+
+2010-05-13 Andreas Schwab <schwab@linux-m68k.org>
+
+ * config/rs6000/rs6000-protos.h
+ (rs6000_mode_dependent_address_ptr): Change argument to const_rtx.
+ * config/rs6000/rs6000.c (rs6000_mode_dependent_address)
+ (rs6000_debug_mode_dependent_address)
+ (rs6000_mode_dependent_address_ptr): Likewise.
+
+2010-05-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/43983
+ * var-tracking.c (track_expr_p): Allow tracking of variables optimized
+ by SRA.
+ * Makefile.in (dwarf2out.o): Depend on $(TREE_FLOW_H).
+ * tree-sra.c (create_access_replacement): Call unshare_expr before
+ passing expr to SET_DECL_DEBUG_EXPR, and remove any SSA_NAMEs from
+ it.
+ * dwarf2out.c: Include tree-flow.h.
+ (struct var_loc_node): Rename var_loc_note field to loc, add comment.
+ (size_of_loc_descr, output_loc_operands, output_loc_operands_raw):
+ Handle DW_OP_bit_piece.
+ (decl_piece_bitsize, decl_piece_varloc_ptr, decl_piece_node,
+ construct_piece_list, adjust_piece_list): New functions.
+ (add_var_loc_to_decl): Handle SRA optimized variables.
+ Adjust for var_loc_note to loc field renaming.
+ (dw_loc_list_1): For WANT_ADDRESS == 2 prefer DECL_MODE of decl
+ in VAR_LOCATION note.
+ (new_loc_descr_op_bit_piece): New function.
+ (dw_sra_loc_expr): New function.
+ (dw_loc_list): Use it. Don't handle the last range after the
+ loop, handle it inside of the loop. Adjust for var_loc_note
+ to loc field renaming.
+ (add_location_or_const_value_attribute): Only special case
+ single entry loc lists if loc is NOTE_P. Adjust for
+ var_loc_note to loc field renaming.
+ (dwarf2out_var_location): Don't set newloc->var_loc_note
+ and newloc->next here.
+
+2010-05-12 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_mark_address_taken_node): No longer imply needed flag.
+ * cgraph.h (cgraph_only_called_directly_p,
+ cgraph_can_remove_if_no_direct_calls_p): test address_taken flag.
+ (cgraph_can_remove_if_no_direct_calls_and_refs_p): New function.
+ * cgraphunit.c (cgraph_mark_functions_to_output): Test address_taken.
+ (assemble
+ * ipa.c (cgraph_remove_unreachable_nodes): Use
+ cgraph_can_remove_if_no_direct_calls_and_refs_p; clear address_taken flags.
+ * tree-inline.c (copy_bb): Check address_taken flag.
+ * tree-profile.c (tree_gen_ic_func_profiler): Check address_taken and
+ externally_visible flag.
+
+2010-05-12 Jason Merrill <jason@redhat.com>
+
+ PR bootstrap/44048
+ PR target/44099
+ * dbxout.c (dbxout_type): Remove NULLPTR_TYPE handling.
+ * sdbout.c (plain_type_1): Likewise.
+ * dwarf2out.c (is_base_type): Likewise.
+ (gen_type_die_with_usage): Likewise. Generate
+ DW_TAG_unspecified_type for any LANG_TYPE.
+
+2010-05-12 Jan Hubicka <jh@suse.cz>
+
+ * cgraphbuild.c (build_cgraph_edges, rebuild_cgraph_edges): Build
+ indrect edges too.
+ * cgraph.c (cgraph_create_indirect_edge): Take ecf_flags argument.
+ (cgraph_clone_edge): Update.
+ (cgraph_node_remove_callees): Remove indirect calls too.
+ * cgraph.h (cgraph_indirect_call_info): Add ecf_flags.
+ (cgraph_create_indirect_edge): Update prototype.
+ * ipa-reference.c (has_proper_scope_for_analysis): Rename to
+ is_proper_for_analysis.
+ (add_new_function, visited_nodes, function_insertion_hook_holder,
+ get_local_reference_vars_info, mark_address_taken, mark_address,
+ mark_load, mark_store, check_asm_memory_clobber, check_call,
+ scan_stmt_for_static_refs, scan_initializer_for_static_refs): Remove.
+ (ipa_init): Do not initialize visited_nodes;
+ function_insertion_hook_holder.
+ (analyze_variable): Rewrite.
+ (analyze_function): Rewrite.
+ (copy_local_bitmap): Remove.
+ (duplicate_node_dat): Do not duplicate local info.
+ (generate_summary): Simplify to only walk cgraph.
+ (write_node_summary_p, ipa_reference_write_summary,
+ ipa_reference_read_summary): Remove.
+ (propagate): Do not remove function insertion;
+ generate summary.
+ (pass_ipa_reference): NULLify summary handling fields.
+ * lto-cgraph.c (lto_output_edge): Output ecf_flags.
+ (input_edge): Input ecf_flags.
+ * ipa-prop.c (ipa_note_parm_call): Expect edge to be around.
+ (update_indirect_edges_after_inlining): Ignore edges with unknown
+ param.
+
+2010-05-12 Sriraman Tallam <tmsriram@google.com>
+
+ * implicit-zee.c: New file.
+ * tree-pass.h (pass_implicit_zee): Declare.
+ * passes.c (init_optimization_passes): Add zee pass.
+ * common.opt (fzee): New flag.
+ * timevar.def (TV_ZEE): Define.
+ * config/i386/i386.c (optimization_options): Turn on ZEE for level 2
+ and beyond.
+ * Makefile.in (implicit-zee.o): Add new build file.
+
+2010-05-12 Kazu Hirata <kazu@codesourcery.com>
+ Nathan Froyd <froydnj@codesourcery.com>
+
+ * c-common.c (sync_resolve_params): Remove write-only variable.
+
+2010-05-12 Anatoly Sokolov <aesok@post.ru>
+
+ * target.h (struct gcc_target): Add mode_dependent_address_p field.
+ * target-def.h (TARGET_MODE_DEPENDENT_ADDRESS_P): New.
+ (TARGET_INITIALIZER): Use TARGET_MODE_DEPENDENT_ADDRESS_P.
+ * targhooks.c (default_mode_dependent_address_p): New function.
+ * targhooks.h (default_mode_dependent_address_p): Declare function.
+ * doc/tm.texi (TARGET_MODE_DEPENDENT_ADDRESS_P): New.
+ (GO_IF_MODE_DEPENDENT_ADDRESS): Update.
+ * recog.c: (mode_dependent_address_p): Call mode_dependent_address_p
+ target hook. Change return type to bool.
+ * recog.h: (mode_dependent_address_p): Change return type to bool.
+
2010-05-12 Kazu Hirata <kazu@codesourcery.com>
Nathan Froyd <froydnj@codesourcery.com>
2010-05-11 Christian Borntraeger <borntraeger@de.ibm.com>
- * tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Reset
+ * tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Reset
prefetch_before to PREFETCH_ALL if to accesses "meet" beyond
cache size.
2010-05-11 Christian Borntraeger <borntraeger@de.ibm.com>
- * tree-ssa-loop-prefetch.c: Add debug for dropped prefetches.
+ * tree-ssa-loop-prefetch.c: Add debug for dropped prefetches.
2010-05-11 Jakub Jelinek <jakub@redhat.com>