OSDN Git Service

* doc/invoke.texi (IA-64 Options): Fix typo.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 8315dac..633bc6e 100644 (file)
@@ -1,3 +1,198 @@
+2009-06-01  Nick Clifton  <nickc@redhat.com>
+
+       * doc/invoke.texi (IA-64 Options): Fix typo.
+
+2009-06-01  Ira Rosen  <irar@il.ibm.com>
+
+       PR tree-optimization/39129
+       * tree-vect-loop-manip.c (conservative_cost_threshold): Change the 
+       printed message.
+       (vect_do_peeling_for_loop_bound): Use 
+       LOOP_REQUIRES_VERSIONING_FOR_ALIGNMENT and
+       LOOP_REQUIRES_VERSIONING_FOR_ALIAS macros.
+       (vect_loop_versioning): Likewise.
+       (vect_create_cond_for_alias_checks): Fix indentation.
+       * tree-vectorizer.h (struct _loop_vec_info): Fix indentation of the 
+       macros.
+       (LOOP_REQUIRES_VERSIONING_FOR_ALIGNMENT): Define.
+       (LOOP_REQUIRES_VERSIONING_FOR_ALIAS): Likewise.
+       * tree-vect-loop.c (vect_analyze_loop_form): Change "too many BBs" to 
+       "control flow in loop".
+       (vect_estimate_min_profitable_iters): Use 
+       LOOP_REQUIRES_VERSIONING_FOR_ALIGNMENT and
+       LOOP_REQUIRES_VERSIONING_FOR_ALIAS macros.
+       * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Likewise.
+       (vect_create_data_ref_ptr): Don't mention array dimension in printing.
+       * tree-vect-stmts.c (vectorizable_store): Replace the check that the 
+       statement belongs to a group of strided accesses with the exact code 
+       check.
+       (vectorizable_load): Likewise.
+       * tree-vect-slp.c (vect_analyze_slp_instance): Spell out "basic block".
+       (vect_slp_analyze_bb, vect_slp_transform_bb): Likewise.
+
+2009-06-01  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       * config/freebsd-stdint.h: New file.
+       * config.gcc (*-*-freebsd): Set use_gcc_stdint=wrap.
+       Add freebsd-stdint.h to tm_file.
+
+2009-06-01  Richard Earnshaw  <rearnsha@arm.com>
+
+       * arm/thumb2.md (thumb2_zero_extendhidi2): New insn and split.
+       (thumb2_extendhidi2): Likewise.
+
+2009-05-31  Ian Lance Taylor  <iant@google.com>
+
+       * regstat.c (regstat_n_sets_and_refs): Remove duplicate
+       definition.
+
+2009-05-31  Ian Lance Taylor  <iant@google.com>
+
+       * Makefile.in (except.o): Depend upon gt-except.h, not
+       gt-$(EXCEPT_H).
+       (ipa-cp.o): Depend upon $(FIBHEAP_H) and $(PARAMS_H).
+       (ipa-reference.o): Depend upon gt-ipa-reference.h.
+
+2009-05-31  Jason Merrill  <jason@redhat.com>
+
+       * tree-pretty-print.c (print_call_name): Take the callee, not the
+       call itself.  Make non-static.  Use dump_function_name for
+       functions.
+       (dump_generic_node): Adjust.
+       * diagnostic.h: Declare print_call_name.
+       * gimple-pretty-print.c (dump_gimple_call): Use it.
+
+2009-05-31  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.md (ashldi3_std): New define_expand.
+       (ashldi3): Use it.
+
+2009-05-31  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       PR target/40313
+       * config/sh/sh.c: Include debug.h.
+       (sh_expand_epilogue): Emit a blockage insn before the frame
+       pointer adjustment also when dwarf2out_do_frame returns true.
+
+2009-05-31  Richard Earnshaw  <rearnsha@arm.com>
+
+       * arm/thumb2.md (thumb2_extendsidi2): Add a split sub-pattern.
+       (thumb2_extendqidi2): New pattern.
+
+2009-05-31  Ira Rosen  <irar@il.ibm.com>
+
+       * tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): Don't
+       mark phis for renaming.
+       * tree-vectorizer.c (vect_memsyms_to_rename): Remove.
+       (vectorize_loops): Don't allocate and free vect_memsyms_to_rename.
+       Call mark_sym_for_renaming.
+       * tree-vectorizer.h (vect_memsyms_to_rename): Remove.
+       * tree-vect-loop.c (vect_transform_loop): Remove vect_memsyms_to_rename
+       initialization and a call to mark_set_for_renaming.
+
+2009-05-31  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/40304
+       * config/i386/i386.c (pro_epilogue_adjust_stack): Mark insns
+       frame related even if !set_cfa && style < 0.
+
+2009-05-30  Kai Tietz  <kai.tietz@onevision.com>
+
+       * config/i386/mingw-tls.c: New file.
+       * config/i386/t-gthr-win32 (LIB2FUNCS_EXTRA): Add
+       mingw-tls.c file.
+       * gthr-win32.h (MINGW32_SUPPORTS_MT_EH): Define
+       it for targets defining _WIN32 but not __CYGWIN__.
+
+2009-05-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * configure.ac: Add MPC support.
+       
+       * config.in, configure: Regenerate.     
+
+2009-05-29  Richard Henderson  <rth@redhat.com>
+
+       * cfgcleanup.c (try_crossjump_to_edge): Only skip past
+       NOTE_INSN_BASIC_BLOCK.
+       * cfglayout.c (duplicate_insn_chain): Copy epilogue insn marks.
+       Duplicate NOTE_INSN_EPILOGUE_BEG notes.
+       * cfgrtl.c (can_delete_note_p): Allow NOTE_INSN_EPILOGUE_BEG
+       to be deleted.
+       * dwarf2out.c (struct cfa_loc): Change indirect field to bitfield,
+       add in_use field.
+       (add_cfi): Disable check redefining cfa away from drap.
+       (lookup_cfa_1): Add remember argument; handle remember/restore.
+       (lookup_cfa): Pass remember argument.
+       (cfa_remember): New.
+       (compute_barrier_args_size_1): Remove sibcall check.
+       (dwarf2out_frame_debug_def_cfa): New.
+       (dwarf2out_frame_debug_adjust_cfa): New.
+       (dwarf2out_frame_debug_cfa_offset): New.
+       (dwarf2out_frame_debug_cfa_register): New.
+       (dwarf2out_frame_debug_cfa_restore): New.
+       (dwarf2out_frame_debug): Handle REG_CFA_* notes.
+       (dwarf2out_begin_epilogue): New.
+       (dwarf2out_frame_debug_restore_state): New.
+       (dw_cfi_oprnd1_desc): Handle DW_CFA_remember_state,
+       DW_CFA_restore_state.
+       (output_cfi_directive): Likewise.
+       (convert_cfa_to_fb_loc_list): Likewise.
+       (dw_cfi_oprnd1_desc): Handle DW_CFA_restore.
+       * dwarf2out.h: Update.
+       * emit-rtl.c (try_split): Don't split RTX_FRAME_RELATED_P.
+       (copy_insn_1): Early out for null.
+       * final.c (final_scan_insn): Call dwarf2out_begin_epilogue
+       and dwarf2out_frame_debug_restore_state.
+       * function.c (prologue, epilogue, sibcall_epilogue): Remove.
+       (prologue_insn_hash, epilogue_insn_hash): New.
+       (free_after_compilation): Adjust freeing accordingly.
+       (record_insns): Create hash table if needed; push insns into
+       hash instead of array.
+       (maybe_copy_epilogue_insn): New.
+       (contains): Search hash table instead of array.
+       (sibcall_epilogue_contains): Remove.
+       (thread_prologue_and_epilogue_insns): Split eh_return insns
+       and mark them as epilogues.
+       (reposition_prologue_and_epilogue_notes): Rewrite epilogue
+       scanning in terms of basic blocks.
+       * insn-notes.def (CFA_RESTORE_STATE): New.
+       * jump.c (returnjump_p_1): Accept EH_RETURN.
+       (eh_returnjump_p_1, eh_returnjump_p): New.
+       * reg-notes.def (CFA_DEF_CFA, CFA_ADJUST_CFA, CFA_OFFSET,
+       CFA_REGISTER, CFA_RESTORE): New.
+       * rtl.def (EH_RETURN): New.
+       * rtl.h (eh_returnjump_p, maybe_copy_epilogue_insn): Declare.
+
+       * config/bfin/bfin.md (UNSPEC_VOLATILE_EH_RETURN): Remove.
+       (eh_return_internal): Use eh_return rtx; split w/ epilogue.
+
+       * config/i386/i386.c (gen_push): Update cfa state.
+       (pro_epilogue_adjust_stack): Add set_cfa argument.  When true,
+       add a CFA_ADJUST_CFA note.
+       (ix86_dwarf_handle_frame_unspec): Remove.
+       (ix86_expand_prologue): Update cfa state.
+       (ix86_emit_restore_reg_using_pop): New.
+       (ix86_emit_restore_regs_using_pop): New.
+       (ix86_emit_leave): New.
+       (ix86_emit_restore_regs_using_mov): Add CFA_RESTORE notes.
+       (ix86_expand_epilogue): Add notes for unwinding the epilogue.
+       * config/i386/i386.h (struct machine_cfa_state): New.
+       (ix86_cfa_state): New.
+       * config/i386/i386.md (UNSPEC_EH_RETURN): Remove.
+       (eh_return_internal): Merge from eh_return_<mode>,
+       use eh_return rtx, split w/ epilogue.
+
+2009-05-29  Ian Lance Taylor  <iant@google.com>
+
+       * builtins.c (validate_gimple_arglist): Don't use va_arg with
+       enum type.
+       * calls.c (emit_library_call_value_1): Likewise.
+
+       * c-typeck.c (c_build_va_arg): New function.
+       * c-tree.h (c_build_va_arg): Declare.
+       * c-parser.c (c_parser_postfix_expression): Call c_build_va_arg
+       instead of build_va_arg.
+
 2009-05-29  Eric Botcazou  <ebotcazou@adacore.com>
 
        * tree-ssa-loop-ivopts.c (strip_offset_1) <MULT_EXPR>: New case.
        (Interacting with the GCC Garbage Collector): Added new section.
        (Giving information about a plugin): Added new section for
        PLUGIN_INFO.
-       * testsuite/gcc.dg/plugin/plugin.exp: Added ggcplug.c test plugin
-       with ggcplug-test-1.c for testing PLUGIN_GGC_MARKING etc...
-       * testsuite/gcc.dg/plugin/ggcplug-test-1.c: Added new file.
-       * testsuite/gcc.dg/plugin/ggcplug.c: Added new file.
        * ggc.h (ggc_register_root_tab): Added declaration.
        * gcc-plugin.h (PLUGIN_GGC_START, PLUGIN_GGC_MARKING)
        (PLUGIN_GGC_END, PLUGIN_REGISTER_GGC_ROOTS): Added new events.