OSDN Git Service

* varasm.c (default_assemble_visibility): Remove extra ().
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index dc9540c..5e05940 100644 (file)
@@ -1,3 +1,871 @@
+2005-03-21  Mike Stump  <mrs@apple.com>
+
+       * varasm.c (default_assemble_visibility): Remove extra ().
+
+2005-03-21  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/20557
+       * bb-reorder.c (duplicate_computed_gotos): Use can_duplicate_block_p
+       to determine whether a block can be duplicated, rather than test
+       whether the block contains noncopyable insns ourselves.
+
+2005-03-21  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/i860/i860.h (PREDICATE_CODES): Remove nonexistent
+       predicates.
+
+2005-03-21  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/ip2k/ip2k.h (target_flags, TARGET_SWITCHES): Delete.
+
+2005-03-21  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/fr30/fr30.h (TARGET_SMALL_MODEL_MASK, TARGET_SMALL_MODEL)
+       (TARGET_DEFAULT, target_flags, TARGET_SWITCHES): Delete.
+       * config/fr30/fr30.opt: New file.
+
+2005-03-18  Daniel Berlin  <dberlin@dberlin.org>
+       
+       Fix PR tree-optimization/20542
+
+       * tree-flow-inline.h (overlap_subvar): Move to here.
+       * tree-ssa-operands.c: From here.
+       * tree-flow.h (overlap_subvar): Declare.
+       * tree-ssa-alias.c (add_pointed_to_var): Use overlap_subvar here.
+       * tree-ssa-loop-im.c (is_call_clobbered_ref): Return proper answer
+       for variables with subvars.
+       
+2005-03-21 Mostafa Hagog <mustafa@il.ibm.com>
+
+       PR middle-end/20177
+       * ddg.c (create_ddg_dependence): Ignore reg-anti dependency.
+       * modulo-sched.c (const_iteration_count): Return on NULL
+       pre-header.
+       (print_node_sched_params): Return on NULL dump_file.
+       (generate_reg_moves): Handle reg-anti dependencies and disregard
+       closing branch when generating register moves.
+       (sms_schedule): Mark the SMSed block dirty.
+       * passes.c (rest_of_handle_sms): Call update_life_info for all
+       basic-blocks.
+       * testsuite/gcc.dg/20050321-1.c: New test.
+
+2005-03-21  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/lib1funcs.asm (__mulsi3): Use symbolic name for ACCLO.
+       * config/xtensa/xtensa.md (movsi_internal, movhi_internal,
+       movqi_internal): Likewise.
+
+2005-03-21  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa-protos.h: (xtensa_simm7, xtensa_uimm8,
+       xtensa_uimm8x2, xtensa_uimm8x4, xtensa_ai4const, xtensa_lsi4x4,
+       xtensa_b4const): Delete prototypes.
+       (xtensa_simm8, xtensa_simm8x256, xtensa_simm12b, xtensa_b4constu,
+       xtensa_mask_immediate, xtensa_mem_offset): Update prototypes.
+       (xtensa_b4const_or_zero, xtensa_const_ok_for_letter_p,
+       xtensa_extra_constraint): New prototypes.
+       (add_operand, arith_operand, nonimmed_operand, mem_operand,
+       mask_operand, extui_fldsz_operand, sext_operand, sext_fldsz_operand,
+       lsbitnum_operand, branch_operand, ubranch_operand, call_insn_operand,
+       move_operand, const_float_1_operand, fpmem_offset_operand,
+       branch_operator, ubranch_operator, boolean_operator): Delete prototypes.
+       * config/xtensa/xtensa.c (b4const_or_zero): Rename to ...
+       (xtensa_b4const_or_zero): ...this.  Change return type to bool and
+       argument type to HOST_WIDE_INT.
+       (xtensa_simm8, xtensa_simm8x256, xtensa_simm12b,
+       xtensa_mask_immediate): Likewise.
+       (xtensa_uimm8, xtensa_uimm8x2, xtensa_uimm8x4, xtensa_b4const):
+       Likewise.  Also make these functions static.
+       (xtensa_simm7, xtensa_ai4const, xtensa_lsi4x4): Delete.
+       (xtensa_const_ok_for_letter_p): New.
+       (add_operand, arith_operand, nonimmed_operand, mem_operand,
+       mask_operand, extui_fldsz_operand, sext_operand, sext_fldsz_operand,
+       lsbitnum_operand, branch_operand, ubranch_operand, call_insn_operand,
+       move_operand, const_float_1_operand, fpmem_offset_operand,
+       branch_operator, ubranch_operator, boolean_operator): Move to
+       predicates.md.
+       (smalloffset_mem_p): Inline code from xtensa_lsi4x4.
+       (xtensa_mem_offset): Change return type to bool.
+       (xtensa_extra_constraint): New.
+       (gen_int_relational): Update type of const_range_p function pointer.
+       Use xtensa_b4const_or_zero.
+       * config/xtensa/xtensa.h (CONST_OK_FOR_LETTER_P): Define to
+       xtensa_const_ok_for_letter_p.  Update comments.
+       (EXTRA_CONSTRAINT): Define to xtensa_extra_constraint.
+       (PREDICATE_CODES): Delete.
+       * config/xtensa/xtensa.md: Include predicates.md.
+       * config/xtensa/predicates.md: New file.
+
+2005-03-21  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/v850/v850-protos.h: Remove the prototypes for
+       reg_or_int9_operand, reg_or_const_operand,
+       pattern_is_ok_for_prepare, pattern_is_ok_for_dispose,
+       reg_or_0_operand, reg_or_int5_operand, call_address_operand,
+       movsi_source_operand, power_of_two_operand,
+       not_power_of_two_operand, special_symbolref_operand,
+       pattern_is_ok_for_prologue, pattern_is_ok_for_epilogue, and
+       register_is_ok_for_epilogue.
+       * config/v850/v850.c (reg_or_0_operand, reg_or_int5_operand,
+       reg_or_int9_operand, reg_or_const_operand,
+       call_address_operand, special_symbolref_operand,
+       movsi_source_operand, power_of_two_operand,
+       not_power_of_two_operand, register_is_ok_for_epilogue,
+       pattern_is_ok_for_epilogue, pattern_is_ok_for_prologue,
+       pattern_is_ok_for_dispose, pattern_is_ok_for_prepare): Move to
+       predicates.md.
+       * config/v850/v850.h (PREDICATE_CODES): Remove.
+       * config/v850/v850.md: Include predicates.md.
+       * config/v850/predicates.md: New.
+
+2005-03-21  Zack Weinberg  <zack@codesourcery.com>
+
+       * Makefile.in (BASEVER, DEVPHASE, DATESTAMP)
+       (BASEVER_c, DEVPHASE_c, DATESTAMP_c)
+       (BASEVER_s, DEVPHASE_s, DATESTAMP_s, version): Set with :=.
+       (itoolsdir, itoolsdatadir): Move definition above new first use.
+       (install-itoolsdirs): New rule.
+       (install-mkheaders): Depend on install-itoolsdirs, not
+       install-include-dir.
+
+2005-03-21  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-into-ssa.c: Remove obsolete comments.
+
+2005-03-21  Richard Guenther  <rguenth@gcc.gnu.org>
+
+       * tree-ssa-loop.c (gate_tree_complete_unroll): Run complete
+       unrolling if -fpeel-loops is specified, too.
+       * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely):
+       Remove superfluous check for flag_unroll_loops.
+
+2005-03-21  Uros Bizjak  <uros@kss-loka.si>
+
+       * optabs.h (enum optab_index): Add new OTI_lrint and OTI_llrint.
+       (lrint_optab, llrint_optab): Define corresponding macros.
+       * optabs.c (init_optabs): Initialize lrint_optab and llrint_optab.
+       * genopinit.c (optabs): Implement lrint_optab using lrintsi2
+       pattern and llrint_optab using llrintdi2 patterns.
+       * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_LRINT{,F,L}
+       using lrint_optab and BUILT_IN_LLRINT{,F,L} using llrint_optab.
+       (expand_builtin): Expand BUILT_IN_LRINT{,F,L} and
+       BUILT_IN_LLRINT{,F,L} using expand_builtin_mathfn if
+       flag_unsafe_math_optimizations is set.
+
+2005-03-21  Paolo Bonzini  <bonzini@gnu.org>
+
+       * combine.c (combine_simplify_rtx, simplify_if_then_else,
+       simplify_logical, if_then_else_cond, known_cond,
+       simplify_comparison): Adjust calls to reverse_comparison.
+       Don't use combine_reversed_comparison_code).
+       (combine_reversed_comparison_code): Remove.
+       (reversed_comparison): Using reversed_comparison_code, move it...
+       * jump.c (reversed_comparison): ... here.
+       * rtl.h (reversed_comparison): Add prototype.
+
+2005-03-21  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * builtins.c (fold_builtin): Take decomposed arguments of
+       CALL_EXPR.
+       * fold-const.c (fold_ternary): Update a call to fold_builtin.
+       * gimplify.c (gimplify_call_expr): Likewise.
+       * tree-ssa-ccp.c (ccp_fold, ccp_fold_builtin): Likewise.
+       * tree.h: Update the prototype of fold_builtin.
+
+2005-03-21  Paolo Bonzini  <bonzini@gnu.org>
+
+       * rtl.h (struct rtx_hooks): Add gen_lowpart_no_emit.
+       * rtlhooks.c (gen_lowpart_no_emit_general): New.
+       * rtlhooks-def.h (gen_lowpart_no_emit_general): Declare.
+       (RTL_HOOKS_GEN_LOWPART_NO_EMIT): New.
+       * simplify-rtx.c (simplify_binary_operation_1): Use it.
+
+2005-03-21  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * builtins.c (fold_builtin_1): Take decomposed arguments of
+       CALL_EXPR.
+       (fold_builtin): Update a call to fold_builtin_1.
+
+2005-03-21  Nathan Sidwell  <nathan@codesourcery.com>
+
+       PR other/20564
+       * gcov.c (output_lines): Only output function block summary when
+       outputting branch information.
+       * doc/gcov.texi: Document format of preamble and additional block
+       information lines.
+
+2005-03-21  Richard Sandiford  <rsandifo@redhat.com>
+
+       * libgcc2.h (LIBGCC2_HAS_SF_MODE): New macro.
+       (LIBGCC2_HAS_DF_MODE, LIBGCC2_HAS_TF_MODE, LIBGCC2_HAS_XF_MODE): Make
+       the defaults false if BITS_PER_UNIT != 8.
+       (SFtype, SCtype, __fixsfdi, __floatdisf, __fixunssfSI, __fixunssfDI)
+       (__powisf2, __divsc3, __mulsc3): Guard with LIBGCC2_HAS_SF_MODE rather
+       than BITS_PER_UNIT != 8.
+       (L_fixdfdi, L_fixsfdi, L_fixtfdi, L_fixunsdfdi, L_fixunsdfsi)
+       (L_fixunssfdi, L_fixunssfsi, L_fixunstfdi, L_fixunsxfdi, L_fixunsxfsi)
+       (L_fixxfdi, L_floatdidf, L_floatdisf, L_floatditf, L_floatdixf): Remove
+       #undefs.
+       * libgcc2.c (__fixunssfDI, __fixsfdi, __floatdisf, __fixunssfSI)
+       (__powisf2, __divsc3, __mulsc3): Guard with LIBGCC2_HAS_SF_MODE.
+
+2005-03-20  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/20539
+       * fold-const.c (fold_binary): Fix type mismatch between
+       TRUTH_{AND,OR,XOR}_EXPR nodes an their operands' types.
+       (fold_binary) <TRUTH_XOR_EXPR>: Avoid calling invert_truthvalue
+       for non-truth-valued expressions.
+
+       * c-common.c (c_common_truthvalue_conversion): Handle ERROR_MARK
+       and FUNCTION_DECL in the main switch.
+       <TRUTH_ANDIF_EXPR, TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR,
+       TRUTH_XOR_EXPR>: When changing the result type of these tree nodes,
+       we also need to convert their operands to match.
+       <TRUTH_NOT_EXPR>: Likewise.
+
+2005-03-21  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * c-common.c (lvalue_or_else): Replace by lvalue_error; only give
+       diagnostic without checking whether an lvalue.
+       * c-common.h (lvalue_p): Remove.
+       (enum lvalue_use): Update comment.
+       (lvalue_or_else): Replace by lvalue_error.
+       * c-typeck.c (lvalue_p): Make static.
+       (lvalue_or_else): New.  Call lvalue_error.
+
+2005-03-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/rs6000.c (rs6000_parm_start): New function.
+       (function_arg_advance): Use rs6000_parm_start.
+       (function_arg, rs6000_arg_partial_bytes): Likewise.
+
+2005-03-20  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * c-common.c (check_case_value): Adjust comment about stripping
+       NOPs.
+       (handle_vector_size_attribute): Don't strip NON_LVALUE_EXPR.
+       * c-typeck.c (default_conversion, convert_arguments,
+       build_modify_expr, convert_for_assignment, store_init_value,
+       digest_init): Use STRIP_TYPE_NOPS instead of stripping nops
+       manually.  Remove inaccurate comments.
+
+2005-03-20  Roger Sayle  <roger@eyesopen.com>
+           Joseph S. Myers  <joseph@codesourcery.com>
+
+       * varasm.c (do_assemble_alias): Restore comment describing function.
+       Annotate the target parameter as potentially unused.
+
+2005-03-20  Marek Michalkiewicz  <marekm@amelek.gda.pl>
+
+       PR target/18551
+       * config/avr/avr.c (avr_output_function_prologue): Do not use
+       current_function_name() in a label, use a local label instead.
+
+2005-03-20  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.c (rs6000_generate_compare): Test
+       flag_finite_math_only, not flag_unsafe_math_optimizations.
+
+2005-03-20  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * builtins.c (fold_builtin_1): Update a call to
+       targetm.fold_builtin.
+       * hooks.c (hook_tree_tree_bool_null): Rename to
+       hook_tree_tree_tree_bool_null.  Take one more argument of type
+       tree.
+       * hooks.h: Update the prototype of hook_tree_tree_bool_null.
+       * target-def.h (TARGET_FOLD_BUILTIN): Define it as
+       hook_tree_tree_tree_bool_null.
+       * target.h (gcc_target): Update the prototype of fold_builtin.
+       * config/alpha/alpha.c (alpha_fold_builtin): Take decomposed
+       arguments of CALL_EXPR.
+       * doc/tm.texi (TARGET_FOLD_BUILTIN): Update.  Mention the
+       new prototype.
+
+2005-03-20  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.h (cgraph_node): Add prev_clone pointer.
+       * cgraph.c (cgraph_remove_node): Remove from doubly linked chain.
+       (cgraph_clone_node): Produce doubly linked chain.
+
+2005-03-20  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * c-common.c (handle_aligned_attribute, check_function_sentinel,
+       get_nonnull_operand, handle_sentinel_attribute,
+       check_function_arguments_recurse): Do not strip NOPS from
+       INTEGER_CSTs.
+       * c-decl.c (check_bitfield_type_and_width, build_enumerator):
+       Likewise.
+       * c-format.c (get_constant): Likewise.
+       * c-parser.c (c_parser_postfix_expression): Likewise.
+       * c-typeck.c (set_init_index): Likewise.
+       (convert_arguments): Don't check for NOP_EXPR containing integer
+       constant.
+
+2005-03-20  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * builtins.c (fold_fixed_mathfn, fold_builtin_trunc,
+       fold_builtin_floor, fold_builtin_ceil, fold_builtin_lround):
+       Take decomposed arguments of CALL_EXPR.
+       (fold_builtin_1): Update calls to the functions mentioned
+       above.
+
+2005-03-20  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * c-decl.c (check_bitfield_type_and_width): Require bit-field
+       width to have integer type.
+       (build_enumerator): Require enumerator value to have integer type.
+
+2005-03-19  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * doc/extend.texi (__builtin_inf): Move statement about INFINITY
+       to __builtin_inff.
+
+2005-03-19  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * c.opt (ansi, std=iso9899:1990, std=iso9899:1999,
+       std=iso9899:199x): Correct descriptions.
+
+2005-03-19  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * config.gcc: Consistently use solaris2.1[0-9]* instead of
+       solaris2.1[0-9].
+
+2005-03-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * builtins.c (fold_builtin_memcpy): Take decomposed arguments
+       of CALL_EXPR.
+       (expand_builtin_memcpy, fold_builtin_1): Update calls to
+       fold_builtin_memcpy.
+
+       * builtins.c (fold_trunc_transparent_mathfn): Take decomposed
+       arguments of CALL_EXPR.
+       (fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil,
+       fold_builtin_found, fold_builtin_1): Update calls to
+       fold_trunc_transparent_mathfn.
+
+2005-03-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR middle-end/20493
+       * fold-const.c (fold_widened_comparison): Don't optimize casts of
+       function pointers on targets that require function pointer
+       canonicalization.
+       (fold_sign_changed_comparison): Likewise.
+
+2005-03-19  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * combine.c (try_combine): When changing the mode of a hard reg, make
+       sure that doing so is valid.
+
+2005-03-19  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/avr/avr.c (avr_init_stack, avr_mcu_name): Make static.
+       (TARGET_HANDLE_OPTION): Override default.
+       (avr_handle_option): New function.
+       * config/avr/avr.h (MASK_ALL_DEBUG, MASK_ORDER_1, MASK_INSN_SIZE_DUMP)
+       (MASK_ORDER_2, MASK_NO_TABLEJUMP, MASK_INT8, MASK_NO_INTERRUPTS)
+       (MASK_CALL_PROLOGUES, MASK_TINY_STACK, MASK_SHORT_CALLS)
+       (TARGET_ORDER_1, TARGET_ORDER_2, TARGET_INT8, TARGET_NO_INTERRUPTS)
+       (TARGET_INSN_SIZE_DUMP, TARGET_CALL_PROLOGUES, TARGET_TINY_STACK)
+       (TARGET_NO_TABLEJUMP, TARGET_SHORT_CALLS, TARGET_ALL_DEBUG)
+       (TARGET_SWITCHES, avr_init_stack, avr_mcu_name)
+       (TARGET_OPTIONS): Delete.
+       * config/avr/avr.opt: New file.
+
+2005-03-18  2005-03-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/m32r/m32r-protos.h: Remove the prototypes for
+       call_address_operand, symbolic_operand, seth_add3_operand,
+       cmp_int16_operand, uint16_operand, reg_or_int16_operand,
+       reg_or_uint16_operand, reg_or_cmp_int16_operand,
+       two_insn_const_operand, move_src_operand,
+       move_double_src_operand, move_dest_operand,
+       eqne_comparison_operator, signed_comparison_operator,
+       large_insn_p, conditional_move_operand, carry_compare_operand,
+       m32r_block_immediate_operand, extend_operand,
+       reg_or_eq_int16_operand, int8_operand, and
+       reg_or_zero_operand.
+       * config/m32r/m32r.c (call_address_operand, symbolic_operand,
+       seth_add3_operand, int8_operand, cmp_int16_operand,
+       uint16_operand, reg_or_int16_operand, reg_or_uint16_operand,
+       reg_or_eq_int16_operand, reg_or_cmp_int16_operand,
+       reg_or_zero_operand, two_insn_const_operand, move_src_operand,
+       move_double_src_operand, move_dest_operand,
+       eqne_comparison_operator, signed_comparison_operator,
+       extend_operand, small_insn_p, large_insn_p,
+       conditional_move_operand, carry_compare_operand,
+       m32r_block_immediate_operand): Move to predicates.md.
+       (MAX_MOVE_BYTES): Move to m32r.h.
+       * config/m32r/m32r.h (PREDICATE_CODES): Remove.
+       * config/m32r/m32r.md: Include predicates.md.
+       * config/m32r/predicates.md: New.
+
+2005-03-18  James E Wilson  <wilson@specifixinc.com>
+
+       PR c++/19769
+       * dwarf2out.c (declare_in_namespace): Ignore decls with an abstract
+       origin.
+
+2005-03-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/mn10300/mn10300-protos.h: Remove the prototypes for
+       call_address_operand, const_8bit_operand.
+       * config/mn10300/mn10300.c (call_address_operand,
+       const_8bit_operand, const_1f_operand): Move to predicates.md.
+       * config/mn10300/mn10300.h (PREDICATE_CODES): Remove.
+       * config/mn10300/mn10300.md: Include predicates.md.
+       * config/mn10300/predicates.md: New.
+
+2005-03-18  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * c-common.c, c-decl.c, c-format.c, c-typeck.c: Use %D for
+       declarations in diagnostics and %E for identifiers, not %s.
+
+2005-03-18  Jan Hubicka  <jh@suse.cz>
+           Dale Johannesen  <dalej@apple.com>
+
+       * basic-block.h (scale_bbs_frequencies_int,
+       scale_bbs_frequencies_gcov_type): Declare.
+       * cfg.c (RDIV): New macro.
+       (update_bb_frequency_for_threading): Fix.
+       * basic-block.h (scale_bbs_frequencies_int,
+       scale_bbs_frequencies_gcov_type): New.
+       * cfgloopmanip.c (scale_bbs_frequencies): Kill.
+       (scale_loop_frequencies, duplicate_loop_to_header_edge): Use
+       scale_bbs_frequencies_int.
+       * tree-ssa-loop-ch.c (copy_loop_headers): Fix profiling info.
+
+2005-03-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/m32r/m32r-protos.h: Remove the prototypes for
+       call_address_operand, symbolic_operand, seth_add3_operand,
+       cmp_int16_operand, uint16_operand, reg_or_int16_operand,
+       reg_or_uint16_operand, reg_or_cmp_int16_operand,
+       two_insn_const_operand, move_src_operand,
+       move_double_src_operand, move_dest_operand,
+       eqne_comparison_operator, signed_comparison_operator,
+       large_insn_p, conditional_move_operand, carry_compare_operand,
+       m32r_block_immediate_operand, extend_operand,
+       reg_or_eq_int16_operand, int8_operand, and
+       reg_or_zero_operand.
+       * config/m32r/m32r.c (call_address_operand, symbolic_operand,
+       seth_add3_operand, int8_operand, cmp_int16_operand,
+       uint16_operand, reg_or_int16_operand, reg_or_uint16_operand,
+       reg_or_eq_int16_operand, reg_or_cmp_int16_operand,
+       reg_or_zero_operand, two_insn_const_operand, move_src_operand,
+       move_double_src_operand, move_dest_operand,
+       eqne_comparison_operator, signed_comparison_operator,
+       extend_operand, small_insn_p, large_insn_p,
+       conditional_move_operand, carry_compare_operand,
+       m32r_block_immediate_operand): Move to predicates.md.
+       (MAX_MOVE_BYTES): Move to m32r.h.
+       * config/m32r/m32r.h (PREDICATE_CODES): Remove.
+       * config/m32r/m32r.md: Include predicates.md.
+       * config/m32r/predicates.md: New.
+
+       * config/pa/pa-protos.h: Add prototypes for magic_milli and
+       shadd_constant_p.
+       * config/pa/pa.c (reg_or_0_operand, call_operand_address,
+       symbolic_operand, symbolic_memory_operand,
+       reg_or_0_or_nonsymb_mem_operand, reg_before_reload_operand,
+       indexed_memory_operand, move_dest_operand, move_src_operand,
+       prefetch_cc_operand, prefetch_nocc_operand,
+       reg_or_cint_move_operand, pic_label_operand, fp_reg_operand,
+       arith_operand, arith11_operand, pre_cint_operand,
+       post_cint_operan, arith_double_operand, ireg_or_int5_operand,
+       ireg_operand, int5_operand, uint5_operand, int11_operand,
+       uint32_operand, arith5_operand, and_operand, ior_operand,
+       lhs_lshift_operand, lhs_lshift_cint_operand, arith32_operand,
+       pc_or_label_operand, div_operand, plus_xor_ior_operator,
+       shadd_operand, movb_comparison_operator,
+       cmpib_comparison_operator): Move to predicates.md.
+       (magic_milli, shadd_constant_p): Make it extern.
+       * config/pa/pa.h (PREDICATE_CODES): Remove.
+       * config/pa/pa.md: Include predicates.md.
+       * config/pa/predicates.md: New.
+
+       * config/v850/v850.h (PREDICATE_CODES): Remove a nonexistent
+       predicate.
+
+2005-03-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * hooks.c, hooks.h, intl.c, opts.h, prefix.c, tree-gimple.c,
+       config/alpha/ev4.md, config/alpha/ev5.md, config/alpha/ev6.md,
+       config/alpha/freebsd.h, config/alpha/linux.h,
+       config/alpha/netbsd.h, config/alpha/osf5.h,
+       config/alpha/vms.h, config/arc/arc.c, config/arc/arc.h,
+       config/h8300/h8300-protos.h, config/h8300/h8300.c,
+       config/h8300/h8300.h, config/ia64/unwind-ia64.c,
+       doc/cppopts.texi: Update copyright.
+
+2005-03-18  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/20225
+       * cgraph.c (cgraph_mark_reachable_node): Assert that it is not called
+       too late.
+       * varasm.c (find_decl_and_mark_needed): Mark needed only when not
+       called too late.
+
+2005-03-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-into-ssa.c (find_idf): Use VEC_quick_push instead of
+       VEC_safe_push.
+
+2005-03-18  Paolo Bonzini  <bonzini@gnu.org>
+
+       * combine.c (gen_binary): Remove.
+       (known_cond, simplify_shift_const, find_split_point,
+       combine_simplify_rtx, simplify_if_then_else, simplify_set,
+       simplify_logical, expand_field_assignment, extract_left_shift,
+       force_to_mode, if_then_else_cond, apply_distributive_law,
+       simplify_and_const_int, simplify_shift_const, gen_lowpart_for_combine,
+       simplify_comparison, reversed_comparison): Replace with
+       simplify_gen_binary, simplify_gen_relational or
+       distribute_and_simplify_rtx.
+       (distribute_and_simplify_rtx): New function.
+
+2005-03-18  Alexey Neyman  <alex.neyman@auriga.ru>
+           Paolo Bonzini  <gcc.gnu.org>
+
+       * calls.c (setjmp_call_p, special_function_p): Update comments
+       at the head of the functions.
+
+2005-03-18  Jan Hubicka  <jh@suse.cz>
+
+       * tree-cfg.c (fold_cond_expr_cond): Use boolean types for condition.
+
+       * cgraph.c (cgraph_remove_node): Avoid loop in code deciding whether
+       function body should be released; do not proactively release function
+       bodies in non-unit-at-a-time mode.
+
+2005-03-18  Ralf Corsepius  <ralf.corsepius@rtems.org>
+
+       * config/i386/t-rtems-i386 (MULTILIBS): Remove k6, athlon,
+       mno-fp-ret-in-387 multilib variants.
+
+2005-03-18  Richard Sandiford  <rsandifo@redhat.com>
+
+       * common.opt (m): Remove.
+       * opts.c (handle_option): Pass 'm' options to set_target_switch if
+       table lookup fails.
+       (common_handle_option): Remove OPT_m case.
+
+2005-03-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * builtins.c (fold_builtin_bitop): Take decomposed arguments
+       of CALL_EXPR.
+       (fold_builtin_1): Update a call to fold_builtin_bitop.
+
+       * builtins.c (fold_builtin_signbit): Take decomposed arguments
+       of CALL_EXPR.
+       (fold_builtin_1): Update a call to fold_builtin_signbit.
+
+2005-03-17  Dorit Naishlos  <dorit@il.ibm.com>
+
+       PR tree-optimization/20474
+       * tree-vect-analyze.c (vect_analyze_pointer_ref_access): Check the
+       size_type of the relevant pointer. Check for COMPLETE_TYPE_P.
+
+2005-03-17  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300-protos.h: Remove prototypes for
+       general_operand_src, general_operand_dst, single_one_operand,
+       single_zero_operand, call_insn_operand,
+       two_insn_adds_subs_operand, small_call_insn_operand,
+       jump_address_operand, bit_operand, bit_memory_operand,
+       stack_pointer_operand, const_int_gt_2_operand,
+       const_int_ge_8_operand, const_int_qi_operand,
+       const_int_hi_operand, incdec_operand, bit_operator,
+       nshift_operator, eqne_operator, gtle_operator,
+       gtuleu_operator, iorxor_operator.
+       Add prototypes for h8sx_shift_type h8sx_classify_shift and
+       h8300_ldm_stm_parallel.
+       * config/h8300/h8300.c (h8sx_shift_type,): Move to
+       h8300-protos.h.
+       (SYMBOL_FLAG_FUNCVEC_FUNCTION, SYMBOL_FLAG_EIGHTBIT_DATA,
+       SYMBOL_FLAG_TINY_DATA): Move to h8300.h.
+       (h8300_ldm_stm_parallel): Make it extern.
+       (h8300_ldm_parallel, h8300_stm_parallel,
+       h8300_return_parallel, general_operand_src,
+       general_operand_dst, h8300_dst_operand, h8300_src_operand,
+       nibble_operand, reg_or_nibble_operand, single_one_operand,
+       single_zero_operand, call_insn_operand,
+       two_insn_adds_subs_operand, small_call_insn_operand,
+       jump_address_operand, bit_operand, bit_memory_operand,
+       stack_pointer_operand, const_int_gt_2_operand,
+       const_int_ge_8_operand, const_int_qi_operand,
+       const_int_hi_operand, incdec_operand, eqne_operator,
+       gtle_operator, gtuleu_operator, iorxor_operator, bit_operator,
+       h8sx_binary_memory_operator, h8sx_unary_memory_operator,
+       h8sx_unary_shift_operator, h8sx_binary_shift_operator,
+       nshift_operator): Move to predicates.md.
+       * config/h8300/h8300.h (PREDICATE_CODES): Remove.
+       * config/h8300/h8300.md: Include predicates.md.
+       * config/h8300/predicates.md: New.
+
+2005-03-17  Richard Henderson  <rth@redhat.com>
+
+       * config.gcc (ia64*-*-hpux*): Add extra_options.
+       * config/ia64/hpux.h (SUBTARGET_SWITCHES): Remove.
+       (TARGET_DEFAULT): Remove MASK_INLINE_FLOAT_DIV_THR.
+       * config/ia64/ia64.c (ia64_fixed_range_string): Remove.
+       (ia64_tls_size_string, ia64_tune_string): Remove.
+       (ia64_tune): Init to PROCESSOR_ITANIUM2.
+       (TARGET_DEFAULT_TARGET_FLAGS): New.
+       (TARGET_HANDLE_OPTION): New.
+       (ia64_override_options): Move options parsing ...
+       (ia64_handle_option): ... here.  New.
+       * config/ia64/ia64.h (target_flags, MASK_BIG_ENDIAN, MASK_GNU_AS,
+       MASK_GNU_LD, MASK_NO_PIC, MASK_VOL_ASM_STOP, MASK_ILP32,
+       MASK_REG_NAMES, MASK_NO_SDATA, MASK_CONST_GP, MASK_AUTO_PIC,
+       MASK_INLINE_FLOAT_DIV_LAT, MASK_INLINE_FLOAT_DIV_THR,
+       MASK_INLINE_INT_DIV_LAT, MASK_INLINE_INT_DIV_THR,
+       MASK_INLINE_SQRT_LAT, MASK_INLINE_SQRT_THR, MASK_DWARF2_ASM,
+       MASK_EARLY_STOP_BITS, TARGET_BIG_ENDIAN, TARGET_GNU_AS, TARGET_GNU_LD,
+       TARGET_NO_PIC, TARGET_VOL_ASM_STOP, TARGET_ILP32, TARGET_REG_NAMES,
+       TARGET_NO_SDATA, TARGET_CONST_GP, TARGET_AUTO_PIC,
+       TARGET_INLINE_FLOAT_DIV_LAT, TARGET_INLINE_FLOAT_DIV_THR,
+       TARGET_INLINE_INT_DIV_LAT, TARGET_INLINE_INT_DIV_THR,
+       TARGET_INLINE_FLOAT_DIV, TARGET_INLINE_INT_DIV, TARGET_INLINE_SQRT_LAT,
+       TARGET_INLINE_SQRT_THR, TARGET_INLINE_SQRT, TARGET_DWARF2_ASM,
+       TARGET_EARLY_STOP_BITS): Remove.
+       (TARGET_ILP32): Default false.
+       (TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS): Remove.
+       (enum ia64_inline_type): New.
+       (TARGET_DEFAULT): Remove MASK_INLINE_FLOAT_DIV_THR.
+       * config/ia64/ia64.md: Update for new definitions of
+       TARGET_INLINE_INT_DIV, TARGET_INLINE_FLOAT_DIV, TARGET_INLINE_SQRT.
+       * config/ia64/ia64.opt: New file.
+       * config/ia64/ilp32.opt: New file.
+
+2005-03-17  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/18380
+       * config/ia64/unwind-ia64.c (_Unwind_FindTableEntry): Removed.
+
+2005-03-17  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.c (h8300_init_once): Use MASK_H8300S_1
+       instead of MASK_H8300S.
+       * config/h8300/h8300.h (target_flags, MASK_H8300S, MASK_MAC,
+       MASK_INT32, MASK_ADDRESSES, MASK_QUICKCALL, MASK_SLOWBYTE,
+       MASK_NORMAL_MODE, MASK_RELAX, MASK_H8300H, MASK_ALIGN_300,
+       MASK_H8300SX, TARGET_INT32, TARGET_ADDRESSES,
+       TARGET_QUICKCALL, TARGET_SLOWBYTE, TARGET_H8300H,
+       TARGET_H8300XS, TARGET_NORMAL_MODE, TARGET_ALIGN_300,
+       TARGET_SWITCHES): Remove.
+       (TARGET_H8300S): Redefine interms of TARGET_H8300S_1 and
+       TARGET_H8300SX.
+       * config/h8300/h8300.opt: New.
+
+       * config/alpha/alpha.opt, config/arc/arc.opt,
+       config/h8300/h8300.opt, config/mips/mips.opt: Add copyright
+       notices.
+
+2005-03-17  Ian Lance Taylor  <ian@airs.com>
+
+       * gmon.c: Remove.
+
+2005-03-17  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/arc/arc.c (arc_cpu_string): Make static.  Default to "base"
+       (arc_text_string, arc_data_string, arc_rodata_string): Make static.
+       (TARGET_HANDLE_OPTION): Override default.
+       (arc_handle_option): New function.
+       (arc_init): Remove code to set arch_cpu_string.
+       * config/arc/arc.h (target_flags, TARGET_MASK_MANGLE_CPU)
+       (TARGET_MANGLE_CPU, TARGET_MASK_MANGLE_CPU_LIBGCC)
+       (TARGET_MANGLE_CPU_LIBGCC, TARGET_MASK_ALIGN_LOOPS, TARGET_ALIGN_LOOPS)
+       (TARGET_MASK_BIG_ENDIAN, TARGET_BIG_ENDIAN, TARGET_MASK_NO_COND_EXEC)
+       (TARGET_NO_COND_EXEC, TARGET_SWITCHES, TARGET_DEFAULT)
+       (SUBTARGET_SWITCHES, arc_cpu_string, arc_text_string, arc_data_string)
+       (arc_rodata_string, TARGET_OPTIONS): Delete.
+       * config/arc/arc.opt: New file.
+
+2005-03-17  Richard Henderson  <rth@redhat.com>
+
+       * doc/extend.texi (Weak Pragmas): New section.
+       (attribute alias): Clarify that target must be in the same
+       translation unit.
+
+2005-03-17  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.opt: New file.
+       * config/alpha/alpha.c (alpha_tune): New.  Rename all existing uses
+       of alpha_cpu.
+       (alpha_cpu_string, alpha_tune_string, alpha_tp_string,
+       alpha_fprm_string, alpha_fptm_string): Make static.
+       (alpha_tls_size_string): Remove.
+       (alpha_handle_option): New.
+       (override_options): Update for alpha_cpu/alpha_tune split.
+       (alpha_file_start): Likewise.
+       (TARGET_DEFAULT_TARGET_FLAGS): New.
+       (TARGET_HANDLE_OPTION): New.
+       * config/alpha/alpha.h (alpha_tune): Declare.
+       (MASK_FP, MASK_FPREGS, TARGET_FPREGS, MASK_GAS, TARGET_GAS,
+       MASK_IEEE_CONFORMANT, TARGET_IEEE_CONFORMANT, MASK_IEEE, TARGET_IEEE,
+       MASK_IEEE_WITH_INEXACT, TARGET_IEEE_WITH_INEXACT, MASK_BUILD_CONSTANTS,
+       TARGET_BUILD_CONSTANTS, MASK_FLOAT_VAX, TARGET_FLOAT_VAX, MASK_BWX,
+       TARGET_BWX, MASK_MAX, TARGET_MAX, MASK_FIX, TARGET_FIX, MASK_CIX,
+       TARGET_CIX, MASK_EXPLICIT_RELOCS, TARGET_EXPLICIT_RELOCS,
+       MASK_SMALL_DATA, TARGET_SMALL_DATA, MASK_TLS_KERNEL, TARGET_TLS_KERNEL,
+       MASK_SMALL_TEXT, TARGET_SMALL_TEXT, MASK_LONG_DOUBLE_128,
+       TARGET_LONG_DOUBLE_128, MASK_CPU_EV5, TARGET_CPU_EV5, MASK_CPU_EV6,
+       TARGET_CPU_EV6, MASK_SUPPORT_ARCH): Remove.
+       (TARGET_SWITCHES, TARGET_OPTIONS): Remove.
+       (TARGET_DEFAULT): Remove MASK_FP.
+       (TARGET_FP): Redefined based on TARGET_SOFT_FP.
+       (TARGET_SUPPORT_ARCH): Default on if HAVE_AS_EXPLICIT_RELOCS.
+       (alpha_cpu_string, alpha_tune_string, alpha_fprm_string,
+       alpha_fptm_string, alpha_tp_string, alpha_mlat_string,
+       alpha_tls_size_string): Remove.
+       * config/alpha/alpha.md (prefetch): Use alpha_cpu.
+       (attribute tune): Rename from attribute cpu.
+       * config/alpha/ev4.md: Update to match.
+       * config/alpha/ev5.md, config/alpha/ev6.md: Likewise.
+       * config/alpha/freebsd.h (TARGET_DEFAULT): Remove MASK_FP.
+       * config/alpha/linux.h (TARGET_DEFAULT): Likewise.
+       * config/alpha/netbsd.h (TARGET_DEFAULT): Likewise.
+       * config/alpha/osf5.h (TARGET_DEFAULT): Likewise.
+       * config/alpha/vms.h (TARGET_DEFAULT): Likewise.
+
+2005-03-16  James E. Wilson  <wilson@specifixinc.com>
+
+       * config/ia64/ia64.c (issue_nops_and_insn): Check first_insn attribute,
+       and return without creating new state if before_nops_num is nonzero.
+       * config/ia64/ia64.md (first_insn): New attribute.
+       (alloc): Set it to yes.
+
+2005-03-16  Daniel Berlin  <dberlin@dberlin.org>
+
+       * tree-vectorizer.c (new_vec_stmt_info): Initialize
+       STMT_VINFO_SUBVARS to NULL.
+       * tree-vect-analyze.c (vect_analyze_data_refs): Ditto.
+
+2005-03-16 Dale Johannesen  <dalej@apple.com>
+
+       * rtlanal.c (find_first_parameter_load):  Rewrite to
+       return actual first param load or the call if none,
+       instead of first in block, when not all loads exist.
+
+2005-03-16  Roger Sayle  <roger@eyesopen.com>
+
+       * optabs.c (expand_copysign_absneg): Make static.
+       * optabs.h (expand_copysign_absneg): Delete prototype.
+       * config/rs6000/rs6000.md (copysigntf3): Delete pattern.
+
+2005-03-16  Richard Henderson  <rth@redhat.com>
+
+       PR middle-end/15700
+       * varasm.c (struct alias_pair): Rename from struct output_def_pair.
+       (alias_pairs): Rename from output_defs.
+       (find_decl_and_mark_needed): Split out from assemble_alias.
+       (do_assemble_alias): New.
+       (assemble_output_def): Remove.
+       (finish_aliases_1, finish_aliases_2): New.
+       (process_pending_assemble_output_defs): Remove.
+       (assemble_alias): Defer aliases for which we don't yet have a
+       non-external decl for the target symbol.
+       * passes.c (rest_of_decl_compilation): Register variables with cgraph.
+       * cgraphunit.c (cgraph_finalize_compilation_unit): Use finish_aliases_1.
+       * toplev.c (compile_file): Use finish_aliases_2 instead of
+       process_pending_assemble_output_defs.
+       * tree.h (finish_aliases_1, finish_aliases_2): Declare.
+       (process_pending_assemble_output_defs): Remove.
+
+2005-03-16  Daniel Berlin  <dberlin@dberlin.org>
+
+       Fix PR tree-optimization/20489
+
+       * tree-ssa-alias.c (push_fields_onto_fieldstack): DTRT
+       for empty structures.
+
+2005-03-16  Daniel Berlin  <dberlin@dberlin.org>
+
+       Fix PR tree-optimization/20490
+
+       * tree-ssa-pre.c (create_expression_by_pieces): Use
+       force_gimple_operand on result of fold.
+
+2005-03-16  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * config/i386/emmintrin.h (_mm_extract_epi16): Correct the number
+       of closing parenthesis.
+
+2005-03-16  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * builtins.c (expand_movstr): Update a call to
+       fold_builtin_strcpy.
+       (expand_builtin_strncpy): Update a call to
+       fold_builtin_strncpy.
+       (fold_builtin_strcpy, fold_builtin_strncpy): Take decomosed
+       arguments of CALL_EXPR.
+       (fold_builtin_1): Update calls to fold_builtin_strcpy and
+       fold_builtin_strncpy.
+       * tree-ssa-ccp.c (ccp_fold_builtin): Likewise.
+       * tree.h: Update the prototypes of fold_builtin_strcpy and
+       fold_builtin_strncpy.
+
+2005-03-16  Steven Bosscher  <stevenb@suse.de>
+           Dorit Naishlos  <dorit@il.ibm.com>
+
+       * tree-vect-analyze.c (vect_enhance_data_refs_alignment): Copy
+       UNITS_PER_SIMD_WORD to a local variable to avoid a "division by zero"
+       error.
+
+2005-03-16  Steven Bosscher  <stevenb@suse.de>
+
+       * tree-inline.c (walk_type_fields, walk_tree,
+       walk_tree_without_duplicates): Move from here...
+       * tree.c: ...to here.
+
+2005-03-15  Zack Weinberg  <zack@codesourcery.com>
+
+       * BASE-VER, DATESTAMP, DEV-PHASE: New files.
+       * Makefile.in (gcc_version, gcc_version_trigger, ): Delete.
+       (BASEVER, DEVPHASE, DATESTAMP, BASEVER_c, DEVPHASE_c, DATESTAMP_c)
+       (BASEVER_s, DEVPHASE_s, DATESTAMP_s): New variables.
+       (version): Define using $(BASEVER_c).
+       (Makefile, config.status, build/gcov-iov.o): No longer depends on
+       version.c.
+       (version.o): Depend on version files; add custom generation command.
+       (prefix.o): Define BASEVER on command line.
+       (s-iov): Depend on version files; adjust command.
+       (TEXI_CPP_FILES, TEX_IGCC_FILES, TEXI_GCCINT_FILES, TEXI_CPPINT_FILES):
+       Add gcc-vers.texi.
+       (gcc-vers.texi): New rule.
+       (doc/%.info, doc/%.dvi): Add -I . to command line.
+       (doc/gccinstall.dvi): Likewise.
+       (PACKAGE): Delete.  All uses replaced with "gcc".
+       * aclocal.m4: Do not include gcc-version.m4.
+       * configure.ac: Do not invoke TL_AC_GCC_VERSION.
+       Do not AC_SUBST nor AC_DEFINE PACKAGE or VERSION.
+       Set is_release based on contents of DEV-PHASE.
+       Set gcc_version based on contents of BASE-VER.
+       Define WIN32_REGISTRY_KEY only if the user overrode the default.
+       * config.in, configure: Regenerate.
+       * gccbug.in: Determine version of GCC in use at runtime.
+       * gcov-iov.c: Get version number and development phase from
+       command line, not by including version.c.
+       * intl.c: Replace all uses of PACKAGE with "gcc".
+       * libada-mk.in: Delete unused "gcc_version" variable.
+       * prefix.c: Default WIN32_REGISTRY_KEY to BASEVER.
+       * version.c: (VERSUFFIX): New hook for redistributors; adjust
+       commentary to match.
+       (version_string): Put together from pieces.
+       * config/alpha/x-vms: Do not use $(gcc_version).
+       * config/i386/t-nwld: Likewise.
+       * doc/include/gcc-common.texi: Include gcc-vers.texi for
+       version-GCC and DEVELOPMENT.
+
+2005-03-15  Roger Sayle  <roger@eyesopen.com>
+
+       PR tree-optimization/17454
+       * tree.c (tree_size): Add case for TREE_BINFO.
+       * fold-const.c (fold_checksum_tree): Only clear the overloaded
+       field TYPE_CACHED_VALUES if TYPE_CACHED_VALUES_P is set.
+
 2005-03-15  Roger Sayle  <roger@eyesopen.com>
 
        * optabs.c (expand_doubleword_mult): Avoid clobbering op0 and
 
        * config/mips/mips.h (DWARF_CIE_DATA_ALIGNMENT): Change for
        STACK_GROWS_DOWNWARD.
