+2004-11-03 Sebastian Pop <pop@cri.ensmp.fr>
+
+ * tree.c (tree_fold_gcd): Use FLOOR_MOD_EXPR instead of
+ CEIL_MOD_EXPR.
+
+2004-11-03 Jeff Law <law@redhat.com>
+
+ * stmt.c (expand_case): Speed up code to detect duplicate case
+ label targets and count unique case label targets.
+
+2004-11-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cppdefault.c, cppdefault.h, timevar.h: Update copyright.
+
+2004-11-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bitmap.h, dbxout.c, tree-mudflap.c: Fix comment formatting.
+
+2004-11-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-cfg.c (find_taken_edge): Abort if we are given a
+ statement that is neither COND_EXPR nor SWITCH_EXPR.
+
+2004-11-02 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * fold-const.c (fold): Reassociate also (x - mult) + mult and
+ (mult - x) + mult. Cast operands of expression after applying
+ distributive law to the correct types. Apply distributive law
+ to a * c - b * c for all non-float types.
+
+2004-11-02 Geoffrey Keating <geoffk@apple.com>
+
+ * configure.ac: Don't clear STMP_FIXINC or STMP_FIXPROTO just
+ because we don't want to run them now; instead, set them to
+ stmp-install-fixproto or stmp-install-fixinc.
+ * Makefile.in (stmp-install-fixproto): New.
+ (stmp-install-fixinc): New.
+ * configure: Regenerate.
+
+2004-11-02 Nathan Sidwell <nathan@codesourcery.com>
+
+ * flow.c (init_propagate_block_info): Use bitmap_empty_p on result
+ of bitmap_xor.
+
+2004-11-02 Ziemowit Laski <zlaski@apple.com>
+
+ * c-lang.c (LANG_HOOKS_TYPES_COMPATIBLE_P): Remove.
+ (c_types_compatible_p): Move function definition...
+ * c-objc-common.c (c_types_compatible_p): ...here.
+ * c-objc-common.h (LANG_HOOKS_TYPES_COMPATIBLE_P): Moved here from
+ c-lang.c.
+
+2004-11-02 Steven Bosscher <stevenb@suse.de>
+
+ * cfgloop.h (struct loop): Update comment.
+ * cse.c (cse_main): Remove obsolete comment.
+
+ * expr.h (gen_cond_trap): Move prototype under functions provided
+ by optabs.c.
+ (canonicalize_condition, get_condition): Move to...
+ * rtl.h (canonicalize_condition, get_condition): ...here.
+ (branch_target_load_optimize): Add comment that this function is
+ in bt-load.c.
+ * loop.c (canonicalize_condition, get_condition): Move to...
+ * rtlanal.c (canonicalize_condition, get_condition): ...here.
+ * sched-deps.c (get_condition): Rename to sched_get_condition.
+ (add_dependence): Update this caller.
+
+2004-11-02 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR tree-opt/16808
+ * tree-ssa.c (replace_immediate_uses): If we call fold_stmt, make sure
+ that the vops get marked for renaming.
+
+2004-11-02 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("movcc"): Set type attribute.
+
+2004-11-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-phinodes.c (add_phi_arg): Add an assertion that the
+ edge already exists.
+
+2004-11-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-phinodes.c (remove_phi_arg_num): Do not zero the
+ element that's being removed.
+
+2004-11-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-ssa-threadupdate.c (copy_phis_to_block): Install PHI
+ arguments using PENDING_STMT.
+ (thread_block): Call copy_phis_to_block after redirecting an
+ edge.
+
+2004-11-02 Nathan Sidwell <nathan@codesourcery.com>
+
+ * bitmap.h (bitmap_and, bitmap_and_into, bitmap_and_compl,
+ bitmap_and_compl_into, bitmap_ior, bitmap_iot_into,
+ bitmap_ior_compl, bitmap_xor, bitmap_xor_into): Produce void.
+ (bitmap_ior_and_compl_into): Produce bool.
+ (bitmap_union_of_diff): Rename to ...
+ (bitmap_ior_and_compl): ... here. Produce bool.
+ * bitmap.c (bitmap_ior_and_compl_into): Return bool. Use
+ bitmap_operation directly.
+ (bitmap_union_of_diff): Rename to ...
+ (bitmap_ior_and_compl): ... here. Return bool, use
+ bitmap_operation directly.
+ * df.c (df_rd_transfer_function): Use bitmap_ior_and_compl.
+ (df_ru_transfer_function, df_lr_transfer_function): Likewise.
+ * global.c (modify_bb_reg_pav): Likewise.
+
+ * bitmap.h (bitmap_equal_p): Return bool.
+ (bitmap_intersect_p, bitmap_intersect_compl_p): Declare.
+ * bitmap.c (bitmap_equal_p): Return bool. Compare directly.
+ (bitmap_intersect_p, bitmap_intersect_compl_p): New.
+ * flow.c (calculate_global_regs_live): Use bitmap_intersect_p and
+ bitmap_intersect_compl_p.
+ * ifcvt (dead_or_predicable): Likewise.
+
+2004-11-02 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR rtl-optimization/17104
+ * config/rs6000/rs6000.c (rs6000_emit_move): Don't wrap small
+ loads in zero_extend.
+
+2004-11-02 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR debug/18242
+ * toplev.c (debug_type_names): Remove "dwarf-1".
+
+2004-11-02 Ben Elliston <bje@au.ibm.com>
+
+ * timevar.h (timevar_get): Remove.
+ * timevar.c (timevar_get): Remove unused function.
+
+2004-11-02 Joseph S. Myers <joseph@codesourcery.com>
+
+ * doc/include/texinfo.tex: Update from Texinfo CVS.
+
+2004-11-02 Ben Elliston <bje@au.ibm.com>
+
+ * cppdefault.h (cpp_SYSROOT): Remove.
+ * cppdefault.c (cpp_SYSROOT): Likewise.
+
+2004-11-01 Andrew MacLeod <amacleod@redhat.com>
+
+ PR tree-optimization/16447
+ * tree-cfg.c (bsi_commit_one_edge_insert): Rename from
+ bsi_commit_edge_inserts_1, and make funtion external. Return new block.
+ (bsi_commit_edge_inserts): Use renamed bsi_commit_one_edge_insert.
+ * tree-optimize.c (pass_cleanup_cfg_post_optimizing): Enable listing.
+ * tree-flow.h (bsi_commit_one_edge_insert): Extern decl.
+ * tree-outof-ssa.c (rewrite_trees): Don't commit edges here.
+ (same_stmt_list_p): New. Return TRUE if edge is to be forwarded.
+ (identical_copies_p): New. Return true is two copies are the same.
+ (identical_stmt_lists_p): New. Return true if stmt lists are the same.
+ (analyze_edges_for_bb): New. Determine how best to insert edge stmts
+ for a basic block.
+ (perform_edge_inserts): New. Determine what to do with all stmts that
+ have been inserted on edges.
+ (remove_ssa_form): Analyze and commit edges from here.
+
+2004-11-01 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR bootstrap/18232
+ * bitmap.h (bmp_iter_end_p): Take a const pointer instead of a struct.
+ (EXECUTE_IF_SET_IN_BITMAP): Update call to bmp_iter_end_p.
+ (EXECUTE_IF_AND_COMPL_IN_BITMAP): Likewise.
+ (EXECUTE_IF_AND_IN_BITMAP): Likewise.
+
+2004-11-01 Joseph S. Myers <joseph@codesourcery.com>
+
+ PR c/18239
+ * c-decl.c (get_parm_info): Allow FUNCTION_DECLs to appear amongst
+ parameter declarations.
+
+2004-11-01 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.c (regclass_map): Put reg 33 (cc) to CC_REGS group.
+ (s390_secondary_input_reload_class)
+ (s390_secondary_output_reload_class): Use GENERAL_REGS to reload a cc
+ register.
+ (s390_expand_cmpmem): Enable cmpmem implementation.
+ * config/s390/s390.h (reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS):
+ Added three new classes: CC_REGS, ADDR_CC_REGS, GENERAL_CC_REGS.
+ (REG_CLASS_FROM_LETTER): New constraint 'c' added.
+ * config/s390/s390.md ("movcc"): New insn pattern.
+ * doc/md.texi: Document 'c' constraint for s390.
+
+2004-11-01 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/18064
+ * doc/extend.texi (Deprecated Features): Deprecate G++ covariant
+ extension.
+
+2004-10-16 Daniel Berlin <dberlin@dberlin.org>
+
+ Fix PR tree-optimization/17672
+ Fix PR tree-optimization/18168
+
+ * lambda-code.c (lambda_lattice_compute_base): Fix reversed
+ assert test.
+ (gcc_tree_to_linear_expression): Add extra to existing constant.
+ (depth_of_nest): Factor out function used in various places.
+ (gcc_loop_to_lambda_loop): Clean up code a little bit. No
+ functional changes.
+ (find_induction_var_from_exit_cond): Stop guessing, and just
+ get the right answer :).
+ (gcc_loopnest_to_lambda_loopnest): Remove useless pre-allocation.
+ Print out message about result of attempt to create perfect nest.
+ (lbv_to_gcc_expression): Add type argument, use it to do math
+ and induction variable creation.
+ (lle_to_gcc_expression): Ditto.
+ (lambda_loopnest_to_gcc_loopnest): Create new iv with same type as
+ oldiv. Pass type argument to lle_to_gcc_expression and
+ lbv_to_gcc_expression.
+ Reset number of iterations after transformation.
+ (perfect_nestify): Remove useless pre-allocation, and cleanup
+ a small amount.
+
+ * tree-data-ref.c (build_classic_dist_vector): Return false for
+ dependences completely outside of the loop nest we asked about.
+ (build_classic_dir_vector): Ditto.
+ (compute_data_dependences_for_loop): Only add dependence relations
+ inside the loop we asked about.
+
+ * tree-loop-linear.c (linear_transform_loops): Use DDR_SIZE_VECT.
+ Compute immediate uses.
+
+ * tree-optimize.c: Move linear_transform_loops to before ivcanon.
+
+2004-11-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-cfg.c (thread_jumps): Fix a comment typo.
+
+2004-11-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-cfg.c (thread_jumps): Fix a comment typo.
+
+2004-10-31 Nicolas Pitre <nico@cam.org>
+
+ * config/arm/ieee754-sf.S (floatdisf): Fix regression with
+ values smaller than 2^32.
+
+2004-10-31 Jeff Law <law@redhat.com>
+
+ * cfgloop.h (struct loop): Remove unused "nodes" field.
+ * timevar.def (TV_TREE_LOOP_BOUNDS): New.
+ * tree-data-ref.c (find_data_references_in_loop): Use get_loop_body
+ instead of calling flow_bb_inside_loop_p for every basic block
+ in the function.
+ * tree-ssa-loop.c (pass_record_bounds): Use TV_TREE_LOOP_BOUNDS.
+
+2004-10-31 Graham Stott <graham.stott@btinternet.com>
+
+ * config/pa/pa.md: (prefetch_64, prefetch_32): Fix typo. Use
+ INT_5_BITS instead of VAL_5_BITS_P.
+
+2004-10-31 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/14521
+ * tree-inline.c (inline_forbidden_p_1): Use %qF instead of '%F'
+ for consistent quoting in diagnostic messages.
+ (expand_call_inline): Likewise.
+ * tree-optimize.c (tree_rest_of_compilation): Likewise.
+ * tree-ssa.c (warn_uninitialized_var): Likewise.
+ (warn_uninitialized_phi): Likewise.
+
+2004-10-31 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_cannot_change_mode_class): Use a stricter
+ mode check.
+
+2004-10-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.c: Fix a comment typo.
+
+2004-10-31 Jason Merrill <jason@redhat.com>
+
+ PR middle-end/17526
+ * tree-gimple.c (is_gimple_mem_rhs): Also require a val for
+ aggregate types that are not BLKmode.
+
+2004-10-30 Ziemowit Laski <zlaski@apple.com>
+
+ * c-common.h (objc_lookup_ivar): Add second parameter to
+ prototype.
+ * c-typeck.c (build_external_ref): After looking up symbol,
+ pass it to objc_lookup_ivar() to decide whether it or the
+ ivar should be used, rather than deciding the issue locally.
+ * stub-objc.c (objc_lookup_ivar): Add an OTHER parameter,
+ which is simply returned in the non-ObjC case.
+
+2004-10-30 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * sdbout.c (sdbout_symbol): Do not output type .def statements
+ for builtin types.
+
+2004-10-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-common.c (catenate_strings): New.
+ (c_parse_error): Use it. Don't over-escape.
+
+2004-10-30 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.c (calc_live_regs): Declare reg as unsigned and
+ modify the for loop expressions for it. Remove unnecessary casts.
+ (sh_expand_prologue): Declare reg as unsigned.
+ (sh_gimplify_va_arg_expr): Initinalize lab_over.
+ (sh_handle_sp_switch_attribute): Add const qualifier appropriately.
+
+2004-10-30 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/invoke.texi (Darwin Options): Improve description of
+ how the subtype is chosen.
+
+2004-10-30 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/18096
+ * config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Check that
+ the stack adjustment, "size", is valid for Pmode. If the stack
+ frame is too large, generate a trap insn and issue a warning.
+
+2004-10-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-ssa-dom.c: Fix comment typos.
+
+2004-10-30 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.c (prepare_move_operands): Use operands[0]
+ for the output rtl if no_new_pseudos is set. Remove redundant
+ line.
+
+2004-10-30 Joseph S. Myers <joseph@codesourcery.com>
+
+ PR c/16666
+ * c-decl.c (start_function): Don't check for DECL_BUILT_IN when
+ determining whether to copy parameter types from a previous
+ prototype declaration.
+
+2004-10-29 Roger Sayle <roger@eyesopen.com>
+
+ PR rtl-optimization/17581
+ * cselib.c (cselib_process_insn): The last instruction of a libcall
+ block, with the REG_RETVAL note, should be considered in the libcall.
+ * gcse.c (do_local_cprop): Allow constants to be propagated outside
+ of libcall blocks.
+ (adjust_libcall_notes): Use simplify_replace_rtx instead of
+ replace_rtx to avoid creating invalid RTL in REG_RETVAL notes.
+
+2004-10-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-phinodes.c (create_phi_node): Don't zero PHI_REWRITTEN.
+
+2004-10-29 Jeff Law <law@redhat.com>
+
+ * tree-ssa-dom.c (struct edge_info): New structure holding
+ edge equivalences and edge redirection information.
+ (get_eq_expr_value, record_dominating_conditions): Kill.
+ (propagate_to_outgoing_edges): Renamed from cprop_into_phis.
+ Call record_edge_info.
+ (allocate_edge_info, free_edge_info): New.
+ (tree_ssa_dominator_optimize): Use propagate_to_outgoing_edges
+ rather than cprop_into_phis. Free all edge infos before threading
+ jumps.
+ (thread_across_edge): Allocate new edge info structures as needed
+ and store the redirection target into the edge info structure
+ instead of the edge's AUX field.
+ (dom_opt_initialize_block): Mark unused argument with ATTRIBUTE_UNUSED.
+ (record_equivalence_from_incoming_edge): Lose unnecessary argument.
+ Revamp code which finds and records equivalences associated with
+ edges to use saved data in the edge_info structure.
+ (record_equivalencs_from_phis): Similarly.
+ (dom_opt_finalize_block): Revamp code which finds and records
+ equivalences associated with edges to use saved data in the
+ edge_info structure.
+ (build_and_record_new_cond): New function.
+ (record_conditions): Use build_and_record_new_cond to record
+ dominating conditions.
+ (record_edge_info): New function.
+ (record_range): Tighten test for conditions which create
+ useful range records.
+
+2004-10-29 Geoffrey Keating <geoffk@apple.com>
+
+ * config/i386/darwin.h (ASM_SPEC): Simplify.
+ (SUBTARGET_EXTRA_SPECS): Add darwin_subarch spec.
+ * config/rs6000/darwin.h (DARWIN_SUBARCH_SPEC): New.
+ (SUBTARGET_EXTRA_SPECS): Add darwin_subarch spec.
+ * config/darwin.h (LINK_COMMAND_SPEC): Don't pass -arch here.
+ (LINK_SPEC): Do pass -arch here. Handle -force_cpusubtype_ALL
+ in all cases. Pass the right -arch or -arch_only based on -mcpu.
+ (ASM_SPEC): Handle -force_cpusubtype_ALL.
+ * doc/invoke.texi (Darwin Options): Improve documentation for
+ Darwin linker (and libtool) switches.
+
+ * config/rs6000/darwin-fallback.c: Include <mach/thread_status.h>.
+
+2004-10-29 Stan Shebs <shebs@apple.com>
+
+ * config/rs6000/darwin-tramp.asm: Make more 64-bit-friendly.
+
+2004-10-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-phinodes.c (allocate_phi_node): New.
+ (make_phi_node, resize_phi_node): Use it.
+
2004-10-29 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/sysv4.h (TARGET_POWER): Define as 0.