OSDN Git Service

./:
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 9345a08..38ac22c 100644 (file)
@@ -1,3 +1,126 @@
+2009-09-28  Easwaran Raman  <eraman@google.com>
+
+       * ifcvt.c (noce_try_abs): Recognize pattern and call
+       expand_one_cmpl_abs_nojump.
+       * optabs.c (expand_one_cmpl_abs_nojump): New function.
+       * optabs.h (expand_one_cmpl_abs_nojump): Declare.
+
+2009-09-28  Ian Lance Taylor  <iant@google.com>
+
+       PR middle-end/40500
+       * c-opts.c (c_common_handle_option): Don't set
+       warn_jump_misses_init for -Wall.
+       * doc/invoke.texi (Warning Options): Update documentation.
+
+2009-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * Makefile.in ($(out_object_file)): Depend on
+       gt-$(basename $(notdir $(out_file))).h.
+
+2009-09-28  Richard Henderson  <rth@redhat.com>
+
+       * except.h (struct eh_region_d): Add use_cxa_end_cleanup.
+       * except.c (gen_eh_region): Set it.
+       (duplicate_eh_regions_1): Copy it.
+       * tree-eh.c (lower_resx): Use it to determine which function
+       to call to resume.
+
+       * langhooks.h (struct lang_hooks): Add eh_use_cxa_end_cleanup.
+       * langhooks-def.h (LANG_HOOKS_EH_USE_CXA_END_CLEANUP): New.
+       * builtins.def (BUILT_IN_CXA_END_CLEANUP): New.
+       * tree.c (build_common_builtin_nodes): Remove parameter.  Build
+       BUILT_IN_CXA_END_CLEANUP if necessary.
+
+       * c-common.c (c_define_builtins): Update call to
+       build_common_builtin_nodes.
+
+2009-09-28  Andrew Pinski  <andrew_pinski@playstation.sony.com>
+
+       * spu.c (get_branch_target): Return NULL for ASM_OPERANDS patterns.
+
+2009-09-28  Michael Matz  <matz@suse.de>
+
+       * builtins.c (interclass_mathfn_icode): New helper.
+       (expand_builtin_interclass_mathfn): Use it here, and split folding
+       into ...
+       (fold_builtin_interclass_mathfn): ... this new folder.
+       (build_call_nofold_loc): New static helper.
+       (build_call_nofold): New wrapper macro for above.
+       (expand_builtin_int_roundingfn): Use it instead of build_call_expr.
+       (expand_builtin_pow): Ditto.
+       (expand_builtin_memset_args): Ditto.
+       (expand_builtin_printf): Ditto.
+       (expand_builtin_fprintf): Ditto.
+       (expand_builtin_sprintf): Ditto.
+       (expand_builtin_memory_chk): Ditto.
+       (expand_builtin_mempcpy_args): Ditto and don't call folders.
+       (expand_builtin_stpcpy): Ditto.
+       (expand_builtin_strcmp): Ditto.
+       (expand_builtin_strncmp): Ditto.
+       (expand_builtin_strcpy): Remove FNDECL and MODE arguments.
+       (expand_builtin_strcpy_args): Don't call folders.
+       (expand_builtin_memcmp): Ditto.
+       (expand_builtin_strncpy): Ditto, and use target.
+       (expand_builtin_memcpy): Ditto.
+       (expand_builtin_strstr, expand_builtin_strchr, expand_builtin_strrchr,
+       expand_builtin_strpbrk, expand_builtin_memmove,
+       expand_builtin_memmove_args, expand_builtin_bcopy,
+       expand_builtin_memchr, expand_builtin_strcat, expand_builtin_strncat,
+       expand_builtin_strspn, expand_builtin_strcspn,
+       expand_builtin_fputs): Remove these.
+       (expand_builtin): Don't call the above, change calls to other
+       expanders that changed prototype.
+       (fold_builtin_stpcpy): New folder split out from expand_builtin_stpcpy.
+       (fold_builtin_1 <ISFINITE, ISINF, ISNORMAL>): Call
+       fold_builtin_interclass_mathfn.
+       (fold_builtin_2 <STPCPY>): Call fold_builtin_stpcpy.
+       (fold_builtin_strcat): Add folding split from expand_builtin_strcat.
+
+       * fold-const.c (fold_binary_loc <NE_EXPR>): Add !exp != 0 -> !exp.
+       * passes.c (init_optimization_passes): Move pass_fold_builtins
+       after last phiopt pass.
+       * tree-inline.c (fold_marked_statements): When folding builtins
+       iterate over all instruction potentially generated.
+       * tree-ssa-ccp.c (gimplify_and_update_call_from_tree): Declare
+       earlier.
+       (fold_gimple_call): Use it to always fold calls (into potentially
+       multiple instructions).
+       * tree-ssa-dom.c (optimize_stmt): Resolve __builtin_constant_p
+       calls into zero at this time.
+       * tree-ssa-propagate.c (substitute_and_fold): Ignore multiple 
+       statements generated by builtin folding.
+
+2009-09-28  Nick Clifton  <nickc@redhat.com>
+
+       * config/m32r/m32r.c (m32r_is_insn): Return false for debugging
+       insns.
+
+2009-09-28  Duncan Sands  <baldrick@free.fr>
+
+       * gcc-plugin.h (PLUGIN_REGISTER_GGC_CACHES): New event.
+       * plugin.c (plugin_event_name): Add PLUGIN_REGISTER_GGC_CACHES.
+       (register_callback): Dispatch it.
+       (invoke_plugin_callbacks): Incorporate in sanity check.
+       * ggc.h (ggc_register_cache_tab): Add declaration.
+       * ggc-common.c (ggc_register_root_tab): Simplify.
+       (const_ggc_cache_tab_t): New typedef.
+       (extra_cache_vec): New vector of dynamically added cache tables.
+       (ggc_register_cache_tab): New function.
+       (ggc_scan_cache_tab): New function.
+       (ggc_mark_roots): Simplify dynamic roots.  Handle dynamic caches.
+       * doc/plugins.texi: Document PLUGIN_REGISTER_GGC_CACHES.
+
+2009-09-27  Richard Henderson  <rth@redhat.com>
+
+       * tree-ssa-ccp.c (optimize_stack_restore): Relax the conditions under
+       which we remove __builtin_stack_restore.
+
+2009-09-27  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * loop-iv.c (iv_analyze_op): Use function_invariant_p, not CONSTANT_P,
+       to test for GRD_INVARIANT.
+       (simple_rhs_p): Anything that's function_invariant_p is fine.
+
 2009-09-27  Rafael Avila de Espindola  <espindola@google.com>
 
        * gengtype.c (main): Use plunge_files instead of plugin_output.
@@ -26833,6 +26956,3 @@ Copyright (C) 2009 Free Software Foundation, Inc.
 Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright
 notice and this notice are preserved.
-
-        LocalWords:  gengtype
-