+2004-09-16 Daniel Berlin <dberlin@dberlin.org>
+
+ * cfgloop.h (duplicate_loop): Add prototype.
+ * cfgloopmanip.c (duplicate_loop): Make non-static.
+ * lambda-code.c (perfect_nestify): Factor out test whether
+ we can handle this loop into separate function.
+ Call it.
+ (can_convert_to_perfect_nest): New function.
+ (replace_uses_of_x_with_y): Add modify_stmt call.
+ * tree-loop-linear.c (linear_transform_loops): Call
+ rewrite_into_loop_closed_ssa and free_df.
+
+2004-09-16 Daniel Berlin <dberlin@dberlin.org>
+
+ * lambda-code.c (invariant_in_loop): is_gimple_min_invariant is
+ loop invariant as well.
+ (perfect_nestify): new function.
+ (gcc_loop_to_lambda_loop): New parameters to track lower bounds,
+ upper bounds, and steps.
+ Set outerinductionvar properly.
+ (gcc_loopnest_to_lambda_loopnest): Add loops and need_perfect
+ parameters.
+ Return NULL if we need a perfect loop and can't make one.
+ (lambda_loopnest_to_gcc_loopnest): Correct algorithm.
+ (not_interesting_stmt): New function.
+ (phi_loop_edge_uses_def): Ditto.
+ (stmt_uses_phi_result): Ditto.
+ (stmt_is_bumper_for_loop): Ditto.
+ (perfect_nest_p): Ditto.
+ (nestify_update_pending_stmts): Ditto.
+ (replace_uses_of_x_with_y): Ditto.
+ (stmt_uses_op): Ditto.
+ (perfect_nestify): Ditto.
+ * lambda-mat.c (lambda_matrix_id_p): New function.
+ * lambda-trans.c (lambda_trans_matrix_id_p): Ditto.
+ * lambda.h: Update prototypes.
+ * tree-loop-linear (linear_transform_loop): Use new
+ perfect_nest_p. Detect and ignore identity transform.
+ * tree-ssa-loop.c (pass_linear_transform): Use TODO_write_loop_closed.
+
+2004-09-16 Sebastian Pop <pop@cri.ensmp.fr>
+
+ * tree-loop-linear.c (gather_interchange_stats): Add more comments.
+ Gather also strides of accessed data. Pass in the data references
+ array.
+ (try_interchange_loops): Add a new heuristic for handling the temporal
+ locality. Pass in the data references array.
+ (linear_transform_loops): Pass the data references array to
+ try_interchange_loops.
+
+2004-09-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/invoke.texi: Fix typos. Follow spelling conventions.
+
+2004-09-16 Nathan Sidwell <nathan@codesourcery.com>
+
+ * doc/c-tree.texi (Classes): Remove index entries for
+ TREE_VIA_{PUBLIC,PROTECTED,PRIVATE}.
+
+2004-09-16 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * fold-const.c (fold): Fold difference of addresses.
+ (ptr_difference_const): Moved from tree-ssa-loop-ivopts, based on
+ get_inner_reference.
+ * tree-ssa-loop-ivopts.c (peel_address): Removed.
+ (ptr_difference_const): Moved to fold-const.c.
+ (split_address_cost): Use get_inner_reference instead of peel_address.
+ (ptr_difference_cost): Change type of diff to HOST_WIDE_INT.
+ * tree.h (ptr_difference_const): Export.
+
+ * tree-ssa-loop-ivopts.c (dump_iv, dump_use, dump_cand): Add induction
+ variable type to the dump. Fix indentation.
+ (idx_find_step): Handle nonconstant array_ref_element_size and
+ array_ref_low_bound.
+ (idx_record_use): Handle array_ref_element_size and
+ array_ref_low_bound.
+ (find_interesting_uses_stmt): Handle memory = nontrivial_expression
+ statements correctly.
+ (get_computation_at, iv_value): Do not unshare expressions here.
+ (rewrite_use_outer): Unshare the expression before it is emitted
+ to code.
+ * tree-ssa-loop-niter.c (unsigned_type_for, signed_type_for):
+ Moved to tree.c.
+ * tree.c (unsigned_type_for, signed_type_for): Moved from
+ tree-ssa-loop-niter.c. Use langhooks.
+ * tree.h (signed_type_for): Export.
+
+2004-09-16 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): Update
+ prototype.
+
+2004-09-15 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/11572
+ * c-incpath.h (target_c_incpath_s): Add extra_pre_includes.
+ Add two parameters to extra_includes.
+ (C_INCPATH_INIT): Remove.
+ * c-incpath.c (register_include_chains): Call extra_pre_includes
+ before adding the standard include directory.
+ Update call to extra_includes.
+ (!defined TARGET_EXTRA_INCLUDES): Update
+ hook_void_charptr_charptr_int and add !define
+ TARGET_EXTRA_PRE_INCLUDES.
+ (!define TARGET_EXTRA_INCLUDES): Define as
+ hook_void_charptr_charptr_int.
+ (!define TARGET_EXTRA_PRE_INCLUDES): Likewise.
+ (target_c_incpath): Always declare.
+ * fixinclude.c (defined TARGET_EXTRA_INCLUDES): Declare a
+ empty function.
+ (define TARGET_EXTRA_PRE_INCLUDES): Likewise.
+ * config/darwin.h: (darwin_register_frameworks): Update for
+ the two new parameters.
+ (darwin_register_objc_includes): Add prototype.
+ (TARGET_EXTRA_PRE_INCLUDES): Define.
+ * config/darwin-c.c (darwin_register_objc_includes): New function.
+ (darwin_register_frameworks): Update for the two new parameters.
+ (target_c_incpath): Remove.
+ * config/t-darwin (darwin-c.o): Add $(PREPROCESSOR_DEFINES) to
+ the compile line.
+ * doc/tm.texi (TARGET_EXTRA_INCLUDES): Document the two new
+ parameters.
+ (TARGET_EXTRA_PRE_INCLUDES): Document.
+
+ * gcc.c (spec_function): Add replace-outfile.
+ (replace_outfile_spec_function): New function.
+ * config/darwin.h (LINK_SPEC): Add replace
+ -lobjc with -lobjc-gnu if -fgnu-runtime is
+ supplied.
+ * invoke.texi (replace-outfile): Document.
+
+2004-09-13 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (expr_expected_value, strip_builtin_expect): New function.
+ (tree_predict_by_opcode): Use it.
+ (tree_estimate_probability): Add, for now disabled,
+ strip_builtin_expect call.
+
+2004-09-15 James E Wilson <wilson@specifixinc.com>
+
+ PR target/17455
+ * config/ia64/ia64.c (ia64_function_ok_for_sibcall): Return false
+ if current_function_decl is a sibcall.
+
+2004-09-15 Mark Mitchell <mark@codesourcery.com>
+
+ * varasm.c (default_function_rdodata_section): Make sure to pass
+ along a decl for a link-once section.
+
+2004-09-15 Richard Henderson <rth@redhat.com>
+
+ * tree-ssa-operands.c (add_call_clobber_ops): Fix unused variable
+ warning with code disable. Fix formatting.
+
+2004-09-15 Steven Bosscher <stevenb@suse.de>
+
+ * Makefile.in (tree-ssa-dom.o): Depend on tree-ssa-propagate.h.
+ * tree-ssa-dom.c (cprop_into_stmt): Recompute TREE_INVARIANT
+ after propagating into an ADDR_EXPR.
+
+2004-09-15 Andrew Pinski <apinski@apple.com>
+
+ PR rtl-opt/17427
+ * gcse.c (process_insert_insn): insn_invalid_p has side effects.
+ Move it out of gcc_assert.
+
+2004-09-15 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * attribs.c, builtins.c, c-format.c, c-pch.c, coverage.c,
+ except.c, fold-const.c, function.c, langhooks.c, params.c,
+ reload.c, reload1.c, stmt.c, stor-layout.c, toplev.c, tree-cfg.c,
+ tree-dump.c, tree-mudflap.c, tree.c, varasm.c: Use %<, %> and %q
+ for quoting in diagnostics going through pretty-print.c. Use ''
+ for quoting in other diagnostic text.
+ * langhooks.c: Include intl.h. Mark text locating diagnostics for
+ translation.
+ * Makefile.in (langhooks.o): Update dependencies.
+ * pretty-print.h (pp_printf): Mark as accepting GCC diagnostic
+ formats.
+
+2004-09-15 Mark Mitchell <mark@codesourcery.com>
+
+ * configure.ac: Check for COMDAT support. Robustify check for
+ SHF_MERGE support.
+ * configure: Regenerated.
+ * config.in: Likewise.
+ * langhooks-def.h (lhd_comdat_group): New function.
+ (LANG_HOOKS_COMDAT_GROUP): New macro.
+ (LANG_HOOKS_DECLS): Use it.
+ * langhooks.c (lhd_comdat_group): Define.
+ * langhooks.h (lang_hooks_for_decls): Add comdat_group.
+ * output.h (named_section_flags): Make it a macro.
+ (named_section_real): New function.
+ (default_no_named_section): Add decl parameter.
+ (default_elf_asm_named_section): Likewise.
+ (default_coff_asm_named_section): Likewise.
+ (default_pe_asm_named_section): Likewise.
+ * target.h (gcc_target): Adjust type of named_section.
+ * varasm.c (named_section_flags): Rename to named_section_real.
+ Add decl parameter.
+ (default_no_named_section): Add decl parameter.
+ (default_elf_asm_named_section): Use COMDAT, if available. Deal
+ with the case that ASM_COMMENT_START is "@".
+ (default_coff_asm_named_section): Add decl parameter.
+ (default_pe_asm_named_section): Likewise.
+ * config/alpha/alpha.c (vms_asm_named_section): Add decl
+ parameter.
+ (unicosmk_asm_named_section): Likewise.
+ * config/arm/arm.c (arm_elf_asm_named_section): Remove.
+ * config/arm/elf.h (TARGET_ASM_NAMED_SECTION): Likewise.
+ * config/c4x/c4x.c (c4x_asm_named_section): Add decl parameter.
+ * config/cris/cris-protos.h (cris_target_asm_named_section):
+ Likewise.
+ * config/cris/cris.c (cris_target_asm_named_section):
+ Likewise.
+ * config/darwin/darwin-protos.h (darwin_asm_named_section):
+ Likewise.
+ * config/darwin/darwin.c (darwin_asm_named_section): Likewise.
+ * config/h8300/h8300.c (h8300_asm_named_section): Likewise.
+ * config/i386/i386-protos.h (i386_pe_asm_named_section):
+ Likewise.
+ * config/i386/winnt.c (i386_pe_asm_named_section): Likewise.
+ * config/m68k/m68k.c (m68k_coff_asm_named_section): Likewise.
+ * config/mcore/mcore.c (mcore_asm_named_section): Likewise.
+ * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section):
+ Likewise.
+ * config/sparc/sparc.c (sparce_elf_asm_named_section): Likewise.
+ * cp/cp-lang.h (LANG_HOOKS_COMDAT_GROUP): Define.
+ * cp/cp-tree.h (cxx_comdat_group): Declare.
+ * cp/decl.c (cxx_comdat_group): New function.
+
+2004-09-15 Jan Hubicka <jh@suse.cz>
+
+ * tree-ssa.c (verify_flow_sensitive_alias_info): Do not walk dead nodes.
+ * tree-tailcall.c (eliminate_tail_call): Release SSA name.
+
+ * tree-cfg.c (remove_bb): Release SSA defs.
+
+2004-09-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/tm.texi: Follow spelling conventions.
+
+2004-09-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-ssa-dom.c: Fix comment typos.
+
+2004-09-15 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/linux-unwind.h (struct gcc_pt_regs): Extend to
+ include ccr.
+ (ppc_fallback_frame_state): Save location of CR.
+
2004-09-15 Jakub Jelinek <jakub@redhat.com>
+ * expr.c (string_constant): Handle also read-only variables
+ initialized to string literals.
+
* builtins.c (expand_builtin_memmove): Optimize memmove (x, y, 1)
into memcpy (x, y, 1) if memcpy can be expanded inline.
2004-09-13 Kenneth Zadeck <Kenneth.Zadeck@NaturalBridge.com>
-
* tree-ssa-operands.c (get_call_expr_operands): Added parm to
add_call_clobber_ops and add_call_read_ops.
(add_call_clobber_ops, add_call_read_ops): Added code to reduce