OSDN Git Service

2010-07-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index afbbb31..c0b2a01 100644 (file)
@@ -1,3 +1,598 @@
+2010-07-13  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       * c-decl.c (finish_function): Fix typo in comment.
+       
+2010-07-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR bootstrap/44921
+       * postreload.c (move2add_use_add3_insn): Silence gcc warning
+       on min_regno.
+
+2010-07-12  Jakub Jelinek  <jakub@redhat.com>
+
+       * tree-vrp.c (simplify_bit_ops_using_ranges): New function.
+       (simplify_stmt_using_ranges): Use it.
+
+2010-07-12  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * config/spu/spu.h (struct spu_builtin_description): Remove FNDECL
+       member.  Do not mark as GTY(()).
+       * config/spu/spu.c (spu_builtins): Remove FNDECL initializer elements.
+       (spu_builtin_decls): New static variable.
+       (spu_builtin_decl): Use it instead of spu_builtins[].fndecl.
+       (spu_init_builtins): Likewise.
+       (spu_builtin_mul_widen_even): Likewise.
+       (spu_builtin_mul_widen_odd): Likewise.
+       (spu_builtin_mask_for_load): Likewise.
+       (spu_builtin_vec_perm): Likewise.
+       * config/spu/spu-c.c: Include "target.h".
+       (spu_resolve_overloaded_builtin): Call targetm.builtin_decl instead
+       of using spu_builtins[].fndecl.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/mips/mips.c (mips_override_options): Make -mflip-mips16
+       imply -minterlink-mips16.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/mips/mips.h (mips16_globals): Declare.
+       (SWITCHABLE_TARGET): Define.
+       * config/mips/mips.c: Include target-globals.h.
+       (mips16_globals): New variable.
+       (mips_set_mips16_mode): Use save_target_globals and
+       restore_target_globals instead of target_reinit.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * reginfo.c (init_reg_sets): Don't zero globals here.  Update comment
+       to say that the function can be called more than once.
+       * target-globals.c (save_target_globals): Call init_reg_sets.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (bb-reorder.o, target-globals.o): Depend on bb-reorder.h
+       * bb-reorder.h: New file.
+       * bb-reorder.c (default_target_bb_reorder): New variable.
+       (this_target_bb_reorder): New conditional variable.
+       (uncond_jump_length): Redefine as a macro.
+       * target-globals.h (this_target_bb_reorder): Declare.
+       (target_globals): Add a bb_reorder field.
+       (restore_target_globals): Copy the bb_reorder field to
+       this_target_bb-reorder.
+       * target-globals.c: Include bb-reorder.h.
+       (default_target_globals): Initialize the bb_reorder field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (gcse.o, target-globals.o): Depend on gcse.h..
+       * gcse.h: New file.
+       * gcse.c: Include gcse.h.
+       (default_target_gcse): New variable.
+       (this_target_gcse): New conditional variable.
+       (can_copy): Redefine as a macro.
+       (can_copy_init_p): New macro.
+       (can_copy_p): Remove can_copy_init_p.
+       * target-globals.h (this_target_gcse): Declare.
+       (target_globals): Add a gcse field.
+       (restore_target_globals): Copy the gcse field to
+       this_target_gcse.
+       * target-globals.c: Include gcse.h.
+       (default_target_globals): Initialize the gcse field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * ira-int.h (target_ira_int): Add x_ira_prohibited_mode_move_regs
+       and x_ira_prohibited_mode_move_regs_initialized_p.
+       (ira_prohibited_mode_move_regs): Redefine as a macro.
+       * ira.c (ira_prohibited_mode_move_regs): Delete.
+       (ira_prohibited_mode_move_regs_initialized_p): Redefine as a macro.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * reload.h (target_reload): Add x_cached_reg_save_code and
+       x_cached_reg_restore_code.
+       * caller-save.c (cached_reg_save_code, cached_reg_restore_code):
+       Redefine as macros.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (target-globals.o): Depend on builtins.h.
+       * builtins.h: New file.
+       * builtins.c: Include builtins.h.
+       (default_target_builtins): New variable.
+       (this_target_builtins): New conditional variable.
+       (apply_args_mode, apply_result_mode): Redefine as macros.
+       * target-globals.h (this_target_builtins): Declare.
+       (target_globals): Add a builtins field.
+       (restore_target_globals): Copy the builtins field to
+       this_target_builtins.
+       * target-globals.c: Include builtins.h.
+       (default_target_globals): Initialize the builtins field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * expmed.h (alg_code, mult_cost, MULT_COST_LESS, CHEAPER_MULT_COST)
+       (algorithm, alg_hash_entry, NUM_ALG_HASH_ENTRIES, alg_hash): Moved
+       from expmed.c.
+       (target_expmed): Add x_alg_hash and x_alg_hash_used_p.
+       (alg_hash, alg_hash_used_p): New macros.
+       * expmed.c (init_expmed): Clear alg_hash if reinitializing.
+       (alg_code, mult_cost, MULT_COST_LESS, CHEAPER_MULT_COST, algorithm)
+       (alg_hash_entry, NUM_ALG_HASH_ENTRIES, alg_hash): Moved to expmed.h.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * ira-int.h (target_ira_int): Add x_max_struct_costs_size, x_init_cost,
+       x_temp_costs, x_op_costs, x_this_op_costs and x_cost_classes.
+       * ira-costs.c (max_struct_costs_size, init_cost, temp_costs, op_costs)
+       (this_op_costs, costs_classes): Redefine as macros.
+       (record_reg_classes): Don't take op_costs as a parameter.
+       (record_operand_costs): Likewise.  Update calls to record_reg_classes.
+       (scan_one_insn): Update call to record_operand_costs.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (target-globals.o): Depend on $(IRA_INT_H).
+       * ira-int.h (ira_max_nregs, ira_important_class_nums): Delete.
+       (target_ira_int): New structure.
+       (default_target_ira_int): Declare.
+       (this_target_ira_int): Declare as a variable or define as a macro.
+       (ira_reg_mode_hard_regset, ira_register_move_cost)
+       (ira_may_move_in_cost, ira_may_move_out_cost, ira_class_subset_p)
+       (ira_non_ordered_class_hard_regs, ira_class_hard_reg_index)
+       (prohibited_class_mode_regs, ira_important_classes_num)
+       (ira_important_classes, ira_reg_class_intersect)
+       (ira_reg_classes_intersect_p, ira_reg_class_super_classes)
+       (ira_reg_class_union): Redefine as macros.
+       * ira.h (target_ira): New structure.
+       (default_target_ira): Declare.
+       (this_target_ira): Declare as a variable or define as a macro.
+       (ira_available_class_regs, ira_hard_regno_cover_class)
+       (ira_reg_class_cover_size, ira_reg_class_cover, ira_class_translate)
+       (ira_reg_class_nregs, ira_memory_move_cost, ira_class_hard_regs)
+       (ira_class_hard_regs_num): Redefine as macros.
+       * ira.c (default_target_ira, default_target_ira_int): New variables.
+       (this_target_ira, this_target_ira_int): New conditional variables.
+       (ira_reg_mode_hard_regset, ira_memory_move_cost)
+       (ira_register_move_cost, ira_may_move_in_cost, ira_may_move_out_cost)
+       (ira_class_subset_p): Delete.
+       (no_unit_alloc_regs): Redefine as a macro.
+       (ira_class_hard_regs, ira_non_ordered_class_hard_regs)
+       (ira_class_hard_regs_num, ira_class_hard_reg_index)
+       (ira_available_class_regs): Delete.
+       (alloc_reg_class_subclasses): Redefine as a macro.
+       (ira_reg_class_cover_size, ira_reg_class_cover)
+       (ira_important_classes_num, ira_important_classes)
+       (ira_important_class_nums, ira_class_translate): Delete.
+       (cover_class_order): Document the variable's lifetime.
+       (reorder_important_classes): Don't set ira_important_class_nums.
+       (ira_reg_class_intersect, ira_reg_classes_intersect_p)
+       (ira_reg_class_super_classes, ira_reg_class_union)
+       (ira_hard_regno_cover_class, ira_reg_class_nregs, ira_max_nregs):
+       Delete.
+       (setup_reg_class_nregs): Don't set ira_max_regs.
+       (prohibited_class_mode_regs): Delete.
+       * target-globals.h (this_target_ira, this_target_ira_int): Declare.
+       (target_globals): Add ira and ira_int fields.
+       (restore_target_globals): Copy the ira field to this_target_ira
+       and the ira_int field to this_target_ira_int.
+       * target-globals.c: Include ira-int.h.
+       (default_target_globals): Initialize the ira and ira_int fields.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (target-globals.o): Depend on $(CFGLOOP_H).
+       * cfgloop.h (target_cfgloop): New structure.
+       (default_target_cfgloop): Declare.
+       (this_target_cfgloop): Declare as a variable or define as a macro.
+       (target_avail_regs, target_clobbered_regs, target_res_regs)
+       (target_reg_cost, target_spill_cost): Redefine as macros.
+       * cfgloopanal.c (default_target_cfgloop): New variable.
+       (this_target_cfgloop): New conditional variable.
+       (target_avail_regs, target_clobbered_regs, target_res_regs)
+       (target_reg_cost, target_spill_cost): Delete.
+       * target-globals.h (this_target_cfgloop): Declare.
+       (target_globals): Add a cfgloop field.
+       (restore_target_globals): Copy the cfgloop field to
+       this_target_cfgloop.
+       * target-globals.c: Include cfgloop.h.
+       (default_target_globals): Initialize the cfgloop field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * regs.h (target_regs): Add x_direct_load, x_direct_store and
+       x_float_extend_from_mem.
+       (direct_load, direct_store, float_extend_from_mem): New macros.
+       * expr.c (direct_load, direct_store, float_extend_from_mem): Delete.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (LIBFUNCS_H): Add $(HASHTAB_H).
+       (target-globals.o): Depend on $(LIBFUNCS_H).
+       * libfuncs.h: Include hashtab.h.
+       (libfunc_entry): Moved from optabs.c.
+       (target_libfuncs): New structure.
+       (default_target_libfuncs): Declare.
+       (this_target_libfuncs): Declare as a variable or define as a macro.
+       (libfunc_table): Redefine as a macro.
+       * optabs.c (default_target_libfuncs): New variable.
+       (this_target_libfuncs): New conditional variable.
+       (libfunc_table): Delete.
+       (libfunc_entry): Moved to optabs.h.
+       (libfunc_hash): Redefine as a macro.
+       (hash_libfunc, eq_libfunc): Fix comments.
+       (init_optabs): Use libfunc_hash to detect cases where the function
+       has already been called.  Clear the hash table instead of
+       recreating it.
+       * target-globals.h (this_target_libfuncs): Declare.
+       (target_globals): Add a libfuncs field.
+       (restore_target_globals): Copy the libfuncs field to
+       this_target_libfuncs.
+       * target-globals.c: Include libfuncs.h.
+       (default_target_globals): Initialize the libfuncs field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (LIBFUNCS_H): New variable.  Use instead of libfuncs.h
+       in all dependency lists.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (target-globals.o): Depend on $(EXPR_H) and $(OPTABS_H).
+       * optabs.h (target_optabs): New structure.
+       (default_target_optabs): Declare.
+       (this_target_optabs): Declare as a variable or define as a macro.
+       (optab_table, convert_optab_table, direct_optab_table): Redefine
+       as macros.
+       * optabs.c (default_target_optabs): New variable.
+       (this_target_optabs): New conditional variable.
+       (optab_table, convert_optab_table, direct_optab_table): Delete.
+       * target-globals.h (this_target_optabs): Declare.
+       (target_globals): Add a optabs field.
+       (restore_target_globals): Copy the optabs field to
+       this_target_optabs.
+       * target-globals.c: Include expr.h and optabs.h.
+       (default_target_globals): Initialize the optabs field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * flags.h (target_flagstate): Add x_flag_excess_precision.
+       (flag_excess_precision): Redefine as a macro.
+       * toplev.c (flag_excess_precision): Delete.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * defaults.h (MAX_MOVE_MAX, MIN_UNITS_PER_WORD): Define if not defined.
+       * libgcc2.c (MIN_UNITS_PER_WORD): Delete.
+       * hard-reg-set.h (target_hard_regs): Add x_no_caller_save_reg_set.
+       (no_caller_save_reg_set): Redefine as a macro.
+       * reload.h (target_reload): Add x_caller_save_initialized_p and
+       x_regno_save_mode.
+       (caller_save_initialized_p): Redefine as a macro.
+       * caller-save.c (caller_save_initialized_p, no_caller_save_reg_set)
+       (MAX_MOVE_MAX, MIN_UNITS_PER_WORD): Delete.
+       (regno_save_mode): Redefine as a macro.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (expmed.o, target-globals.o): Depend on expmed.h.
+       * expmed.h: New file.
+       * expmed.c (default_target_costs): New variable.
+       (this_target_costs): New conditional variable.
+       (sdiv_pow2_cheap, smod_pow2_cheap, zero_cost, add_cost, neg_cost)
+       (shift_cost, shiftadd_cost, shiftsub0_cost, shiftsub1_cost, mul_cost)
+       (sdiv_cost, udiv_cost, mul_widen_cost, mul_highpart_cost): Delete.
+       * target-globals.h (this_target_expmed): Declare.
+       (target_globals): Add a expmed field.
+       (restore_target_globals): Copy the expmed field to
+       this_target_expmed.
+       * target-globals.c: Include expmed.h.
+       (default_target_globals): Initialize the expmed field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (target-globals.o): Depend on reload.h.
+       * reload.h (target_reload): New structure.
+       (default_target_reload): Declare.
+       (this_target_reload): Declare as a variable or define as a macro.
+       (indirect_symref_ok, double_reg_address_ok): Redefine as macros.
+       * reload1.c (default_target_reload): New variable
+       (this_target_reload): New conditional variable.
+       (indirect_symref_ok, double_reg_address_ok): Delete.
+       (spill_indirect_levels): Redefine as a macro.
+       * target-globals.h (this_target_reload): Declare.
+       (target_globals): Add a reload field.
+       (restore_target_globals): Copy the reload field to
+       this_target_reload.
+       * target-globals.c: Include hard-reg-set.h.
+       (default_target_globals): Initialize the reload field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * rtl.h (target_rtl): Add x_static_reg_base_value.
+       * alias.c (static_reg_base_value): Redefine as a macro.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (reginfo.o): Don't depend on $(GGC_H) or gt-reginfo.h.
+       (GTFILES): Remove reginfo.c.
+       * rtl.h (target_rtl): Add x_top_of_stack.
+       (top_of_stack): New macro.
+       * reginfo.c: Don't include ggc.h or gt-reginfo.h.
+       (top_of_stack): Delete.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * regs.h (target_regs): Add x_hard_regs_of_mode, x_contains_reg_of_mode,
+       x_move_cost, x_may_move_in_cost, x_may_move_out_cost and
+       x_last_mode_for_init_move_cost.
+       (have_regs_of_mode, contains_reg_of_mode, move_cost)
+       (may_move_in_cost, may_move_out_cost): Redefine as macros.
+       * reginfo.c (have_regs_of_mode, contains_reg_of_mode, move_cost)
+       (may_move_in_cost, may_move_out_cost): Delete.
+       (last_mode_for_init_move_cost): Redefine as a macro.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * hard-reg-set.h (target_hard_regs): New structure.
+       (default_target_hard_regs): Declare.
+       (this_target_hard_regs): Declare as a variable or define as a macro.
+       (fixed_regs, fixed_reg_set, call_used_regs, call_really_used_regs)
+       (call_used_reg_set, call_fixed_reg_set, regs_invalidated_by_call)
+       (reg_alloc_order, inv_reg_alloc_order, reg_class_contents)
+       (reg_class_size, reg_class_subclasses, reg_class_subunion)
+       (reg_class_superunion, reg_names): Redefine as macros.
+       * reginfo.c (fixed_regs, fixed_reg_set, call_used_regs)
+       (call_used_reg_set, call_really_used_regs, call_fixed_reg_set)
+       (regs_invalidated_by_call, reg_alloc_order, inv_reg_alloc_order)
+       (reg_class_contents, reg_class_size, reg_class_subclasses)
+       (reg_class_subunion, reg_class_superunion, reg_names): Delete.
+       (default_target_hard_regs): New variable
+       (this_target_hard_regs, initial_call_really_used_regs)
+       (initial_reg_alloc_order): New conditional variables.
+       (initial_reg_names): New variable.
+       (init_reg_sets): Assert that initial_call_really_used_regs,
+       initial_reg_alloc_order and initial_reg_names
+       are all the same size as their variable counterparts.  Use them to
+       initialize those counterparts.
+       * target-globals.h (this_target_hard_regs): Declare.
+       (target_globals): Add a hard_regs field.
+       (restore_target_globals): Copy the hard_regs field to
+       this_target_hard_regs.
+       * target-globals.c: Include hard-reg-set.h.
+       (default_target_globals): Initialize the hard_regs field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (target-globals.o): Depend on $(RTL_H).
+       * rtl.h: (target_rtl): New structure.
+       (default_target_rtl): Declare.
+       (this_target_rtl): Declare as a variable or define as a macro.
+       (global_rtl, pic_offset_table_rtx, return_address_pointer_rtx):
+       Redefine as macros.
+       * emit-rtl.c (default_target_rtl): New variable.
+       (this_target_rtl): New conditional variable.
+       (global_rtl, static_regno_reg_rtx, pic_offset_table_rtx)
+       (return_address_pointer_rtx): Delete.
+       (initial_regno_reg_rtx): New macro.
+       (init_emit): Use initial_regno_reg_rtx instead of static_regno_reg_rtx.
+       (init_emit_regs): Likewise.
+       * target-globals.h (this_target_rtl): Declare.
+       (target_globals): Add a rtl field.
+       (restore_target_globals): Copy the rtl field to this_target_rtl.
+       * target-globals.c: Include rtl.h.
+       (default_target_globals): Initialize the rtl field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * Makefile.in (target-globals.o): Depend on $(REGS_H).
+       * regs.h (target_reg_modes): New structure.
+       (default_target_reg_modes): Declare.
+       (this_target_reg_modes): Declare as a variable or define as a macro.
+       (hard_regno_nregs, reg_raw_mode): Redefine as macros.
+       * reginfo.c (default_target_reg_modes): New variable.
+       (this_target_reg_modes): New conditional variable.
+       (hard_regno_nregs, reg_raw_mode): Delete.
+       * target-globals.h (this_target_regs): Declare.
+       (target_globals): Add a regs field.
+       (restore_target_globals): Copy the regs field to this_target_regs.
+       * target-globals.c: Include regs.h.
+       (default_target_globals): Initialize the regs field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * doc/tm.texi.in (SWITCHABLE_TARGET): Document.
+       * doc/tm.texi: Regenerate.
+       * Makefile.in (OBJS-common): Add target-globals.o.
+       (gtype-desc.o): Depend on $(IPA_PROP_H), $(LTO_STREAMER_H)
+       and target-globals.h.
+       (target-globals.o): New rule.
+       (GTFILES): Include $(srcdir)/target-globals.h.
+       * defaults.h (SWITCHABLE_TARGET): Define.
+       * gengtype.c (open_base_files): Add target-globals.h to the
+       list of includes.
+       * target-globals.h: New file.
+       * target-globals.c: Likewise.
+
+       * Makefile.in (target-globals.o): Depend on $(FLAGS_H).
+       * flags.h (target_flag_state): New structure.
+       (default_target_flag_state): Declare.
+       (this_target_flag_state): Declare as a variable or define as a macro.
+       (align_loops_log): Redefine as a macro.
+       (align_loops_max_skip, align_jumps_log): Likewise.
+       (align_jumps_max_skip, align_labels_log): Likewise.
+       (align_labels_max_skip, align_functions_log): Likewise.
+       * toplev.c (default_target_flag_state): New variable.
+       (this_target_flag_state): New conditional variable.
+       (align_loops_log): Delete.
+       (align_loops_max_skip, align_jumps_log): Likewise.
+       (align_jumps_max_skip, align_labels_log): Likewise.
+       (align_labels_max_skip, align_functions_log): Likewise.
+       * target-globals.h (this_target_flag_state): Declare.
+       (target_globals): Add a flag_state field.
+       (restore_target_globals): Copy the flag_state field to
+       this_target_flag_state.
+       * target-globals.c: Include flags.h.
+       (default_target_globals): Initialize the flag_state field.
+       (save_target_globals): Likewise.
+
+2010-07-12  Jie Zhang  <jie@codesourcery.com>
+
+       * postreload.c (reg_symbol_ref[]): New.
+       (move2add_use_add2_insn): New.
+       (move2add_use_add3_insn): New.
+       (reload_cse_move2add): Handle SYMBOL + OFFSET case.
+       (move2add_note_store): Likewise.
+
+2010-07-12  Joern Rennecke  <joern.rennecke@embecosm.com>
+
+       PR rtl-optimization/44752
+       * genautomata.c (main): Don't emit an empty file even if there
+       is no automaton.
+
+2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config/i386/i386.c (ix86_sol10_return_in_memory): Rename to
+       ix86_solaris_return_in_memory.
+       * config/i386-protos.h: Reflect this.
+       * config/i386/vx-common.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
+       * config/i386/sol2-10.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
+       Move ...
+       * config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): ... here.
+
+2010-07-12  Jie Zhang  <jie@codesourcery.com>
+
+       * config/arm/arm.c (arm_get_frame_offsets): Don't use r3 to
+       align the stack when it's going to be saved.
+
+2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR pch/14940
+       * config/host-solaris.c (mmap_fixed): New function.
+       (sol_gt_pch_get_address): Use it.
+       (sol_gt_pch_use_address): Likewise.
+
+2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
+       pentiumpro on Solaris 8 and 9/x86.
+       * doc/install.texi (Specific, i?86-*-solaris2.[89]): Recommend GNU as.
+       Document SSE/SSE2 support.
+       * doc/sourcebuild.texi (Effective-Target Keywords): Document sse.
+
+2010-07-12  Andi Kleen  <ak@linux.intel.com>
+
+       * lto-symtab.c (lto_symtab_merge_decls_1): Use fatal_error
+       instead of gcc_assert to print better error message for multiple
+       prevailing defs.
+
+2010-07-12  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.c (ix86_asm_output_function_label): Change format
+       string placeholder from 0x%x to %#x.
+       (ix86_code_end): Use putc to output '\n'.
+       (ix86_print_operand) <case ';'>: Use putc to output ';'.
+
+2010-07-11  Kai Tietz  <kai.tietz@onevision.com>
+
+       * config/i386/winnt.c (i386_pe_file_end): Quote symbol name
+       in directive -export.
+
+2010-07-10  Anatoly Sokolov  <aesok@post.ru>
+
+       * reginfo.h (reg_classes_intersect_p): Change arguments type to
+       reg_class_t.
+       * rtl.h (reg_classes_intersect_p): Adjust prototype.
+
+       * config/rs6000/rs6000.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
+       Remove macros.
+       * config/rs6000/rs6000-protos.h (rs6000_register_move_cost,
+       rs6000_memory_move_cost): Remove
+       * config/rs6000/rs6000.c (TARGET_REGISTER_MOVE_COST,
+       TARGET_MEMORY_MOVE_COST): Define.
+       (rs6000_register_move_cost): Make static. Change arguments type from
+       enum reg_class to reg_class_t. Adjust rs6000_memory_move_cost calls.
+       (rs6000_memory_move_cost): Make static. Change arguments type from
+       'enum reg_class' to reg_class_t.
+
+2010-07-10  Sandra Loosemore  <sandra@codesourcery.com>
+
+       PR middle-end/42505
+       * tree-inline.c (estimate_num_insns): Refactor builtin complexity
+       lookup code into....
+       * builtins.c (is_simple_builtin, is_inexpensive_builtin): ...these
+       new functions.
+       * tree.h (is_simple_builtin, is_inexpensive_builtin): Declare.
+       * cfgloopanal.c (target_clobbered_regs): Define.
+       (init_set_costs): Initialize target_clobbered_regs.
+       (estimate_reg_pressure_cost): Add call_p argument.  When true,
+       adjust the number of available registers to exclude the
+       call-clobbered registers.
+       * cfgloop.h (target_clobbered_regs): Declare.
+       (estimate_reg_pressure_cost): Adjust declaration.
+       * tree-ssa-loop-ivopts.c (struct ivopts_data): Add body_includes_call.
+       (ivopts_global_cost_for_size): Pass it to estimate_reg_pressure_cost.
+       (determine_set_costs): Dump target_clobbered_regs.
+       (loop_body_includes_call): New function.
+       (tree_ssa_iv_optimize_loop): Use it to initialize new field.
+       * loop-invariant.c (gain_for_invariant): Adjust arguments to pass
+       call_p flag through.
+       (best_gain_for_invariant): Likewise.
+       (find_invariants_to_move): Likewise.
+       (move_single_loop_invariants): Likewise, using already-computed
+       has_call field.
+
+2010-07-10  Richard Guenther  <rguenther@suse.de>
+           Joern Rennecke  <joern.rennecke@embecosm.com>
+
+       PR debug/44832
+       * tree-ssa-live.c (mark_all_vars_used_1): Set TREE_USED for LABEL_DECL.
+       (remove_unused_scope_block_p): Don't drop TREE_USED LABEL_DECLs
+       unless they have DECL_IGNORED_P set.
+
+2010-07-10  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/44889
+       * gimple.c (gimple_fixup_complete_and_incomplete_subtype_p): New
+       helper function.
+       (gimple_types_compatible_p): Similar to pointed-to
+       types allow and merge a mix of complete and incomplete aggregate.
+       Use gimple_fixup_complete_and_incomplete_subtype_p for that.
+       (iterative_hash_gimple_type): Adjust for that.
+
+2010-07-10  Richard Sandiford  <r.sandiford@uk.ibm.com>
+
+       * tree.h (DECL_REPLACEABLE_P): Strengthen check for weak symbols.
+
+2010-07-10  Iain Sandoe  <iains@gcc.gnu.org>
+
+       PR objc/44140
+       * config/darwin.c (output_objc_section_asm_op): Save and restore
+       section when outputting ObjC section list.
+
+2010-07-09  Jan Hubicka  <jh@suse.cz>
+
+       * lto-streamer-out.c (produce_symtab): Do not write alias
+       cgraph/varpool nodes.
+
+2010-07-09  Jan Hubicka  <jh@suse.cz>
+
+       * tree-inline.c (declare_return_variable): Fix ICE while
+       inlining DECL_BY_VALUE function not in SSA form
+
 2010-07-09  Changpeng Fang  <changpeng.fang@amd.com>
 
        PR tree-optimization/44576
 
 2010-07-09  Bernd Schmidt  <bernds@codesourcery.com>
 
-       * reload.c (find_reloads): Don't clear badop if we have a
-       winreg alternative, but not win, and the class only has fixed
-       regs.
+       * reload.c (find_reloads): Don't clear badop if we have a winreg
+       alternative, but not win, and the class only has fixed regs.
        * hard-reg-set.h (class_only_fixed_regs): Declare.
        * reginfo.c (class_only_fixed_regs): New array.
        (init_reg_sets_1): Initialize it.