OSDN Git Service

* config/rs6000/rs6000.c (rs6000_output_function_epilogue): Update
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 068f14b..f225874 100644 (file)
+2008-04-08  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Update
+       GNU Fortran language string.
+
+2008-04-08  Rafael Espindola  <espindola@google.com>
+
+       * fold-canst.c (tree_call_nonnegative_warnv_p): New.
+       (tree_invalid_nonnegative_warnv_p): Use tree_call_nonnegative_warnv_p.
+       * tree.h (tree_call_nonnegative_warnv_p): New.
+
+2008-04-08  Jan Hubicka  <jh@suse.cz>
+
+       * function.c (free_after_compilation): Clear out regno_reg_rtx
+       pointer.
+
+2008-04-08  Peter Bergner  <bergner@vnet.ibm.com>
+
+       Revert
+       2008-04-07  Peter Bergner  <bergner@vnet.ibm.com>
+
+       PR middle-end/PR28690
+       * rtlanal.c: (commutative_operand_precedence): Give SYMBOL_REF's the
+       same precedence as REG_POINTER and MEM_POINTER operands.
+
+2008-04-08  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/35834
+       * tree-ssa-address.c (create_mem_ref): Use POINTER_PLUS_EXPR
+       for adding index to base.
+
+2008-04-08  Kai Tietz  <kai.tietz@onevision.com>
+
+       * config/i386/mingw32.h (ENABLE_EXECUTE_STACK): New.
+       (MINGW_ENABLE_EXECUTE_STACK): New.
+       (IN_LIBGCC2): For libgcc include windows.h file for
+       function declarations.
+
+2008-04-08  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/cris.c (cris_address_cost): For a PLUS, swap tem1
+       and tem2 if tem1 is not a REG or MULT.
+
+2008-04-08  Jan Hubicka  <jh@suse.cz>
+
+       * function.h (incomming_args): Break out of struct function.
+       (function_subsections): Break out of struct function.
+       (rtl_data): Add args, subsections fields. Break out outgoing_args_size,
+       return_rtx and hard_reg_initial_vals from struct function.
+       Kill inl_max_label_num.
+       (current_function_pops_args, current_function_args_info,
+       current_function_args_size, current_function_args_size,
+       current_function_pretend_args_size,
+       current_function_outgoing_args_size,
+       current_function_internal_arg_pointer, current_function_return_rtx):
+       Kill compatibility accestor macros.
+       * builtins.c (expand_builtin_apply_args_1): Update.
+       (expand_builtin_next_arg): Update.
+       * df-scan.c (df_get_call_refs): Update.
+       * dbxout.c (dbxout_function_end): Update.
+       * dwarf2out.c (dwarf2out_switch_text_section): Update.
+       (output_line_info): Update.
+       (secname_for_decl): Update.
+       (dwarf2out_var_location): Update.
+       * function.c (free_after_compilation): Update.
+       (assign_parm_find_stack_rtl): Update.
+       (assign_parms): Update.
+       (expand_dummy_function_end): Update.
+       (expand_function_end): Update.
+       * calls.c (mem_overlaps_already_clobbered_arg_p): Update.
+       (expand_call): Update.
+       (emit_library_call_value_1): Update.
+       (store_one_arg): Update.
+       * varasm.c (initialize_cold_section_name): Update.
+       (unlikely_text_section): Update.
+       (unlikely_text_section_p): Update.
+       (assemble_start_function): Update.
+       (assemble_end_function): Update.
+       (default_section_type_flags): Update.
+       (switch_to_section): Update.
+       * integrate.c (set_decl_abstract_flags): Update.
+       (get_hard_reg_initial_val): Update.
+       (has_hard_reg_initial_val): Update.
+       (allocate_initial_values): Update.
+       * resource.c (init_resource_info): Update.
+       * config/alpha/alpha.c (NUM_ARGS): Update.
+       (direct_return): Update.
+       (alpha_va_start): Update.
+       (alpha_sa_size): Update.
+       (alpha_initial_elimination_offset): Update.
+       (alpha_expand_prologue): Update.
+       (alpha_start_function): Update.
+       (alpha_expand_epilogue): Update.
+       (unicosmk_initial_elimination_offset):
+       * config/alpha/alpha.md (call expander): Update.
+       * config/s390/s390.c (s390_register_info): Update.
+       (s390_register_info): Update.
+       (s390_frame_info): Update.
+       (s390_initial_elimination_offset): Update.
+       (s390_build_builtin_va_list): Update.
+       (s390_va_start): Update.
+       * config/spu/spu.c (direct_return): Update.
+       (spu_expand_prologue): Update.
+       (spu_initial_elimination_offset): Update.
+       (spu_build_builtin_va_list): Update.
+       (spu_va_start): Update.
+       * config/sparc/sparc.c (sparc_init_modes): Update.
+       (sparc_compute_frame_size): Update.
+       (function_value): Update.
+       * config/m32r/m32r.c (m32r_compute_frame_size): Update.
+       * config/i386/i386.md (return expander): Update.
+       * config/i386/i386.c (ix86_va_start): Update.
+       (ix86_can_use_return_insn_p): Update.
+       (ix86_compute_frame_layout): Update.
+       (ix86_expand_epilogue): Update.
+       * config/sh/sh.c (output_stack_adjust): Update.
+       (calc_live_regs): Update.
+       (sh_expand_prologue): Update.
+       (sh_builtin_saveregs): Update.
+       (sh_va_start): Update.
+       (initial_elimination_offset): Update.
+       (sh_allocate_initial_value): Update.
+       (sh_function_ok_for_sibcall): Update.
+       (sh_get_pr_initial_val): Update.
+       * config/sh/sh.md (return expander): Update.
+       * config/avr/avr.c (frame_pointer_required_p): UPdate.
+       * config/crx/crx.c (crx_compute_frame): UPdate.
+       (crx_initial_elimination_offset): UPdate.
+       * config/xtensa/xtensa.c (compute_frame_size): Update
+       (xtensa_builtin_saveregs): Update.
+       (xtensa_va_start): Update.
+       (order_regs_for_local_alloc): Update.
+       * config/stormy16/stormy16.c (xstormy16_compute_stack_layout): Update.
+       (xstormy16_expand_builtin_va_start): Update.
+       * config/fr30/fr30.c (fr30_compute_frame_size): Update.
+       * config/m68hc11/m68hc11.md (return expanders): Update.
+       * config/m68hc11/m68hc11.c (expand_prologue): Update.
+       (expand_epilogue): Update.
+       * config/cris/cris.c (cris_initial_frame_pointer_offset): Update.
+       (cris_simple_epilogue): Update.
+       (cris_expand_prologue): Update.
+       (cris_expand_epilogue): Update.
+       * config/iq2000/iq2000.c (iq2000_va_start): Update.
+       (compute_frame_size): Update.
+       * config/mt/mt.c (mt_compute_frame_size): Update.
+       * config/mn10300/mn10300.c (expand_prologue): Update.
+       (expand_epilogue): Update.
+       (initial_offset): Update.
+       (mn10300_builtin_saveregs):
+       * config/mn10300/mn10300.md (return expander): Update.
+       * config/ia64/ia64.c (ia64_compute_frame_size): Update.
+       (ia64_initial_elimination_offset): Update.
+       (ia64_initial_elimination_offset): Update.
+       (ia64_expand_prologue): Update.
+       * config/m68k/m68k.md (return expander): Update.
+       * config/rs6000/rs6000.c (rs6000_va_start): Update.
+       (rs6000_stack_info): Update.
+       * config/mcore/mcore.c (layout_mcore_frame): Update.
+       (mcore_expand_prolog): Update.
+       * config/arc/arc.c (arc_compute_frame_size): Update.
+       * config/score/score3.c (score3_compute_frame_size): Update.
+       * config/score/score7.c (score7_compute_frame_size): Update.
+       * config/arm/arm.c (use_return_insn): Update.
+       (thumb_find_work_register): Update.
+       (arm_compute_save_reg_mask): Update.
+       (arm_output_function_prologue): Update.
+       (arm_output_epilogue): Update.
+       (arm_size_return_regs): Update.
+       (arm_get_frame_offsets): Update.
+       (arm_expand_prologue): Update.
+       (thumb_exit): Update.
+       (thumb_unexpanded_epilogue): Update.
+       (thumb1_output_function_prologue): Update.
+       * config/pa/pa.md (return expander): Update.
+       * config/pa/pa.c (compute_frame_size): Update.
+       (hppa_builtin_saveregs): Update.
+       * config/mips/mips.c (mips_va_start): Update.
+       (mips16_build_function_stub): Update.
+       (mips_compute_frame_info): Update.
+       (mips_restore_gp): Update.
+       (mips_output_function_prologue): Update.
+       (mips_expand_prologue): Update.
+       * config/v850/v850.c (compute_frame_size): Update.
+       (expand_prologue): * config/mmix/mmix.c (along): update.
+       (mmix_initial_elimination_offset): update.
+       (mmix_reorg): update.
+       (mmix_use_simple_return): update.
+       (mmix_expand_prologue): update.
+       (mmix_expand_epilogue): Update.
+       * config/bfin/bfin.c (bfin_initial_elimination_offset): Update.
+       (emit_link_insn): Update.
+
+2008-04-08  Anatoly Sokolov <aesok@post.ru>
+
+       * config/avr/avr.h (TARGET_CPU_CPP_BUILTINS): Define 
+       __AVR_HAVE_EIJMP_EICALL__ macro if device have EIJMP and EICALL 
+       instructions.
+       * config/avr/avr.c (avr_mcu_types): Set AVR31 architecture for 
+       atmega103 device.
+
+2008-04-07  Jan Hubicka  <jh@suse.cz>
+
+       * function.h (rtl): Rename to x_rtl.
+       (crtl): New define.
+       (return_label, naked_return_label, stack_slot_list, parm_birth_insn,
+       frame_offset, stack_check_probe_note, arg_pointer_save_area,
+       used_temp_slots avail_temp_slots, temp_slot_level,
+       nonlocal_goto_handler_labels): Update accesstors.
+       (rtl): New global variable.
+       (struct function): Move some fileds to rtl_data.
+       (get_arg_pointer_save_area): Update prototype.
+       * builtins.c (expand_builtin_setjmp_receiver): Update call of
+       get_arg_pointer_save_area.
+       * expr.c (init_expr): Update
+       * function.c (get_frame_size): Update
+       (assign_stack_local): Update
+       (expand_function_end): Update.
+       (get_art_pointer_save_area): Update
+       * function.h 
+       * emit-rtl.c (rtl): Declare.
+       (regno_reg_rtx): Declare.
+       (first_insn, last_insn, cur_insn_uid, last_location, first_label_num):
+       Update.
+       (gen_reg_rtx): Update.
+       * varasm.c (n_deferred_constatns): Update accestor.
+       (init_varasm_status): Do not allocate varasm_status.
+       (force_const_mem, get_pool_size, output_constant_pool): Update.
+       * stmt.c (force_label_rtx): Do not use x_ prefixes.
+       (expand_nl_goto_receiver): Update get_arg_pointer_save_area.
+       * m32c/m32.c (m32c_leaf_function_p, m32c_function_needs_enter): Update.
+       * sparc/sparc.h (INIT_EXPANDERS): Update.
+       * ia64/ia64.h (INIT_EXPANDERS): Update.
+
+2008-04-07  James E. Wilson  <wilson@tuliptree.org>
+
+       * reload.c (push_secondary_reload): Add missing break to for loop.
+
+2008-04-07  Peter Bergner  <bergner@vnet.ibm.com>
+
+       PR middle-end/PR28690
+       * rtlanal.c: Update copyright years.
+       (commutative_operand_precedence): Give SYMBOL_REF's the same precedence
+       as REG_POINTER and MEM_POINTER operands.
+       * emit-rtl.c (gen_reg_rtx_and_attrs): New function.
+       (set_reg_attrs_from_value): Call mark_reg_pointer as appropriate.
+       * rtl.h (gen_reg_rtx_and_attrs): Add prototype for new function.
+       * gcse.c: Update copyright years.
+       (pre_delete): Call gen_reg_rtx_and_attrs.
+       (hoist_code): Likewise.
+       (build_store_vectors): Likewise.
+       (delete_store): Likewise.
+       * loop-invariant.c (move_invariant_reg): Likewise.
+       Update copyright years.
+
+2008-04-07  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md ("*sse_prologue_save_insn"): Use braced output
+       control string instead of quoted.
+
 2008-04-07  Kenneth Zadeck <zadeck@naturalbridge.com>
 