-       
+
 2005-03-14  Roger Sayle  <roger@eyesopen.com>
 
        * real.h (struct real_format): Split the signbit field into two
        subvars.
        * tree-tailcall.c (suitable_for_tail_opt_p): Look at STRUCT_FIELD
        tags too.
-       
+
 2005-03-14  Geoffrey Keating  <geoffk@apple.com>
 
        * doc/cppopts.texi (-fexec-charset): Add concept index entry.
 2005-03-14  Devang Patel  <dpatel@apple.com>
 
        * doc/invoke.texi: Add reference to Visibility document.
-       
+
 2005-03-14  Richard Sandiford  <rsandifo@redhat.com>
 
        * config.gcc (mips*-*-*): Rename MASK_SPLIT_ADDRS to
        * opth-gen.awk: Declare target_flags.  Declare MASK_* and TARGET_*
        macros for the "Mask" and "InverseMask" options.
        * opts.h (cl_var_cond): New enum.
-       (cl_option): Replace the "has_set_value" and "set_value" fields with 
+       (cl_option): Replace the "has_set_value" and "set_value" fields with
        "var_cond" and "var_value".
        (CL_TARGET): New macro.
        (option_enabled, print_filtered_help): Declare.
        (TARGET_USE_HIMODE_FIOP): New.
        (x86_use_simode_fiop): Rename from x86_use_fiop.
        (TARGET_USE_SIMODE_FIOP): Rename from TARGET_USE_FIOP.
