+2005-12-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def (BUILT_IN_PUTC, BUILT_IN_PUTC_UNLOCKED): New.
+
+ * config/pa/pa.c (pa_init_builtins): If we detect
+ DONT_HAVE_FPUTC_UNLOCKED, set builtin fputc_unlocked to
+ putc_unlocked.
+
+2005-12-01 Richard Guenther <rguenther@suse.de>
+
+ * fold-const.c (fold_binary): Use fold_build2, not
+ fold (build (...)).
+
+2005-12-01 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/ms1/ms1.c (ms1_reorg_hazard): Don't count noop moves.
+
+ * vec.h (VEC_block_remove): New.
+
+2005-12-01 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PR c/13384
+ * c-common.c (lvalue_error): Fix wording.
+
+2005-12-01 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-forwprop.c (forward_propagate_addr_expr): Fix
+ thinko in last patch.
+
+2005-12-01 Geoffrey Keating <geoffk@apple.com>
+
+ * config/t-slibgcc-darwin (SHLIB_LINK): Use -single_module rather
+ than -flat_namespace.
+
+2005-12-01 Ben Elliston <bje@au.ibm.com>
+
+ * mklibgcc.in: Parameterise the script to build soft float
+ functions by iterating over each type, rather than cloning the
+ code for each type.
+
+2005-11-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ PR middle-end/25158
+ * builtins.c (fold_builtin_fputs): Defer check for missing
+ replacement functions.
+
+2005-11-30 Kean Johnston <jkj@sco.com>
+
+ * config/i386/i386.c: Check the value of SUPPORTS_ONE_ONLY, not
+ simply its presense in case targets #define SUPPORTS_ONE_ONLY 0.
+
+2005-11-30 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/22501
+ * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): New
+ function split out from ...
+ (forward_propagate_addr_expr): ... here. Use it to propagate
+ ADDR_EXPRs to all uses.
+
+2005-11-30 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * tree.h (CASE_FLT_FN, CASE_INT_FN): New macros.
+ * builtins.c (expand_builtin_mathfn): Use them.
+ (expand_builtin_mathfn_2): Likewise.
+ (expand_builtin_mathfn_3): Likewise.
+ (expand_builtin_int_roundingfn): Likewise.
+ (expand_builtin): Likewise.
+ (integer_valued_real_p): Likewise.
+ (fold_builtin_int_roundingfn): Likewise.
+ (fold_builtin_bitop): Likewise.
+ (fold_builtin_logarithm): Likewise.
+ (fold_builtin_1): Likewise.
+ * convert.c (convert_to_integer): Likewise.
+ * fold-const.c (negate_mathfn_p): Likewise.
+ (tree_expr_nonnegative_p): Likewise.
+
+2005-11-30 Dale Johannesen <dalej@apple.com>
+ Andrew Pinski <pinskia@physics.uc.edu>
+
+ * combine.c (find_split_point): Sign extend bitmask
+ when changing bitfield assignment to IOR of AND.
+
+2005-11-30 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/ms1/ms1.md (decrement_and_branch_until_zero): Add early
+ clobber to scratch reg.
+ (*decrement_and_branch_until_zero_no_clobber): Remove.
+ (decrement_and_branch peephole): Add dummy scratch reg to pattern.
+ (mulhish3): Use TARGET_MS1_16_003, TARGET_MS2.
+ * config/ms1/ms1.opt (mmul): Remove.
+ * config/ms1/ms1.h (ASM_SPEC): Cope with uppercase arch names.
+ (LINK_SPEC, STARTFILE_SPEC, ENDFILE_SPEC): Default to 16-002.
+
+2005-11-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+ Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * pa/predicates.md (symbolic_operand): Add comment.
+ * pa/pa.md (reload_insi_r1, reload_indi_r1): New reload expanders.
+ * pa/pa-protos.h (pa_secondary_reload_class): Delete.
+ * pa/pa.c (TARGET_SECONDARY_RELOAD): Define.
+ (pa_secondary_reload_class): Delete.
+ (pa_secondary_reload): New function derived from SECONDARY_RELOAD_CLASS
+ and pa_secondary_reload_class. Reorder some checks. Update inline
+ copy of symbolic operand.
+ * pa/pa.h (SECONDARY_RELOAD_CLASS): Delete.
+
+2005-11-30 Nathan Sidwell <nathan@codesourcery.com>
+
+ * loop-doloop.c (add_test): Only add jump notes if we did emit a
+ jump.
+
+2005-11-30 Jeff Law <law@redhat.com>
+
+ * tree-ssa-uncprop.c (associate_equivalences_with_edges): Properly
+ handle SSA_NAME_OCCURS_IN_ABNORMAL_PHI.
+
+2005-11-30 Jakub Jelinek <jakub@redhat.com>
+
+ * config/ia64/ia64.c (ia64_expand_tls_address): Add ORIG_OP1 argument.
+ Move ADDEND_{HI,LO} computation into TLS_MODEL_INITIAL_EXEC case.
+ (ia64_expand_move): Adjust caller.
+
+ * config/ia64/ia64.c (ia64_expand_atomic_op): Only use
+ fetchadd{4,8}.acq instruction if CODE is PLUS or MINUS, for MINUS
+ negate VAL.
+
+2005-11-30 Paolo Bonzini <bonzini@gnu.org>
+
+ * simplify-rtx.c (simplify_plus_minus): Remove final parameter.
+ Always produce an output if we can remove NEGs or canonicalize
+ (minus (minus ...)) expressions. Provide a fast path for the
+ two-operand case.
+ (simplify_gen_binary): Do not call simplify_plus_minus.
+ (simplify_binary_operation_1): Reassociate at the end of the
+ function.
+
+2005-11-29 Evan Cheng <evan.cheng@apple.com>
+
+ * config/i386/xmmintrin.h (_MM_TRANSPOSE4_PS): Rewrite using high/low
+ moves and unpack to speed up.
+
+2005-11-29 David S. Miller <davem@sunset.davemloft.net>
+
+ * config/sparc/sparc.c (gen_compare_reg): Kill 2nd and 3rd
+ argument, they are always sparc_compare_op0 and sparc_compare_op1.
+ (gen_v9_scc): Update callers.
+ * config/sparc/sparc.md: Likewise.
+ * config/sparc/sparc-protos.h: Update extern declaration.
+
+ * tree-into-ssa.c (rewrite_into_ssa): Fix comment typo.
+
+2005-11-29 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * fold-const.c (negate_expr) <case BIT_NOT_EXPR>: Add break after
+ the if.
+
+2005-11-29 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * fold-const.c (negate_expr_p): Return true for BIT_NOT_EXPR.
+ (fold_unary) <case NEGATE_EXPR>: Move -(~a) transformation to ...
+ (negate_expr): Here.
+
+2005-11-29 Ben Elliston <bje@au.ibm.com>
+
+ * config/i386/i386.h (FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN):
+ Fix typo in comment.
+
+2005-11-29 Ben Elliston <bje@au.ibm.com>
+
+ * Makefile.in (clean-target): Depend on clean-target-libgcc.
+ (clean-target-libgcc): Import rule from the top-level Makefile.in.
+
+2005-11-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ PR middle-end/20109
+ PR middle-end/25120
+ * builtins.c (init_target_chars): New.
+ (expand_builtin_printf, expand_builtin_fprintf,
+ expand_builtin_sprintf, fold_builtin_sprintf,
+ maybe_emit_sprintf_chk_warning, fold_builtin_sprintf_chk,
+ fold_builtin_snprintf_chk, fold_builtin_printf,
+ fold_builtin_fprintf): Check for matching format strings using
+ the target charset.
+
+2005-11-29 Paul Brook <paul@codesourcery.com>
+
+ * config.gcc: Do not use fixproto on m68k-elf.
+
+2005-11-28 Roger Sayle <roger@eyesopen.com>
+
+ * expmed.c (div_cost): Replace with...
+ (sdiv_cost, udiv_cost): New.
+ (init_expmed): Initialize sdiv_cost and udiv_cost, not div_cost.
+ Rename the div and mod fields, used to initialize sdiv_pow2_cheap
+ and smod_pow2_cheap, to sdiv_32 and smod_32 to avoid confusion.
+ (expand_divmod): Replace use of div_cost with either sdiv_cost
+ or udiv_cost depending upon the signedness of the operation.
+
+2005-11-28 Alexandre Oliva <aoliva@redhat.com>
+
+ PR libfortran/24991
+ * config/darwin.c (machopic_indirection_name,
+ machopic_output_indirection): Follow transparent alias chain.
+
+2005-11-28 Alexandre Oliva <aoliva@redhat.com>
+
+ * varasm.c (ultimate_transparent_alias_target): Add comment.
+
+2005-11-28 Kazu Hirata <kazu@codesourcery.com>
+
+ * config/m68k/m68k.c (notice_update_cc): Use SET_DEST and
+ SET_SRC instead of XEXP where appropriate.
+
+2005-11-28 Joseph S. Myers <joseph@codesourcery.com>
+
+ * config/fp-bit.c (isnan, isinf, pack_d, unpack_d): Use
+ __builtin_expect.
+
+2005-11-28 Joseph S. Myers <joseph@codesourcery.com>
+
+ * config/fp-bit.h (LSHIFT): Take shift count parameter.
+ * config/fp-bit.c (_fpadd_parts): Shift in one go instead of one
+ bit at a time.
+
+2005-11-28 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * config/bfin/bfin.c (bfin_secondary_reload): Renamed from
+ secondary_input_reload_class, made static. Adapt to new
+ infrastructure.
+ (secondary_output_reload_class): Delete.
+ (TARGET_SECONDARY_RELOAD): New macro.
+ * config/bfin/bfin.h (SECONDARY_INPUT_RELOAD_CLASS,
+ SECONDARY_OUTPUT_RELOAD_CLASS): Delete.
+
+2005-11-28 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/21166
+ * c-decl.c (finish_struct): Only set DECL_PACKED on a field
+ when its natural alignment is > BITS_PER_UNIT.
+ * stor-layout.c (finalize_type_size): Revert my patch of 2005-08-08.
+ * c-common.c (handle_packed_attribute): Ignore packing on a field
+ whose type is naturally char aligned.
+
+2005-11-28 Richard Guenther <rguenther@suse.de>
+
+ * c-common.c (strict_aliasing_warning): Handle all
+ component-ref like accesses.
+
+2005-11-28 Roger Sayle <roger@eyesopen.com>
+ Uros Bizjak <uros@kss-loka.si>
+
+ PR middle-end/20219
+ * fold-const.c (fold binary) <RDIV_EXPR>: Optimize
+ sin(x)/tan(x) as cos(x) and tan(x)/sin(x) as 1.0/cos(x)
+ when flag_unsafe_math_optimizations is set and
+ we don't care about NaNs or Infinities.
+
+ Move x/expN(y) and x/pow(y,z) transformation into common
+ flag_unsafe_math_optimizations section.
+
+2005-11-27 Mark Mitchell <mark@codesourcery.com>
+
+ * gcc.c (main): Change type of argv to "char **".
+
+2005-11-28 Alan Modra <amodra@bigpond.net.au>
+
+ * doc/invoke.texi (powerpc msdata-data): Static data doesn't go in
+ small data sections.
+ * config/rs6000/rs6000.c (rs6000_elf_in_small_data_p): Make global.
+ * config/rs6000/rs6000-protos.h: (rs6000_elf_in_small_data_p): Declare.
+ * config/rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_LOCAL): Rename to..
+ (ASM_OUTPUT_ALIGNED_DECL_LOCAL): ..this, adding extra parm. Don't
+ output locals to sbss if !rs6000_elf_in_small_data_p.
+ (ASM_OUTPUT_ALIGNED_BSS): Adjust for above.
+
+2005-11-28 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/24997
+ * config/rs6000/rs6000.c (legitimate_indexed_address_p): Allow pattern
+ generated by reload.
+ * config/rs6000/predicates.md (indexed_or_indirect_operand): Use
+ indexed_or_indirect_address.
+ (indexed_or_indirect_address): Don't test for base reg. Call
+ address_operand last. Make it a special predicate.
+
+2005-11-27 Kazu Hirata <kazu@codesourcery.com>
+
+ * config/m68k/m68k.c (notice_update_cc): Remove useless code.
+
+2005-11-27 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/24575
+ * fold-const.c (negate_expr_p): Add case for signed divides if overflow
+ is undefined.
+ (negate_expr): Likewise.
+
+2005-11-27 Andreas Schwab <schwab@suse.de>
+
+ * config/m68k/m68k.c: Reindent and fix whitespace, remove
+ redundant parens.
+
+2005-11-27 Steven Bosscher <stevenb@suse.de>
+
+ * cfgcleanup.c (try_crossjump_to_edge): Always split SRC2 if it
+ has EH predecessor edges.
+
+2005-11-26 Eric Christopher <echristo@apple.com>
+
+ * config/i386/i386.md (*zero_extendqihi2_movzbw): Avoid partial
+ register stalls by zero extending to the full register.
+
+2005-11-27 Joseph S. Myers <joseph@codesourcery.com>
+
+ * config/floatunsisf.c, config/floatunsidf.c,
+ config/floatunsixf.c, config/floatunsitf.c: New files.
+ * config/ia64/t-hpux: Add floatunsitf.c.
+ * config/ia64/ia64.c (ia64_init_libfuncs): Use
+ _U_Qfcnvxuf_dbl_to_quad for unsigned DImode-to-TFmode conversion.
+
+2005-11-26 Richard Henderson <rth@redhat.com>
+
+ * c-lex.c (pragma_lex): Rename from c_lex.
+ * c-pch.c: Update for pragma_lex rename.
+ * c-pragma.c, c-pragma.h, config/ia64/ia64-c.c: Likewise.
+ * config/m32c/m32c-pragma.c, config/darwin-c.c: Likewise.
+ * config/rs6000/rs6000-c.c, config/c4x/c4x-c.c: Likewise.
+ * config/sol2-c.c, config/v850/v850-c.c: Likewise.
+ * doc/tm.texi: Likewise.
+
+2005-11-26 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/23669
+ * fold-const.c (fold_binary): Convert -A/-B to A/B for signed types
+ when overflow is undefined.
+
+2005-11-26 Hans-Peter Nilsson <hp@axis.com>
+
+ * doc/md.texi (Insn Canonicalizations): Refer to the
+ function commutative_operand_precedence for further rules.
+
+2005-11-25 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/21309
+ * expmed.c (choose_mult_variant): Return immediately when mult_cost
+ is less than zero. Limit mult_cost to a reasonable upper bound for
+ the synthetic multiplication sequence.
+
+2005-11-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ PR middle-end/25022
+ * builtins.c (expand_builtin_printf, expand_builtin_fprintf,
+ fold_builtin_fputs, fold_builtin_printf, fold_builtin_fprintf):
+ Lookup the explicit replacement functions for any unlocked
+ stdio builtin transformations.
+
+2005-11-25 Hans-Peter Nilsson <hp@axis.com>
+
+ * config/cris/cris.md ("reload_out<mode>"): Mark operand 2 as
+ earlyclobber.
+ * targhooks.c (default_secondary_reload): Don't require operand 2
+ for an input reload to be earlyclobber.
+
+2005-11-25 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * fold-const.c (negate_mathfn_p): Fix comment and add support
+ for BUILT_IN_CBRT, BUILT_IN_SINH, BUILT_IN_TANH, BUILT_IN_ASINH,
+ BUILT_IN_ATANH.
+
+2005-11-25 Joseph S. Myers <joseph@codesourcery.com>
+
+ PR middle-end/24998
+ * config/sparc/sparc.c (sparc_init_libfuncs): Use _Q_utoq and
+ _Q_ulltoq for unsigned conversions from SImode and DImode to
+ TFmode.
+
+2005-11-25 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/ppc64-fp.c (__floatunditf): New function.
+ (__floatundidf, __floatundisf): Likewise.
+
+2005-11-25 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_sr_alias_set): Delete.
+ (rs6000_override_options): Remove initialization of
+ rs6000_sr_alias_set.
+ (rs6000_emit_eh_reg_restore): Use gen_frame_mem.
+ (rs6000_emit_stack_tie): Same.
+ (emit_frame_save): Same.
+ (gen_frame_mem_offset): Same.
+ (rs6000_emit_prologue): Same.
+ (rs6000_emit_epilogue): Same.
+
+2005-11-25 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/24989
+ * fold-const.c (fold_build): Convert bool_var != 1 and
+ bool_var == 0 to !bool_var.
+
+2005-11-25 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/24990
+ * fold-const.c (fold_binary): Fold (~a) == C to a == ~C
+ for C being INTEGER_CST. Likewise for !=.
+
+2005-11-25 Joseph S. Myers <joseph@codesourcery.com>
+
+ PR middle-end/24998
+ * config/rs6000/rs6000.c (rs6000_init_libfuncs): Use _q_utoq for
+ unsigned conversions from SImode to TFmode.
+
+2005-11-24 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * expr.c (expand_expr_real_1): Fix error in last change.
+
+2005-11-24 J"orn Rennecke <joern.rennecke@st.com>
+
+ * caller-save.c: (this_insn_sets): Move into:
+ (save_call_clobbered_regs).
+ (mark_set_regs): Get this_insn_sets from data.
+
+ (save_call_clobbered_regs): Take sets of the return value by
+ sibcalls into account.
+
+2005-11-24 J"orn Rennecke <joern.rennecke@st.com>
+ PR target/21623:
+
+ * regclass.c (FORBIDDEN_INC_DEC_CLASSES): Remove
+ SECONDARY_INPUT_RELOAD_CLASS and SECONDARY_OUTPUT_RELOAD_CLASS tests.
+ (init_fake_stack_mems): Remove HAVE_SECONDARY_RELOADS test.
+ (memory_move_secondary_cost, init_reg_autoinc): Remove
+ SECONDARY_INPUT_RELOAD_CLASS / SECONDARY_OUTPUT_RELOAD_CLASS tests.
+ Replace SECONDARY_{IN,OUT}PUT_RELOAD_CLASS use with
+ secondary_reload_class call.
+ (copy_cost): Likewise. Add new parameter prev_sri. Changed all
+ callers.
+ * reload.c (entire file): Remove HAVE_SECONDARY_RELOADS checks.
+ (push_secondary_reload): Use secondary_reload target hook.
+ (secondary_reload_class, scratch_reload_class): New functions.
+ (push_reload): Remove SECONDARY_INPUT_RELOAD_CLASS and
+ SECONDARY_OUTPUT_RELOAD_CLASS tests. Replace
+ SECONDARY_{IN,OUT}PUT_RELOAD_CLASS use with secondary_reload_class call.
+ * reload.h (HAVE_SECONDARY_RELOADS): Don't define nor test.
+ (secondary_reload_class, scratch_reload_class): Declare.
+ * reload1.c: Include target.h.
+ (reload_adjust_reg_for_temp): New function.
+ (reload_adjust_reg_for_icode): Likewise.
+ (choose_reload_regs): Remove SECONDARY_INPUT_RELOAD_CLASS test.
+ Replace SECONDARY_INPUT_RELOAD_CLASS use with secondary_reload_class
+ call.
+ (emit_input_reload_insns): Likewise. Rewrite secondary reload checks
+ for inheritance. Support case when both secondary & tertiary reloads
+ are for intermediate registers.
+ (emit_output_reload_insns): Replace SECONDARY_OUTPUT_RELOAD_CLASS use
+ with secondary_reload_class call. Support case when both secondary
+ & tertiary reloads are for intermediate registers.
+ * target-def.h (TARGET_SECONDARY_RELOAD): Provide default definition.
+ (TARGET_INITIALIZER) Add TARGET_SECONDARY_RELOAD.
+ * target.h (secondary_reload_info): New struct / typedef.
+ (struct gcc_target): New member secondary_reload.
+ * targhooks.c Include reload.h, optabs.h and recog.h.
+ (default_secondary_reload): New function.
+ * targhooks.h (default_secondary_reload): Declare.
+ * doc/tm.texi: Document secondary_reload target hook. Update
+ description of SECONDARY_*RELOAD_CLASS and reload_{in,out}<mode>.
+ * doc/md.texi: Likewise.
+
+ * sh-protos.h (sh_secondary_reload): Declare.
+ * sh.c (TARGET_SECONDARY_RELOAD): Override.
+ (sh_secondary_reload): New function.
+ * sh.h (SECONDARY_INOUT_RELOAD_CLASS): Don't define.
+ (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise.
+ (SECONDARY_INPUT_RELOAD_CLASS): Likewise.
+ (HAVE_SECONDARY_RELOADS): Define.
+ * sh.md (reload_indf): Rename to:
+ (reload_indf__frn).
+ (reload_outdf): Rename to:
+ (reload_outdf__RnFRm).
+ (reload_insf): Rename to:
+ (reload_insf__frn).
+ (reload_insi): Rename to:
+ (reload_insi__i_fpul).
+
+2005-11-24 Uros Bizjak <uros@kss-loka.si>
+
+ * configure.ac: Require at least texinfo 4.4.
+ * configure: Regenerate.
+
+ * doc/install.texi (Tools/packages necessary for building GCC):
+ Update required version of texinfo to at least 4.4.
+ (Installing GCC: Building): Update required version of texinfo
+ to at least 4.4.
+ (Installing GCC: Final installation): Update required version
+ of texi2dvi to at least 4.4.
+ (Host/target specific installation notes for GCC): Update required
+ version of texinfo to at least 4.4.
+
+2005-11-24 Richard Guenther <rguenther@suse.de>
+ Dirk Mueller <dmueller@suse.de>
+
+ PR c++/14024
+ * c-common.h (strict_aliasing_warning): Declare.
+ * c-common.c (strict_aliasing_warning): New function,
+ split out from ...
+ * c-typeck.c (build_c_cast): ... here.
+
+2005-11-24 Paolo Bonzini <bonzini@gnu.org>
+
+ * optabs.c (expand_binop): Use swap_commutative_operands_with_target
+ to order operands.
+ (swap_commutative_operands_with_target): New.
+
+2005-11-24 Paolo Bonzini <bonzini@gnu.org>
+
+ * gcse.c (hash_scan_set): Look through REG_EQUAL or REG_EQUIV notes
+ also when doing PRE, rather than only for global CPROP.
+
+2005-11-24 Ben Elliston <bje@au.ibm.com>
+
+ * machmode.h (CLASS_HAS_WIDER_MODES_P): New macro.
+ * optabs.c (expand_binop): Use CLASS_HAS_WIDER_MODES_P, improve
+ formatting.
+ (expand_twoval_unop): Likewise.
+ (widen_clz): Likewise.
+ (expand_parity): Likewise.
+ (expand_unop): Likewise.
+ (emit_cmp_and_jmp_insn_1): Likewise.
+ (prepare_float_lib_cmp): Likewise.
+
+2005-11-24 Ben Elliston <bje@au.ibm.com>
+
+ * optabs.c (prepare_cmp_insn): Use SCALAR_FLOAT_MODE_P.
+ Remove unused `class' variable.
+
+2005-11-23 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PR c++/21667
+ * c-typeck.c (build_array_ref): Avoid code duplicate. Use common
+ C/C++ diagnostic function warn_array_subscript_with_type_char.
+ * c-common.h (warn_array_subscript_with_type_char): Declare.
+ * c-common.c (warn_array_subscript_with_type_char): Define.
+
+2005-11-23 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PR c/21668
+ * c-decl.c (grokdeclarator): Don't warn for 'extern const' when
+ compiling at the intersection of C and C++.
+
+2005-11-23 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/invoke.texi: For man pages, include gcc-vers.texi.
+ List @file in the option summary. Include the libiberty
+ documentation for @file.
+ * gcc.c (main): Call expandargv.
+ * Makefile.in (gcc-vers.texi): Define srcdir.
+
+2005-11-23 Diego Novillo <dnovillo@redhat.com>
+
+ * passes.c (init_optimization_passes): Document
+ sequencing of passes.
+
+2005-11-23 Kazu Hirata <kazu@codesourcery.com>
+
+ * config/m68k/predicates.md (pcrel_address, extend_operator,
+ post_inc_operand, pre_dec_operand): Remove redundant
+ conditionals.
+ (const_uint32_operand, const_sint32_operand): Use gcc_assert
+ instead of abort.
+ (valid_dbcc_comparison_p): Rewrite in the lisp style.
+
+2005-11-23 Ben Elliston <bje@au.ibm.com>
+
+ * dwarf2.h (enum dwarf_type): Add DW_ATE_decimal_float.
+
+2005-11-22 J"orn Rennecke <joern.rennecke@st.com>
+
+ Preparatory work for PR target/21623:
+ * alpha.c (secondary_reload_class): Rename to:
+ (alpha_secondary_reload_class).
+ * alpha.h, alpha-protos.h: Likewise.
+ * mn10300.c (secondary_reload_class): Rename to:
+ (mn10300_secondary_reload_class).
+ * mn10300.h, mn10300-protos.h: Likewise.
+ * pa.c (secondary_reload_class): Rename to:
+ (pa_secondary_reload_class).
+ * pa.h, pa-protos.h: Likewise.
+ * rs6000.c (secondary_reload_class): Rename to:
+ rs6000_secondary_reload_class.
+ * rs6000.h, rs6000-protos.h: Likewise.
+
+2005-11-22 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR middle-end/22561
+ * tree-ssa-structalias.c (get_constraint_for): Handle ARRAY_RANGE_REF.
+
+2005-11-22 Ian Lance Taylor <ian@airs.com>
+
+ * optabs.c (expand_unop): Call SCALAR_FLOAT_MODE_P on a mode, not
+ a mode_class.
+ (prepare_cmp_insn): Likewise.
+
+2005-11-22 Kazu Hirata <kazu@codesourcery.com>
+
+ PR target/23435
+ * m68k.md (zero_extendsidi2): Force operands[1] to a register
+ if both operands[0] and operands[1] are memory.
+
+2005-11-22 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/23606
+ * fold-const.c (fold_unary) <case NOP_EXPR, CONVERT_EXPR>: For
+ COMPARISON_CLASS_P and an integral types create create a new
+ expression with the new type and fold that.
+
+2005-11-22 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/24988
+ * config/rs6000/darwin.h (TARGET_OS_CPP_BUILTINS): Remove call
+ to SUBTARGET_OS_CPP_BUILTINS.
+
+2005-11-22 Richard Earnshaw <richard.earnshaw@arm.com>
+
+ * arm.c (emit_set_insn): New function.
+ (arm_split_constant): Call it.
+ (arm_gen_compare_reg, arm_reload_in_hi, arm_reload_out_hi): Likewise.
+ (arm_legitimize_address): Likewise. Use plus_constant.
+ (arm_expand_prologue): Likewise. Use VOIDmode in SET.
+ (thumb_expand_prologue): Likewise.
+ (arm_gen_load_multiple): Use VOIDmode in SET.
+ (arm_gen_store_multiple): Likewise.
+ (vfp_emit_fstmx): Likewise. Use plus_constant.
+ (emit_multi_reg_push): Likewise.
+ (emit_sfm): Use plus_constant.
+
+2005-11-23 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/24954
+ * config/rs6000/predicates.md (easy_vector_constant_add_self): Fix
+ typo last change.
+
+2005-11-22 Alan Modra <amodra@bigpond.net.au>
+
+ PR middle-end/24950
+ * expmed.c (store_bit_field): Don't attempt to insv a field
+ larger than the reg.
+
+2005-11-22 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/24954
+ * config/rs6000/predicated.md (easy_vector_constant_add_self): Use
+ explicit sign extension, not a (char) cast.
+
+2005-11-22 Ben Elliston <bje@au.ibm.com>
+
+ * optabs.c: Use SCALAR_FLOAT_MODE_P instead of explicitly testing
+ GET_MODE_CLASS (x) == MODE_FLOAT.
+ * config/i386/i386.c: Likewise.
+ * config/rs6000/xcoff.h: Likewise.
+ * config/rs6000/linux64.h: Likewise.
+ * config/rs6000/rs6000.c: Likewise.
+ * config/rs6000/rs6000.h: Likewise.
+ * config/rs6000/predicates.md: Likewise.
+ * config/rs6000/sysv4.h: Likewise.
+
+2005-11-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-cppbuiltin.c (c_cpp_builtins): Define __pic__ and __PIC__ when
+ flag_pic is set.
+
+ * config/alpha/freebsd.h, config/alpha/linux.h,
+ config/arm/linux-elf.h, config/bfin/bfin.h,
+ config/cris/linux.h, config/darwin.h, config/freebsd-spec.h,
+ config/i386/beos-elf.h, config/i386/gnu.h,
+ config/i386/linux.h, config/i386/linux64.h, config/i386/nto.h,
+ config/i386/sco5.h, config/m32r/m32r.h, config/m68k/linux.h,
+ config/m68k/m68k.h, config/mips/linux.h, config/pa/pa-linux.h,
+ config/rs6000/linux64.h, config/rs6000/sysv4.h,
+ config/rs6000/vxworks.h, config/s390/linux.h, config/s390/tpf.h,
+ config/sh/linux.h, config/sh/sh.h, config/sol2.h,
+ config/sparc/linux.h, config/sparc/linux64.h,
+ config/xtensa/xtensa.h: Don't define __pic__ or __PIC__.
+
+ * doc/invoke.texi: Document that the macros __pic__ and __PIC__
+ are both defined when either flag -fpic or -fPIC are used.
+
+2005-11-22 Joseph S. Myers <joseph@codesourcery.com>
+
+ * config/fp-bit.c (clzusi): New function.
+ (si_to_float, usi_to_float): Use it to compute proper shift.
+ (usi_to_float): Preserve guard bits when shifting right.
+ * libgcc-std.ver (GCC_4.2.0): New version.
+ * libgcc2.c (__floatundixf, __floatunditf, __floatundidf,
+ __floatundisf): New functions.
+ * libgcc2.h (__floatundixf, __floatunditf, __floatundidf,
+ __floatundisf): Declare.
+ * mklibgcc.in (lib2funcs): Add _floatundidf, _floatundisf,
+ _floatundixf, and _floatunditf.
+ * optabs.c (expand_float): If target does not define a pattern for
+ signed or unsigned conversion, use an unsigned libcall instead of
+ a signed one.
+ (init_optabs): Initialize ufloat_optab.
+
+2005-11-22 Joseph S. Myers <joseph@codesourcery.com>
+
+ * config/rs6000/rs6000.opt (mmulhw): New option.
+ * doc/invoke.texi (-mmulhw): Document.
+ * config/rs6000/rs6000.c (rs6000_override_options): Enable -mmulhw
+ for 405 and 440.
+ * config/rs6000/rs6000.md: Add half-word multiply and
+ multiply-accumulate instructions for 405 and 440.
+
+2005-11-21 Joel Sherrill <joel.sherrill@oarcorp.com>
+
+ * config/arm/rtems-elf.h: Added definition of LINK_GCC_C_SEQUENCE_SPEC
+ which matches behavior of gcc 4.0 and older for RTEMS targets. The
+ default now includes a linker group which makes the RTEMS one nest.
+
+2005-11-22 Ben Elliston <bje@au.ibm.com>
+
+ * cse.c (fold_rtx): Typo fix.
+ (find_comparison_args): Pass the mode of arg1, not arg1 itself.
+
+2005-11-21 Richard Henderson <rth@redhat.com>
+
+ * c-common.c, config/darwin-c.c, c-decl.c, c-tree.h, c-objc-common.h,
+ langhooks-def.h, langhooks.h: Revert 2005-11-18 lookup_name patch.
+
+ * c-tree.h (lookup_name): Move declaration ...
+ * c-common.h (lookup_name): ... here.
+ * config/darwin-c.c: Include c-common.h.
+ * config/t-darwin: Update dependencies.
+
+2005-11-22 Ben Elliston <bje@au.ibm.com>
+
+ * optabs.c (expand_abs_nojump): Use SCALAR_FLOAT_MODE_P instead of
+ explicitly testing GET_MODE_CLASS (x) == MODE_FLOAT.
+ * genopinit.c (gen_insn): Likewise.
+ * reload.c (find_equiv_reg): Likewise.
+ * loop.c (load_mems): Likewise.
+ * rtlanal.c (may_trap_p_1, canonicalize_condition): Likewise.
+ * cse.c (find_comparison_args, fold_rtx): Likewise.
+ * dwarf2out.c (add_const_value_attribute): Likewise.
+ * expr.c (convert_move): Likewise.
+ * recog.c (general_operand, register_operand): Likewise.
+ * reg-stack.c (replace_reg): Likewise.
+ * tree-vect-generic.c (type_for_widest_vector_mode): Likewise.
+ * c-common.c (handle_vector_size_attribute): Likewise.
+ * simplify-rtx.c (simplify_const_unary_operation): Likewise.
+ (simplify_binary_operation_1): Likewise.
+ (simplify_const_binary_operation): Likewise.
+ (simplify_relational_operation): Likewise.
+ (simplify_const_relational_operation): Likewise.
+ (simplify_immed_subreg): Likewise.
+ * emit-rtl.c (gen_lowpart_common): Likewise.
+ * expmed.c (expand_mult): Likewise.
+ * stor-layout.c (layout_type): Likewise.
+
+2005-11-21 Paolo Bonzini <bonzini@gnu.org>
+
+ PR target/24951
+ * config/rs6000/rs6000.c (output_vec_const_move): Load cst and
+ cst2 only for SPE vectors.
+
+2005-11-21 David Edelsohn <edelsohn@gnu.org>
+
+ PR target/24953
+ * config/rs6000/predicates.md (vrsave_operation): Check
+ UNSPEC_VOLATILE value.
+
+2005-11-21 Jan Hubicka <jh@suse.cz>
+
+ PR tree-optimization/24653
+ * tree-ssa-ccp.c (ccp_fold): Strip down useless conversions.
+
+2005-11-21 Uros Bizjak <uros@kss-loka.si>
+
+ * config/i386/predicates.md (ax_reg_operand): New predicate.
+ (memory_displacement_only_operand): New predicate.
+ * config/i386/i386.md ("modrm" attribute): Return 0 if one
+ operand is AX register and the other operand is memory operand
+ with displacement only.
+