+2004-10-20 Mark Mitchell <mark@codesourcery.com>
+
+ * gthr-posix.h (__gthread_active_p): Use __extension__ around cast
+ from function pointer to void *.
+
+2004-10-20 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR target/18032
+ * config/sh/sh.c (sh_expand_epilogue): Emit a blockage insn before
+ the frame pointer adjustment when exception handling is enabled.
+
+2004-10-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * stor-layout.c: Fix a comment typo.
+
+2004-10-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c (store_field): Remove two arguments value_mode and
+ unsignedp.
+ (expand_assignment, store_constructor_field,
+ expand_expr_real_1): Adjust calls to store_field.
+
+2004-10-18 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
+
+ * config/arc/lib1funcs.asm (___umulsidi3): Correct usage of flags.
+
+ PR target/17317
+ * config/arc/arc.h (REGNO_OK_FOR_BASE_P,REGNO_OK_FOR_INDEX_P,
+ REG_OK_FOR_BASE, REG_OK_FOR_INDEX): Consider blink(r31) as a valid
+ base and index register for loads.
+
+ * config/arc/t-arc: Fix multilib handling.
+
+2004-10-20 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * cfgrtl.c (rtl_verify_flow_info_1): When checking insns in a bb,
+ don't inspect BLOCK_FOR_INSN for barriers.
+ * emit-rtl.c (emit_barrier_before): Revert last change.
+ (emit_barrier_after, emit_barrier): Ditto.
+
+ * doc/extend.texi (Extended Asm): Warn and provide example
+ solution for using a call-clobbered asm register.
+ (Local Reg Vars): Similar. Cross-reference example.
+
+2004-10-19 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * tree-cfg.c (group_case_labels): Look at the second to last
+ case statement for combing with the default case.
+
+2004-10-19 Richard Hendeson <rth@redhat.com>
+
+ PR 17962
+ * stor-layout.c (layout_type): Set TYPE_ALIGN for vectors.
+
+2004-10-19 Richard Hendeson <rth@redhat.com>
+
+ * builtins.c (expand_builtin_memmove): If fold_builtin_memmove
+ succeeds, only expand the result.
+
+2004-10-19 Richard Hendeson <rth@redhat.com>
+
+ PR middle-end/17885
+ * tree.c (recompute_tree_invarant_for_addr_expr): Always poll address
+ of INDIRECT_REF.
+
+2004-10-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-cfg.c (thread_jumps): Use a do-while loop instead of a
+ loop with goto.
+
+2004-10-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c (expand_assignment): Remove the last argument.
+ Change the return type to void.
+ * expr.h: Update the prototype of expand_assignment.
+ * function.c (assign_parm_setup_reg): Update a call to
+ expand_assignment.
+ * stmt.c (expand_asm_expr): Likewise.
+
+2004-10-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c (expand_expr_real_1) <MODIFY_EXPR>: Remove
+ unnecessary assignments to temp. Return const0_rtx.
+
+2004-10-19 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.c (sh5_schedule_saves): Fix typo.
+
+2004-10-18 Kelley Cook <kcook@gcc.gnu.org>
+
+ * configure.ac (powerpc-*-darwin*): Require assembler to support
+ .machine directive.
+ * configure: Regenerate.
+
+2004-10-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * reload1.c (ior_hard_reg_set): Remove.
+ (finish_spills): Use IOR_HARD_REG_SET instead of
+ ior_hard_reg_set.
+
+2004-10-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP): Speed up by shifting
+ the currently visited word to right.
+
+2004-10-18 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR middle-end/18045
+ * expmed.c (expand_smod_pow2): Handle modes whose size
+ is greater than that of HOST_WIDE_INT.
+
+2004-10-18 Ziemowit Laski <zlaski@apple.com>
+
+ * c-parse.in (reservedwords): Add OBJC_TYPE_QUAL as alternative.
+
+2004-10-18 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/17813
+ * dojump.c (discard_pending_stack_adjust): New function.
+ (clear_pending_stack_adjust): Call it.
+ * expr.h (discard_pending_stack_adjust): Declare it.
+ * explow.c (emit_stack_save): Emit pending stack adjustments
+ before saving the stack pointer.
+ (emit_stack_restore): Discard pending stack adjustments before
+ restoring the stack pointer.
+
+2004-10-18 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (handle_mode_attribute): Allow scalar->vector
+ type changes yet.
+
+2004-10-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c (expand_expr_real_1) [MODIFY_EXPR]: Don't request a
+ value to expand_assignment.
+
+2004-10-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-cfg.c (cleanup_tree_cfg): Don't iterate on
+ thread_jumps.
+ (thread_jumps): Iterate until no new forwarder block arises.
+
+2004-10-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-cfg.c (tree_forwarder_block_p): Don't set forwardable.
+ (thread_jumps): Use forwardable as cache of
+ tree_forwarder_block_p throughout the function.
+
+2004-10-18 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * cfg.c (dump_flow_info): Remove redundant dump of reg life info.
+
+2004-10-18 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/15014
+ PR middle-end/16973
+ * tree-cfg.c (remove_bb): If we have a label expression in the
+ basic block and the label we have taken the address, move the
+ label expression to the basic block which is previous in the
+ linked list.
+ (tree_verify_flow_info): Fix printing out the label name of the
+ problematic label expression.
+
+2004-10-18 Pat Haugen <pthaugen@us.ibm.com>
+
+ PR rtl-optimization/18002
+ * simplify-rtx.c (mode_signbit_p): Externalize function...
+ * rtl.h (mode_signbit_p): ... to here.
+ * combine.c (simplify_shift_const): Recognize PLUS signbit as
+ canonical form of XOR signbit and move to outer op.
+
+2004-10-18 Diego Novillo <dnovillo@redhat.com>
+
+ * tree-cfg.c (bsi_for_stmt): Rename from stmt_for_bsi.
+ Update all callers.
+ * tree-ssa.c (replace_immediate_uses): Call bsi_for_stmt.
+ Don't call fold_stmt more than once, use bsi_replace.
+
+2004-10-18 Diego Novillo <dnovillo@redhat.com>
+
+ PR tree-optimization/17656
+ * tree-ssa.c (replace_immediate_uses): When replacing a
+ constant, if the call to fold_stmt produced a different
+ statement, get an appropriate statement pointer by scanning
+ STMT's basic block.
+
+2004-10-18 Richard Henderson <rth@redhat.com>
+
+ * pointer-set.c (hash1): Don't use libm functions in fallback case.
+
+2004-10-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR bootstrap/17684
+ * Makefile.in (clean): Remove libgcc_s$(SHLIB_EXT).1.stage?.
+ (stage1-start): Remove and copy libunwind.a and
+ libunwind*$(SHLIB_EXT) instead of libunwind*.
+ (stage2-start): Likewise.
+ (stage3-start): Likewise.
+ (stage4-start): Likewise.
+ (stageprofile-start): Likewise.
+ (stagefeedback-start): Likewise.
+
+ * config/alpha/t-osf4 (SHLIB_LINK): Use a temporary file for
+ the shared library to be created and don't remove the existing
+ shared library.
+ * config/arm/t-netbsd (SHLIB_LINK): Likewise.
+ * config/i386/t-nwld (SHLIB_LINK): Likewise.
+ * config/mips/t-slibgcc-irix (SHLIB_LINK): Likewise.
+ * config/pa/t-hpux-shlib (SHLIB_LINK): Likewise.
+ * config/sh/t-linux (SHLIB_LINK): Likewise.
+ * config/t-libunwind-elf (SHLIBUNWIND_LINK): Likewise.
+ * config/t-slibgcc-darwin (SHLIB_LINK): Likewise.
+ * config/t-slibgcc-elf-ver (SHLIB_LINK): Likewise.
+ * config/t-slibgcc-sld (SHLIB_LINK): Likewise.
+
+ * mklibgcc.in (libgcc-stage-start): Also move "*${objext}s"
+ files.
+
+2004-10-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * basic-block.h (reg_set_iterator): New.
+ (EXECUTE_IF_SET_IN_REG_SET): Make it iterator style.
+ (EXECUTE_IF_AND_COMPL_IN_REG_SET): Likewise.
+ (EXECUTE_IF_AND_IN_REG_SET): Likewise.
+ * caller-save.c (save_call_clobbered_regs): Adjust to the new
+ style.
+ * cfgcleanup.c (thread_jump): Likewise.
+ * cfgrtl.c (safe_insert_insn_on_edge): Likewise.
+ * conflict.c (conflict_graph_compute): Likewise.
+ * flow.c (verify_local_live_at_start, update_life_info,
+ initialize_uninitialized_subregs, propagate_one_insn,
+ init_propagate_block_info, free_propagate_block_info,
+ propagate_block, dump_regset): Likewise.
+ * global.c (global_conflicts): Likewise.
+ * graph.c (start_bb): Likewise.
+ * local-alloc.c (update_equiv_regs): Likewise.
+ * loop.c (load_mems): Likewise.
+ * reload1.c (compute_use_by_pseudos, order_regs_for_reload,
+ find_reg, finish_spills): Likewise.
+ * resource.c (mark_target_live_regs): Likewise.
+ * sched-deps.c (sched_analyze_insn): Likewise.
+ * sched-rgn.c (sched-rgn.c): Likewise.
+ * config/frv/frv.c (frv_ifcvt_modify_tests): Likewise.
+
+2004-10-18 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (addqi_1_slp): Test for incdec_operand
+ operand 1 instead of 2
+
+2004-10-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * loop-unroll.c: Fix comment typos.
+
+2004-10-18 Revital Eres <eres@il.ibm.com>
+
+ * Makefile.in (loop-unroll.o): Add VARRAY_H dependency.
+ * loop-unroll.c: Include varray.h.
+ (struct var_to_expand, struct opt_info): Rename split_ivs_info to
+ opt_info and expand it to support variable expansion.
+ (analyze_insns_in_loop): Rename analyze_ivs_to_split and
+ expand it to support variable expansion.
+ (pt_info_start_duplication): Rename si_info_start_duplication.
+ (apply_opt_in_copies): Rename split_ivs_in_copies and add support
+ to the variable expansion optimization.
+ (free_opt_info): Rename free_si_info.
+ (analyze_insn_to_expand_var, referenced_in_one_insn_in_loop_p,
+ expand_var_during_unrolling, insert_var_expansion_initialization,
+ combine_var_copies_in_loop_exit, release_var_copies,
+ get_expansion): New functions.
+ (peel_loop_completely, unroll_loop_constant_iterations,
+ unroll_loop_runtime_iterations, peel_loop_simple,
+ unroll_loop_stupid): Change uses of struct si_info
+ to struct opt_info
+ and add uses of fvariable-expansion-in-unroller flag.
+ * params.def: Add parameter to restrict the number of expansions.
+ * params.h: (MAX_VARIABLE_EXPANSIONS): New define to restrict
+ the number of expansions.
+ * common.opt: (fvariable-expansion-in-unroller): New flag.
+ * doc/invoke.texi: (fvariable-expansion-in-unroller): Document.
+
+2004-10-18 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/cygming.h (TARGET_OS_CPP_BUILTINS): Define
+ __GXX_MERGED_TYPEINFO_NAMES to 0.
+
+2004-10-17 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * cfgrtl.c (rtl_verify_flow_info_1): When checking insns in a bb,
+ handle barriers in a bb by checking that it points to a NULL bb.
+ * emit-rtl.c (emit_barrier_before): Set BLOCK_FOR_INSN to NULL.
+ (emit_barrier_after, emit_barrier): Ditto.
+
+2004-10-18 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/extend.texi (Attribute Syntax): Clarify details of
+ attributes on parameters.
+
+2004-10-17 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * tree-ssa-loop-ivopts.c (tree_ssa_iv_optimize): Move checking out of
+ loop.
+
+2004-10-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ Revert:
+ 2004-10-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * c-typeck.c (default_function_array_conversion): Always create
+ &a[0] for array types.
+ (build_unary_op): Do not fold &a[x] into a + x.
+
+2004-10-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/17925
+ * cfgexpand.c (expand_gimple_cond_expr): Emit line notes for next basic
+ block if there is a goto with a locus.
+
+2004-10-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/elfos.h, config/gofast.h, config/interix.h,
+ config/netbsd.h, config/svr3.h, config/vxworks.h,
+ config/alpha/alpha-modes.def, config/alpha/alpha-protos.h,
+ config/alpha/ev4.md, config/alpha/ev5.md, config/alpha/ev6.md,
+ config/alpha/netbsd.h, config/arm/arm-modes.def,
+ config/arm/unknown-elf.h, config/c4x/c4x-modes.def,
+ config/cris/aout.h, config/frv/frv-modes.def,
+ config/i386/beos-elf.h, config/i386/gas.h,
+ config/i386/i386-coff.h, config/i386/i386-modes.def,
+ config/i386/linux.h, config/i386/linux64.h,
+ config/i386/mingw32.h, config/i386/netbsd-elf.h,
+ config/i386/netbsd64.h, config/i386/sco5.h,
+ config/i386/sol2.h, config/i386/uwin.h, config/i860/i860.md,
+ config/ia64/ia64-modes.def, config/ia64/itanium1.md,
+ config/ia64/itanium2.md, config/m68k/m68k-modes.def,
+ config/mips/mips-modes.def, config/mips/sdb.h,
+ config/mips/vr.h, config/mips/vxworks.h,
+ config/pa/pa-hpux10.h, config/pa/pa-hpux11.h,
+ config/pa/pa32-linux.h, config/rs6000/40x.md,
+ config/rs6000/7450.md, config/rs6000/8540.md,
+ config/rs6000/linuxspe.h, config/rs6000/power4.md,
+ config/rs6000/rs6000-modes.def, config/rs6000/rtems.h,
+ config/rs6000/spe.h, config/s390/2064.md, config/s390/linux.h,
+ config/s390/s390-modes.def, config/sh/elf.h,
+ config/sh/sh-modes.def, config/sh/sh64.h,
+ config/sparc/ultra1_2.md, config/sparc/ultra3.md,
+ config/stormy16/stormy16.md, config/v850/v850-protos.h,
+ config/vax/vax.md: Update copyright.
+
+2004-10-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c (expand_expr_real_1): Remove an obsolete comment.
+
+2004-10-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * c-typeck.c (default_function_array_conversion): Always create
+ &a[0] for array types.
+ (build_unary_op): Do not fold &a[x] into a + x.
+
+2004-10-17 Jakub Jelinek <jakub@redhat.com>
+
+ * pointer-set.c (hash1): Use integer part of 2^64 / phi
+ instead 2^32 / phi if long is 64-bit.
+
+2004-10-17 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-common.h (enum rid): Remove RID_PTRBASE, RID_PTREXTENT and
+ RID_PTRVALUE.
+ * c-parse.in (PTR_VALUE, PTR_BASE, PTR_EXTENT): Remove %token
+ declarations.
+ (reswords): Remove __ptrbase, __ptrbase__, __ptrextent,
+ __ptrextent__, __ptrvalue and __ptrvalue__.
+ (rid_to_yy): Remove RID_PTRBASE, RID_PTREXTENT and RID_PTRVALUE
+ entries.
+
+2004-10-16 Dale Johannesen <dalej@apple.com>
+
+ * c-common.c (c_common_get_alias_set): Use GGC for type_hash_table.
+
+2004-10-16 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR tree-optimization/17766
+ * basic-block.h (enum dom_state): DOM_CONS_OK removed.
+ (dom_info_available_p): Declare.
+ * cfghooks.c (split_block, make_forwarder_block): Use
+ dom_info_available_p.
+ * dominance.c (compute_dom_fast_query, calculate_dominance_info,
+ free_dominance_info, verify_dominators): Ditto.
+ (dom_info_available_p): New function.
+ * tree-cfg.c (cleanup_control_expr_graph): Free dominance information.
+ (thread_jumps): Use dom_info_available_p.
+ * tree-complex.c (expand_complex_div_wide): Ditto.
+ * tree-mudflap.c (mf_build_check_statement_for): Ditto.
+
+2004-10-16 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * tree-ssa-loop-ivopts.c (struct ivopts_data): New field important_candidates.
+ (find_best_candidate): Take also important candidates into account.
+ (find_optimal_iv_set): Initialize important_candidates bitmap.
+
+2004-10-16 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR tree-optimization/17560
+ * predict.c (tree_estimate_probability): Mark irreducible
+ loops.
+
+2004-10-16 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR rtl-optimization/17723
+ * cfgcleanup.c (merge_memattrs): Handle case when
+ MEM_SIZE == NULL_RTX.
+
+2004-10-15 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * toplev.c (dump_file_name): Change type to be const.
+
+2004-10-15 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (build_compound_expr, build_c_cast): Don't try to use
+ non_lvalue to stop something being a null pointer constant.
+
+2004-10-15 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.h (FUNCTION_ARG_REGNO_P): FPRs are only
+ available for TARGET_FPRS.
+ (FUNCTION_VALUE_REGNO_P): Same.
+
+2004-10-15 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/invoke.texi (RS/6000 and PowerPC Options): Document
+ -maltivec in same style as other ISA options.
+
+2004-10-15 Jon Grimm <jgrimm2@us.ibm.com>
+
+ * config/host-linux.c (TRY_EMPTY_VM_SPACE): Add __powerpc__
+ definition.
+
+2004-10-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bitmap.c, bitmap.h, builtin-attrs.def, cfglayout.h,
+ collect2.h, conflict.c, coretypes.h, coverage.h, errors.h,
+ gcc.h, gcov-dump.c, gen-protos.c, gencheck.c, gencodes.c,
+ genconstants.c, gengenrtl.c, genmodes.c, genpeep.c,
+ gensupport.h, graph.h, gthr-gnat.c, gthr-gnat.h, gthr-posix.c,
+ gthr-posix.h, hard-reg-set.h, hwint.h, integrate.h, libgcc2.c,
+ lists.c, machmode.def, mips-tdump.c, opts.h, params.c,
+ predict.def, predict.h, protoize.c, reload.h, resource.h,
+ rtl-error.c, sbitmap.c, sbitmap.h, sreal.c, tlink.c,
+ tree-dump.h, tree-inline.h, unwind-dw2-fde.c, unwind-dw2.c,
+ unwind-sjlj.c, value-prof.h: Update copyright.
+
+2004-10-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * pointer-set.c, tree-vectorizer.c: Fix comment typos.
+
2004-10-15 Diego Novillo <dnovillo@redhat.com>
* tree-optimize.c (execute_one_pass): Stop timer right after