-       
+
        * config/i386/i386.md (X87MODEI12): New mode macro define.
        (*cmpfp_<mode>): Rename from *cmpfp_si.  Use X87MODEI12 mode macro
        to implement x87 FP compare with HImode input operands.
 
        * expmed.c (expand_mult): Use synthetic multiplication sequences for
        more classes of DImode multiplication by constant.  Allow both
-       multiplication by small negative constants (by performing a 
+       multiplication by small negative constants (by performing a
        multiplication by a positive constant and negating the result) and
        multiplications by large powers of two, by using a left shift.
 
        Don't mark variables non-addressable if they still have
        addressable subvars.
        Also mark subvars addressable when the real variable is marked
-       addressable. 
+       addressable.
        (add_pointed_to_var): Try to prune the pointed-to set by only
        pointing to subvars when possible.
        Otherwise, make sure we set addresses_needed and pt_vars to
        (STMT_VINFO_SUBVARS): New macro.
 
        * common.opts: add flag_tree_salias.
-       
+
        * opts.c (decode_options): flag_tree_salias defaults to on.
-       
+
        * doc/invoke.texi: Document fdump-tree-svars and -ftree-salias.
 
        * doc/tree-ssa.texi: Document structural alias analysis.
-       
+
 2005-03-12  Steven Bosscher  <stevenb@suse.de>
 
        * tree-cfg.c (make_goto_expr_edges): Don't use error_mark_node.
 
 2005-03-12  Geoffrey Keating  <geoffk@apple.com>
 
-       * c-lex.c (c_lex_with_flags): Add parameter to call to 
+       * c-lex.c (c_lex_with_flags): Add parameter to call to
        cpp_spell_token.
 
 2005-03-11  Per Bothner  <per@bothner.com>
        ATTR_NOTHROW_NONNULL_1_4, ATTR_CONST_NOTHROW_NONNULL_1,
        ATTR_PURE_NOTHROW_NONNULL_1, ATTR_PURE_NOTHROW_NONNULL_1_2,
        ATTR_MALLOC_NOTHROW_NONNULL_1): Delete.
