+2009-12-14 Ben Elliston <bje@au.ibm.com>
+
+ * lto-streamer-in.c (lto_get_builtin_tree): fclass can only be a
+ BUILT_IN_NORMAL or BUILT_IN_MD.
+
+2009-12-13 Eric Botcazou <ebotcazou@adacore.com>
+
+ * doc/tm.texi (STACK_CHECK_PROBE_LOAD): Delete.
+ * expr.h (STACK_CHECK_PROBE_LOAD): Likewise.
+ * explow.c (emit_stack_probe): Do not test STACK_CHECK_PROBE_LOAD.
+ * system.h (STACK_CHECK_PROBE_LOAD): Poison.
+
+2009-12-13 Michael Matz <matz@suse.de>
+
+ PR tree-optimization/42027
+ * dojump.c (do_jump <TRUTH_AND_EXPR, TRUTH_OR_EXPR>): Go to
+ TRUTH_ANDIF_EXPR resp. TRUTH_ORIF_EXPR expander, instead of
+ falling through.
+
+2009-12-13 Andy Hutchinson <hutchinsonandy@gcc.gnu.org>
+
+ PR target/23726
+ * config/avr/predicates.md (pseudo_register_operand): New predicate
+ for pseudos.
+ * config/avr/avr.md (divmodqi4): Replace with define_insn_and_split
+ to allow div/mod optimization.
+ (udivmodqi4): Ditto.
+ (divmodhi4): Ditto.
+ (udivmodhi4): Ditto.
+ (divmodsi4): Ditto.
+ (udivmodsi4): Ditto.
+
+2009-12-13 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/42357
+ * tree-sra.c (sra_modify_assign): Do not tear apart struct copies.
+
+2009-12-12 Richard Guenther <rguenther@suse.de>
+
+ * tree.c (need_assembler_name_p): Abstract decls do not need
+ an assembler name.
+ * dwarf2out.c (dwarf2out_abstract_function): Preserve
+ DECL_ABSTRACT properly.
+
+2009-12-11 Richard Guenther <rguenther@suse.de>
+
+ * lto-streamer-in.c (lto_input_tree_ref): Do not register
+ DEBUG_EXPR_DECLs with the varpool.
+
+2009-12-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * config/sparc/linux-unwind.h (MD_FROB_UPDATE_CONTEXT, 64-bit): Define.
+ (sparc64_frob_update_context): New function.
+
+2009-12-11 Richard Guenther <rguenther@suse.de>
+
+ PR lto/41658
+ PR lto/41657
+ * lto-streamer-out.c (write_global_stream): Do not make decls
+ weak but resort to TREE_ASM_WRITTEN to avoid multiple definitions.
+ Make sure to mark all decls that we have written.
+
+2009-12-11 Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+
+ PR target/36047
+
+ * config/m68k/linux.h: Remove LABELNO from the mcount statement. It is
+ not used by glibc/uclibc and does not work with large binaries.
+
+2009-12-11 Richard Guenther <rguenther@suse.de>
+
+ PR lto/41662
+ * lto-streamer-in.c (lto_init_eh): Move eh_initialized_p
+ handling here.
+ (input_eh_regions): Adjust.
+ (lto_input_ts_function_decl_tree_pointers): Initialize EH
+ if a non-NULL DECL_FUNCTION_PERSONALITY was read in.
+
+2009-12-11 Duncan Sands <baldrick@free.fr>
+
+ * passes.c (make_pass_instance): Allocate and copy the right amount of
+ memory for ipa passes, which are not the same size as other passes.
+
+2009-12-11 Joern Rennecke <amylaar@spamcop.net>
+
+ * plugin.c (get_named_event_id): Fix hash table rebuild to include
+ dynamically allocated events.
+
+2009-12-11 Richard Guenther <rguenther@suse.de>
+
+ PR lto/42320
+ * lto-symtab.c (lto_symtab_resolve_can_prevail_p): Properly
+ detect non-prevailing decls.
+
+2009-12-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/42317
+ * cgraph.h (struct cgraph_node): Add same_comdat_group field.
+ * cgraph.c (cgraph_remove_node): Unchain node from same_comdat_group
+ circular list.
+ (cgraph_node_can_be_local_p): Return false for DECL_COMDAT with
+ node->same_comdat_group.
+ * ipa.c (cgraph_remove_unreachable_nodes): For any reachable node
+ mark all its same_comdat_group nodes as also reachable.
+ (cgraph_externally_visible_p): Return true even if any of
+ same_comdat_group nodes has address taken.
+ * lto-cgraph.c (lto_output_node): Stream out same_comdat_group.
+ (output_cgraph): Ensure other same_comdat_group nodes are also
+ included.
+ (input_node): Stream in same_comdat_group.
+ (input_cgraph_1): Fix up same_comdat_group fields from references
+ to pointers.
+ * cgraphunit.c (cgraph_analyze_functions): Mark all other
+ same_comdat_group nodes as reachable.
+ (cgraph_mark_functions_to_output): For each node->process process
+ also other same_comdat_group nodes.
+ * ipa-inline.c (cgraph_clone_inlined_nodes): Don't reuse nodes
+ with same_comdat_group non-NULL.
+ (cgraph_mark_inline_edge): Likewise.
+
+2009-12-10 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/42228
+ PR middle-end/42110
+ * cgraph.c (cgraph_create_edge_including_clones): Add old_stmt
+ parameter; update edge if it already exists.
+ (cgraph_remove_node): Handle correctly cases where we are removing
+ node having clones.
+ * cgraph.h (cgraph_create_edge_including_clones): Declare.
+ (verify_cgraph_node): Add missing error_found = true code.
+ (cgraph_materialize_all_clones): Remove call edges of dead nodes.
+ * ipa.c (cgraph_remove_unreachable_nodes): Correctly look for master
+ clone; fix double linked list removal.
+ * tree-inline.c (copy_bb): Update cgraph_create_edge_including_clones
+ call; fix frequency of newly created edge.
+
+2009-12-10 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ PR rtl-opt/42216
+ * regrename.c: Error out if MAX_RECOG_OPERANDS is larger than
+ HOST_BITS_PER_WIDE_INT.
+ (verify_reg_in_set): New function, broken out of verify_reg_tracked.
+ (verify_reg_tracked): Use it.
+ (scan_rtx_reg): When seeing a use involving a superset of the
+ registers in an existing chain, enlarge that chain. Otherwise,
+ allow subsets and set fail_current_block for all other kinds of
+ overlap.
+ (hide_operands): New argument UNTRACKED_OPERANDS; callers changed.
+ Do not modify operands when the bit with the corresponding number
+ is set in that bitmap.
+ (build_def_use): When we see matching operands with different
+ modes, don't set fail_current_block, but keep track of such
+ operands in a bitmap if their registers aren't already tracked
+ in an open chain. Pass this bitmap to all hide_operands calls.
+
+2009-12-10 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/42337
+ * tree-ssa-pre.c (seen_during_translate): Remove.
+ (phi_translate_1): Collapse into ...
+ (phi_translate): ... this. Remove seen parameter and
+ adjust recursive calls.
+
+2009-12-10 Richard Guenther <rguenther@suse.de>
+ Allan Sandfeld Jensen <linux@carewolf.com>
+
+ * tree-vectorizer.c (vectorize_loops): Properly guard
+ vectorizer verboseness.
+
+2009-12-10 Ben Elliston <bje@au.ibm.com>
+
+ * fwprop.c (free_load_extend): Initialise `use'.
+
+2009-12-09 David Edelsohn <edelsohn@gnu.org>
+
+ * builtins.c (do_mpc_ckconv): Pass the component type to
+ real_from_mpfr().
+
+2009-12-09 Xinliang David Li <davidxl@google.com>
+
+ PR tree-optimization/42337
+ * tree-ssa-pre.c (phi_translate_1): Push and Pop SEEN set.
+
2009-12-09 Nathan Froyd <froydnj@codesourcery.com>
* config/rs6000/vector.md (absv2sf2, negv2sf2, addv2sf3, subv2sf3,