-       doc/rtl.texi: Rewrite of subreg section.
-       
+       doc/rtl.texi: Rewrite of subreg section.
+
 2008-04-07  Kai Tietz  <kai.tietz@onevision.com>
 
-        PR/35842
-        * config/i386/i386.c (legitimize_pic_address): Add treating
-        of dllimport SYM_REF's.
-        (legitimize_dllimport_symbol): Add prototype.
+       PR/35842
+       * config/i386/i386.c (legitimize_pic_address): Add treating
+       of dllimport SYM_REF's.
+       (legitimize_dllimport_symbol): Add prototype.
 
 2008-04-07  Eric Botcazou  <ebotcazou@adacore.com>
 
 
        * config/mips/mips.md (any_gt, any_ge, any_lt, any_le): New code
        iterators.
-       (u): Add attribute values for gt, gtu, ge, geu, lt, ltu, le and
-       leu.
+       (u): Add attribute values for gt, gtu, ge, geu, lt, ltu, le and leu.
        (sgt<u>): Merge sgt and sgtu into new expander.
        (sgt, sgtu): Remove expanders.
-       (*sgt<u>_<mode>): Merge *sgt_<mode> and *sgtu_<mode> into new
-       pattern.
+       (*sgt<u>_<mode>): Merge *sgt_<mode> and *sgtu_<mode> into new pattern.
        (*sgt_<mode>, *sgtu_<mode>): Remove patterns.
        (*sgt<u>_<mode>_mips16): Merge *sgt_<mode>_mips16 and
        *sgtu_<mode>_mips16 into new pattern.
        (*sge_<mode>, second *sge_<mode>): Remove patterns.
        (slt<u>): Merge slt and sltu into new expander.
        (slt, sltu): Remove expanders.
-       (*slt<u>_<mode>): Merge *slt_<mode> and *sltu_<mode> into new
-       pattern.
+       (*slt<u>_<mode>): Merge *slt_<mode> and *sltu_<mode> into new pattern.
        (*slt_<mode>, *sltu_<mode>): Remove patterns.
        (*slt<u>_<mode>_mips16): Merge *slt_<mode>_mips16 and
        *sltu_<mode>_mips16 into new pattern.
        (*slt_<mode>_mips16, *sltu_<mode>_mips16): Remove patterns.
        (sle<u>): Merge sle and sleu into new expander.
        (sle, sleu): Remove expanders.
-       (*sle<u>_<mode>): Merge *sle_<mode> and *sleu_<mode> into new
-       pattern.
+       (*sle<u>_<mode>): Merge *sle_<mode> and *sleu_<mode> into new pattern.
        (*sle_<mode>, *sleu_<mode>): Remove patterns.
        (*sle<u>_<mode>_mips16): Merge *sle_<mode>_mips16 and
        *sleu_<mode>_mips16 into new pattern.