-       
+
        * builtins.def: Use the non-specific "nonnull" attibute lists.
 
 2005-03-11  Zdenek Dvorak  <dvorakz@suse.cz>
 
 2005-03-08  Fariborz Jahanian <fjahanian@apple.com>
 
-       * config/rs6000/rs6000.c (invalid_arg_for_unprototyped_fn): 
+       * config/rs6000/rs6000.c (invalid_arg_for_unprototyped_fn):
        Define the real function for ppc-darwin.
        * c-typeck.c (convert_arguments): Check for target-specific
        invalid argument call to unprototyped function.
-       * target-def.h (TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN): 
+       * target-def.h (TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN):
        New Macro.
-       * target.h (invalid_arg_for_unprototyped_fn): New field 
+       * target.h (invalid_arg_for_unprototyped_fn): New field
        in struct calls.
-       * targhooks.c (hook_invalid_arg_for_unprototyped_fn): New 
+       * targhooks.c (hook_invalid_arg_for_unprototyped_fn): New
        default target hook.
-       * targhooks.h (hook_invalid_arg_for_unprototyped_fn): 
+       * targhooks.h (hook_invalid_arg_for_unprototyped_fn):
        Declare.
 
 2005-03-08  Kazu Hirata  <kazu@cs.umass.edu>
        (alpha_v8qi_u, alpha_v8qi_s, alpha_v4hi_u, alpha_v4hi_s): New.
        (alpha_init_builtins): Init them.  Set nothrow and const attributes
        on builtins.
