OSDN Git Service

gcc/
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 04d61c6..bd3cc25 100644 (file)
@@ -1,3 +1,173 @@
+2009-09-14  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/bfin.c (bfin_longcall_p): Don't use short calls for weak
+       symbols.
+
+       From Jie Zhang <jie.zhang@analog.com>:
+       * config/bfin/bfin.c (bfin_expand_prologue): Ask do_link to
+       save FP and RETS with saveall attribute.
+       (bfin_expand_epilogue): Ask do_unlink to restore FP and RETS
+       with saveall attribute.
+
+       * config/bfin/bfin.c (bfin_expand_builtin,
+       case BFIN_BUILTIN_MULT_1X32X32): Force constants to registers for the
+       operands.
+       From Jie Zhang <jie.zhang@analog.com>:
+       * config/bfin/bfin.c (bfin_expand_builtin): Initialize icodes
+       before use in two places.
+       * config/bfin/bfin.md (AREG): Define mode iterator.
+       (reload_in, reload_out): Use mode iterator AREG.
+
+2009-09-14  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/41350
+       * dwarf2out.c (dwarf2out_begin_prologue): Adjust non-CFI asm
+       EH personality path.
+
+2009-09-13  Richard Guenther  <rguenther@suse.de>
+       Rafael Avila de Espindola  <espindola@google.com>
+
+       * langhooks-def.h (LANG_HOOKS_EH_RUNTIME_TYPE): Define.
+       (LANG_HOOKS_EH_PERSONALITY): Likewise.
+       (LANG_HOOKS_INITIALIZER): Adjust.
+       (lhd_pass_through_t): Declare.
+       * langhooks.h (struct lang_hooks): Add eh_runtime_type and
+       eh_personality.
+       * langhooks.c (lhd_pass_through_t): New function.
+        * dwarf2out.c (output_call_frame_info, dwarf2out_do_cfi_startproc,
+       dwarf2out_begin_prologue): Use personality from current_function_decl.
+        * expr.h (get_personality_function): Declare.
+       * expr.c (get_personality_function): New function.
+       (build_personality_function): Likewise.
+        * libfuncs.h (libfunc_index): Remove LTI_eh_personality.
+        (eh_personality_libfunc): Remove.
+        * optabs.c (build_libfunc_function): New function split out from ...
+       (init_one_libfunc): ... here.
+        * tree.h (DECL_FUNCTION_PERSONALITY): New.
+        (tree_function_decl): Add personality.
+       (lhd_gcc_personality): Declare.
+       (build_personality_function): Likewise.
+       * tree.c (gcc_eh_personality_decl): New.
+       (lhd_gcc_personality): New function.
+       * except.h (lang_eh_runtime_type): Remove.
+       (enum eh_personality_kind): New.
+       (build_personality_function): Declare.
+       (function_needs_eh_personality): Declare.
+        * except.c (lang_eh_runtime_type): Remove.
+       (function_needs_eh_personality): New function.
+       (add_type_for_runtime): Call lang_hooks.type_for_runtime instead.
+        (sjlj_emit_function_enter, output_function_exception_table):
+        Use personality from current_function_decl.
+       * tree-eh.c (lower_eh_constructs): Set DECL_FUNCTION_PERSONALITY.
+       * tree-inline.c (tree_can_inline_p): Do not inline across different
+       EH personalities.
+       (expand_call_inline): Likewise.  Adjust the callers EH personality.
+       (tree_function_versioning): Copy DECL_FUNCTION_PERSONALITY.
+       * cgraph.c (cgraph_add_new_function): Set DECL_FUNCTION_PERSONALITY.
+       * Makefile.in (cgraph.o): Add $(EXCEPT_H) dependency.
+       (c-parser.o): Likewise
+       * c-tree.h (c_eh_initialized_p): Remove.
+       (c_maybe_initialize_eh): Likewise.
+       * c-decl.c (finish_decl): Don't call c_maybe_initialize_eh.
+       (finish_decl): Don't call c_maybe_initialize_eh.
+       (c_eh_initialized_p): Remove.
+       (c_maybe_initialize_eh): Likewise.
+        * c-parser.c (c_parser_omp_construct): Likewise.
+       (c_parse_file): Initialize exception handling.
+
+2009-09-13  Kai Tietz  <kai.tietz@onevision.com>
+
+       * config.gcc (tm_file): Remove i386/biarch32.h
+       for i?86-w64-mingw* case.
+       (i?86-*-mingw* andx86_64-*-mingw*): Add multilib
+       support.
+       * config.host: Set for x64 mingw the option
+       use_long_long_for_widest_fast_int to yes.
+
+2009-09-13  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree.h (DECL_IGNORED_P): Document further effect for FUNCTION_DECL.
+       * dbxout.c (dbxout_function_end): Do not test DECL_IGNORED_P.
+       (dbxout_begin_function): Likewise.
+       * final.c (dwarf2_debug_info_emitted_p): New predicate.
+       (final_start_function): Do not emit debug info if DECL_IGNORED_P is
+       set on the function.
+       (final_end_function): Likewise.
+       (final_scan_insn): Likewise.
+       (rest_of_handle_final): Likewise.
+       * varasm.c (assemble_start_function): Likewise.
+       * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
+
+2009-09-12  Jason Merrill  <jason@redhat.com>
+
+       * dbgcnt.c (dbg_cnt_process_single_pair): constify.
+       * opts.c (common_handle_option): constify.
+
+2009-09-12  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       * doc/install.texi (avr): Remove obsolete reference site.
+
+2009-09-12  Gerald Pfeifer  <gerald@pfeifer.com>
+       
+       * doc/install.texi (Binaries): Adjust AIX link.
+
+2009-09-12  Akim Demaille  <demaille@gostai.com>
+
+       * doc/invoke.texi (-fstrict-aliasing): Correct two examples.
+       Use an imperative sentence.
+
+2009-09-11  Richard Henderson  <rth@redhat.com>
+
+       * gsstruct.def (DEFGSSTRUCT): Remove printable-name argument; add
+       structure-name and has-tree-operands arguments; update all entries.
+       * gimple.def (DEFGSCODE): Replace 3rd argument with GSS_symbol;
+       update all entries.
+       * gimple.c (gimple_ops_offset_): Use HAS_TREE_OP argument.
+       (gsstruct_code_size): New.
+       (gss_for_code_): New.
+       (gss_for_code): Remove.
+       (gimple_size): Rewrite using gsstruct_code_size.
+       (gimple_statement_structure): Move to gimple.h.
+       * gimple.h (gimple_ops_offset_, gss_for_code_): Declare.
+       (gss_for_code, gimple_statement_structure): New.
+       (gimple_ops): Use new arrays; tidy.
+
+2009-09-11  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * config/pa/predicates.md (symbolic_operand): Require a CONST symbolic
+       operand to be a PLUS expression.
+       * config/pa/pa.c (pa_secondary_reload): Likewise.
+
+2009-09-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * combine.c (propagate_for_debug_subst): Call wrap_constant on top.
+
+       * print-rtl.c (print_rtx): Use JUMP_LABEL (in_rtx) instead of
+       XEXP (in_rtx, 8).
+
+2009-09-11  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       From Jie Zhang <jie.zhang@analog.com>:
+       * doc/extend.texi (node Function Attributes): Document l2
+       function attribute.
+       (node Blackfin Variable Attributes): Document l2 variable attributes.
+
+2009-09-11  Loren J. Rittle  <ljrittle@acm.org>
+
+       * config.gcc (*-*-freebsd*): Enable default_use_cxa_atexit
+       to match the system compiler's configuration at inflection point.
+       Add comment to remark a remaining difference with system compiler.
+
+       * configure.ac (*-*-freebsd*): Enable check for __stack_chk_fail.
+       * configure: Regenerate.
+
+2009-09-11  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       From Jie Zhang <jie.zhang@analog.com>:
+       * config/bfin/bfin.c (bfin_expand_call): Handle L2 functions.
+       (bfin_handle_l2_attribute): New.
+       (bfin_attribute_table): Add l2 attribute.
+
 2009-09-11  Michael Matz  <matz@suse.de>
 
        PR middle-end/41275