+2005-03-02 Devang Patel <dpatel@apple.com>
+
+ PR tree-optimization/18815
+ * tree-if-conv.c (combine_blocks): Adjust loop header edges for
+ loops with zero exit edges.
+
+2005-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cfg.c (connect_src, connect_dest, disconnect_src,
+ disconnct_dest): New.
+ (unchecked_make_edge, remove_edge, redirect_edge_succ,
+ redirect_edge_pred): Use the new functions.
+
+ * tree-ssa-dom.c (tree_ssa_dominator_optimize): Call
+ free_dominance_info only when needed.
+
+2005-03-02 David Edelsohn <edelsohn@gnu.org>
+
+ PR target/20276
+ * config/rs6000/predicates.md (reg_or_cint64_operand): Fix typo.
+ (reg_or_sub_cint64_operand): Same.
+
+2005-03-02 Jeff Law <law@redhat.com>
+
+ * tree-ssa-dom.c (tree_ssa_dominator_optimize): Fix setting of
+ CFG_ALTERED in the main DOM iteration loop.
+
+2005-03-02 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/19916
+ * varasm.c (initializer_constant_valid_p): Allow conversions
+ between OFFSET_TYPEs. Tidy.
+
+2005-03-02 Hans-Peter Nilsson <hp@axis.com>
+
+ * config/cris/cris.md ("return"): Remove epilogue delay list
+ sanity check.
+
+2005-03-02 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * config/arm/linux-elf.h (ARM_FUNCTION_PROFILER): Do not use (PLT)
+ for Thumb.
+ * config/arm/netbsd-elf.h (ARM_FUNCTION_PROFILER): Likewise.
+
+2005-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cfgloop.h, cfgloopanal.c, cfgloopmanip.c, conflict.c,
+ loop-init.c, loop-unroll.c, print-tree.c, reg-notes.def,
+ config/m68k/m68k.c, config/mips/mips.h,
+ config/rs6000/rs6000-protos.h, doc/contrib.texi,
+ doc/include/gcc-common.texi: Update copyright.
+
+ PR middle-end/18029 and PR middle-end/18030
+ * expr.c (optimize_bitfield_assignment_op): Add a special case
+ to handle BIT_IOR_EXPR and BIT_XOR_EXPR.
+
+ * fold-const.c (fold_unary): New.
+ (fold): Call fold_unary on unary expressions.
+
+2005-03-02 Richard Guenther <rguenth@gcc.gnu.org>
+
+ * cgraph.h (struct cgraph_edge): Add prev_caller and
+ prev_callee fields.
+ (cgraph_node_remove_callees): Export.
+ * cgraph.c (cgraph_create_edge): Initialize prev_caller
+ and prev_callee.
+ (cgraph_edge_remove_callee): New function.
+ (cgraph_edge_remove_caller): Likewise.
+ (cgraph_remove_edge): Use.
+ (cgraph_redirect_edge_callee): Likewise.
+ (cgraph_node_remove_callees): New function.
+ (cgraph_node_remove_callers): Likewise.
+ (cgraph_remove_node): Use.
+ * tree-optimize.c (tree_rest_of_compilation): Use
+ cgraph_node_remove_callees instead of manual loop.
+ * cgraphunit.c (cgraph_finalize_function): Likewise.
+ (cgraph_expand_function): Likewise.
+ (cgraph_remove_unreachable_nodes): Likewise.
+
+2005-03-02 Joseph S. Myers <joseph@codesourcery.com>
+
+ PR c/8927
+ * c-tree.h (undeclared_variable, build_external_ref): Add extra
+ argument.
+ * c-decl.c (undeclared_variable): Take location as argument.
+ * c-typeck.c (build_external_ref): Likewise.
+ * c-parser.c (c_parser_postfix_expression): Pass location of
+ identifier to build_external_ref.
+
+2005-03-01 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (cceq splitter): Use operand mode, not
+ CCEQ mode for branch_positive_comparison_operator test.
+ * config/rs6000/predicates (branch_comparison_operator): Revert to
+ define_predicate.
+ (scc_comparison_operator): Same.
+ (branch_positive_comparison_operator): Same.
+
+2005-03-01 Hans-Peter Nilsson <hp@axis.com>
+
+ * config/cris/cris.c (cris_eligible_for_epilogue_delay)
+ (cris_delay_slots_for_epilogue): Remove.
+ (save_last): Move into cris_target_asm_function_epilogue.
+ (cris_target_asm_function_epilogue): Remove tests for file being
+ NULL.
+ * config/cris/cris-protos.h (cris_eligible_for_epilogue_delay)
+ (cris_delay_slots_for_epilogue): Remove prototypes.
+ * config/cris/cris.h (DELAY_SLOTS_FOR_EPILOGUE)
+ (ELIGIBLE_FOR_EPILOGUE_DELAY): Do not define.
+
+2005-03-01 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/predicates.md (branch_comparison_operator): Change
+ to define_special_predicate.
+ (scc_comparison_operator): Same.
+ (branch_positive_comparison_operator): Same.
+
+2005-03-01 Daniel Berlin <dberlin@dberlin.org>
+
+ * Makefile.in (tree-ssa-sink.o): New.
+ (OBJS-common): Add tree-ssa-sink.o.
+ * common.opt: Add -ftree-sink
+ * opts.c (decode_options): flag_tree_sink is set at O1 or higher.
+ * timevar.def (TV_TREE_SINK): new timevar.
+ * tree-flow.h (is_hidden_global_store): Prototype.
+ * tree-optimize.c (init_tree_optimization_passes): Add
+ pass_sink_code.
+ * tree-pass.h (pass_sink_code): New.
+ * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Move checking
+ for non-obvious global store store to is_hidden_global_store, and
+ call that new function.
+ * tree-ssa-sink.c: New file.
+ * doc/invoke.texi: Document -fdump-tree-sink and -ftree-sink.
+ * doc/passes.texi: Document forward store motion.
+ * testsuite/gcc.dg/tree-ssa/ssa-sink-1.c: New test
+ * testsuite/gcc.dg/tree-ssa/ssa-sink-2.c: New test
+ * testsuite/gcc.dg/tree-ssa/ssa-sink-3.c: New test
+ * testsuite/gcc.dg/tree-ssa/ssa-sink-4.c: New test
+
+2005-03-01 Per Bothner <per@bothner.com>
+
+ * diagnostic.c (diagnostic_build_prefix): If USE_MAPPED_LOCATION
+ and we have a non-zero column-number, add it to the message.
+ Also factor out the diagnostic_kind_text.
+
2005-03-01 Zdenek Dvorak <dvorakz@suse.cz>
* cfgloop.c (flow_loop_entry_edges_find, flow_loop_exit_edges_find,
("*andqi_lowpart", "iorsi3", "iorhi3", "iorqi3", "uminsi3"):
Insert spaces in constraints to align alternatives vertically for
readability.
- ("cmphi"): Ditto. Add separate alternative for operand 0 "Q>",
+ ("cmphi"): Ditto. Add separate alternative for operand 0 "r",
operand 1: "M".
2005-02-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>