-       (alpha_fold_builtin_cmpbge, alpha_fold_builtin_zapnot, 
-       alpha_fold_builtin_extxx, alpha_fold_builtin_insxx, 
-       alpha_fold_builtin_mskxx, alpha_fold_builtin_umulh, 
+       (alpha_fold_builtin_cmpbge, alpha_fold_builtin_zapnot,
+       alpha_fold_builtin_extxx, alpha_fold_builtin_insxx,
+       alpha_fold_builtin_mskxx, alpha_fold_builtin_umulh,
        alpha_fold_vector_minmax, alpha_fold_builtin_perr,
        alpha_fold_builtin_pklb, alpha_fold_builtin_pkwb,
        alpha_fold_builtin_unpkbl, alpha_fold_builtin_unpkbw,
        * tree.h (DECL_IS_BUILTIN): Reverted my patch from earlier today.
 
 2005-03-06  Andrew Pinski  <pinskia@physics.uc.edu>
-       
+
        PR tree-opt/17671
        * tree-ssa-phiopt.c (tree_ssa_phiopt): Rewrite so we base the
        bbs on the COND_EXPR instead of the PHI_NODEs.
        * tree-cfg.c (remove_bb): If USE_MAPPED_LOCATION, change type of
        local variable loc. Change logic appropriately.
        * tree-vect-transform.c (vect_finish_stmt_generation): Use
-       EXPR_LOCATION rather than EXPR_LOCUS if USE_MAPPED_LOCATION.    
+       EXPR_LOCATION rather than EXPR_LOCUS if USE_MAPPED_LOCATION.
        * c-parser.c (c_parser_for_statement): Initialize loc variable.
        * tree.h (DECL_IS_BUILTIN): Temporarily revert definition of
        DECL_IS_BUILTIN in the USE_MAPPED_LOCATION because of jc1 issues.
        (ASM_SPEC): Pass down -msym32 and -mno-sym32.
 
 2005-03-04  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-04  Devang Patel  <dpatel@apple.com>
 
        * doc/invoke.texi: Remove reference to webpage that does not exist.
-       
+
 2005-03-04  John David Anglin  <dave.danglin@nrc-cnrc.gc.ca>
            Joseph S. Myers  <joseph@codesourcery.com>
 
 2005-03-04  Kazu Hirata  <kazu@cs.umass.edu>
 
        * fold-const.c (fold_ternary): Unroll the "for" loop to
-       extract operands.  
+       extract operands.
 
 2005-03-04  Andrew Haley  <aph@redhat.com>
 
 2005-03-03  Daniel Berlin <dberlin@dbrelin.org>
 
        Fix PR debug/20253
-       
+
        * c-opts.c (c_common_parse_file): Call start_source_file
        and end_source_file at the approriate times.
 
        * dwarf2out.c (dwarf2out_finish): Don't auto-end
        the main file, it will be done for us now.
-       
+
 2005-03-04  Kazu Hirata  <kazu@cs.umass.edu>
 
        * fold-const.c (fold_ternary): New.
        * config/darwin8.h (LIB_SPEC): Switch -lmx and -lSystem.
 
 2005-03-02  Devang Patel  <dpatel@apple.com>
-       
+
        Undo PR tree-optimization/18815 fix.
-       
+
 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,