OSDN Git Service

2005-03-17 H.J. Lu <hongjiu.lu@intel.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 55385ec..beaa6d5 100644 (file)
@@ -1,3 +1,867 @@
+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
+       op1 whilst expanding the signed widenening multiply variant.
+
+2005-03-15  Richard Sandiford  <rsandifo@redhat.com>
+
+       * toplev.c (display_target_options): Avoid unused variable warning if
+       TARGET_SWITCHES and TARGET_OPTIONS are both undefined.
+       * config/mips/mips.c (mips_arch_string, mips_tune_string): Make static.
+       (mips_isa_string, mips_abi_string, mips_fix_vr4130_string): Delete.
+       (mips_isa): Initialize to MIPS_ABI_DEFAULT.
+       (mips_isa_info): New variable.
+       (mips_parse_cpu): Remove the first argument and leave the caller
+       to report errors.
+       (TARGET_HANDLE_OPTION): Override default.
+       (mips_handle_option): New function.  Move option validation code from...
+       (override_options): ...here.  Update calls to mips_parse_cpu.
+       * config/mips/mips.h (mips_arch_string, mips_tune_string)
+       (mips_isa_string, mips_abi_string, TARGET_OPTIONS)
+       (SUBTARGET_TARGET_OPTIONS): Delete.
+       * config/mips/mips.opt (mabi=, march=, mflush-func=, mips)
+       (mno-flush-func, mtune=): New options.
+
+2005-03-15  Roger Sayle  <roger@eyesopen.com>
+           Richard Henderson  <rth@redhat.com>
+
+       * real.c (c4x_single_format, c4x_extended_format): Provide values
+       for signbit_ro for c4x's single and extended floating point formats.
+       * optabs.c (expand_copysign): Use the floating point format's
+       signbit_ro for expanding via expand_copysign_absneg, and it's
+       signbit_rw field for expanding via expand_copysign_bit.
+
+2005-03-15  Dorit Naishlos  <dorit@il.ibm.com>
+
+       * tree-vectorizer.h (unknown_alignment_for_access_p): Replaced by
+       known_alignment_for_access_p.
+       (known_alignment_for_access_p): New.
+       (do_peeling_for_alignment): Field made int instead of bool and renamed
+       to peeling_for_alignment.
+       (LOOP_DO_PEELING_FOR_ALIGNMENT): Renamed to LOOP_PEELING_FOR_ALIGNMENT.
+       * tree-vect-analyze.c (vect_determine_vectorization_factor): New. This
+       functionality used to be in vect_analyze_operations.
+       (vect_analyze_operations): Code to determine vectorization factor was
+       moved to vect_determine_vectorization_factor.
+       (vect_enhance_data_refs_alignment): Update to correct alignment when it
+       is known instead of -1.  Set LOOP_PEELING_FOR_ALIGNMENT to peeling
+       factor.
+       (vect_analyze_loop): Call vect_determine_vectorization_factor (used to
+       be part of vect_analyze_operations).
+       * tree-vectorizer.c (slpeel_tree_peel_loop_to_edge): Use fold when
+       creating the guard condition, as the number of iterations may be
+       constant.
+       (slpeel_tree_peel_loop_to_edge): Use new name of
+       LOOP_DO_PEELING_FOR_ALIGNMENT. Set it to 0 instead of false.
+       * tree-vect-transform.c (vect_gen_niters_for_prolog_loop): Handle known
+       alignment case more efficiently. Use LOOP_PEELING_FOR_ALIGNMENT.
+       (vect_do_peeling_for_alignment): Use fold.
+       (vect_transform_loop): Use new name of LOOP_DO_PEELING_FOR_ALIGNMENT.
+
+       (vect_update_inits_of_dr): Renamed to
+       vect_update_init_of_dr.
+       (vect_update_inits_of_drs): Use new name of vect_update_inits_of_dr.
+       (vectorizable_store): Fix assertion to use == instead of =.
+
+2005-03-15  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Don't clear
+       call_used_regs for wCG registers.
+
+2005-03-15  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.c (s390_secondary_output_reload_class): Adapt check
+       for non-offsettable memory references to cope with outstanding reload
+       replacements, take 2.
+
+2005-03-15  Uros Bizjak  <uros@kss-loka.si>
+
+       PR target/18668
+       * config/i386/i386.h (x86_fisttp): New.
+       (TARGET_FISTTP): New macro.
+       * config/i386/i386.c (x86_fisttp): Set for NOCONA.
+       (output_fix_trunc): Add fisttp parameter.  Generate fisttp x87
+       instruction when fisttp flag is set.
+       * config/i386/i386-protos.h (output_fix_trunc): Change declaration.
+
+       * config/i386/i386.md (type attribute): Add fisttp.
+       (unit attribute): Set to i387 for fisttp type.
+       (X87MODEF, X87MODEI, SSEMODEF, SSEMODEI24): New mode macros.
+       (fix_truncxfdi2, fix_truncxfsi2): Generate fisttp patterns for
+       TARGET_FISTTP.
+       (fix_truncdfdi2, fix_truncsfdi2, fix_truncdfsi2, fix_truncsfsi2):
+       Generate fisttp patterns for TARGET_FISTTP. Implement using mode
+       macros.
+       (fix_truncxfhi2, fix_truncdfhi2, fix_truncsfhi2): Generate fisttp
+       patterns for TARGET_FISTTP.  Enable patterns for
+       (TARGET_FISTTP && !TARGET_SSE_MATH). Implement using mode macros.
+       (fix_trunc<mode>_i387_fisttp_1, fix_trunc<mode>_i387_fisttp,
+       fix_trunc<mode>_i387_fisttp_with_temp): New instruction patterns to
+       implement fisttp x87 insn.
+       (fix_trunc*_i387_fisttp splitters): New patterns.
+       (*fix_truncdi_i387, *fix_truncsi_i387, *fix_trunchi_i387):
+       Rename to *fix_trunc<mode>_i387_1.  Implement using mode macros.
+       Disable patterns for TARGET_FISTTP.  Add comment about FLAGS_REG
+       clobber.
+       (fix_truncdi_memory, fix_truncdi_nomemory, fix_trunchi_nomemory):
+       Rename to fix_trunc<mode>_i387 and fix_trunc<mode>_i387_with_temp.
+       Implement using mode macros. Disable patterns for TARGET_FISTTP.
+       (fix_truncsi_memory, fix_truncsi_nomemory, fix_trunchi_memory,
+       fix_trunchi_nomemory): Rename to fix_trunc<mode>_i387 and
+       fix_trunc<mode>_i387_with_temp. Implement using mode macros.
+       Disable patterns for TARGET_FISTTP.
+       (fix_trunc*_i387 splitters): Implement usign mode macros.
+       (fix_truncdfdi_sse, fix_truncsfdi_sse, fix_truncdfsi_sse,
+       fix_truncsfsi_sse): Disable for (TARGET_FISTTP && !TARGET_SSE_MATH).
+       (fix_trunx*_sse peephole2s): Implement using mode macros.
+
+2005-03-15  J"orn Rennecke <joern.rennecke@st.com>
+
+       PR rtl-optimization/20291
+       * combine.c (try_combine): If splitting fails, re-try with
+       original combined pattern, i.e. before clobber stripping.
+
+2005-03-14  Eric Christopher  <echristo@redhat.com>
+
+       * 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
+       two fields, signbit_ro and signbit_rw.
+       * real.c (ieee_single_format, mips_single_format, ieee_double_format,
+       mips_double_format, ieee_extended_motorola_format,
+       ieee_extended_intel_96_format, ieee_extended_intel_96_round_53_format,
+       ieee_extended_intel_128_format, ibm_extended_format,
+       mips_extended_format, ieee_quad_format, mips_quad_format,
+       vax_f_format, vax_d_format, vax_g_format, i370_single_format,
+       i370_double_format, c4x_single_format, c4x_extended_format,
+       real_internal_format): Update initializers for new field.
+       * builtins.c (expand_builtin_signbit): Use signbit_ro field of the
+       real_format structure.
+       * optabs.c (expand_absneg_bit, expand_copysign): Use signbit_rw
+       field of the real_format structure.
+
+2005-03-14  Daniel Berlin <dberlin@dberlin.org>
+
+       Fix PR tree-optimization/20458
+
+       * tree-flow-inline.h (mark_call_clobbered): Don't fiddle
+       DECL_EXTERNAL on STRUCT_FIELD tags.
+       (clear_call_clobbered): Ditto.
+       * tree-ssa-operands.c (note_addressable): Make sure the original
+       variable doesn't slip into the addressable list if we have
+       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.
+       (-fwide-exec-charset): Likewise.
+       (-finput-charset): Likewise.
+       * doc/invoke.texi (Warning Options): Document -Wnormalized=.
+       * c-opts.c (c_common_handle_option): Handle -Wnormalized=.
+       * c.opt (Wnormalized): New.
+
+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
+       MASK_SPLIT_ADDRESSES.
+       * config/mips/mips.h (target_flags, mips_fix_vr4130_string): Delete.
+       (MASK_INT64, MASK_LONG64, MASK_SPLIT_ADDR, MASK_NO_FUSED_MADD)
+       (MASK_EXPLICIT_RELOCS, MASK_MEMCPY, MASK_SOFT_FLOAT)
+       (MASK_FLOAT64, MASK_ABICALLS, MASK_XGOT, MASK_LONG_CALLS)
+       (MASK_64BIT, MASK_EMBEDDED_DATA, MASK_BIG_ENDIAN)
+       (MASK_SINGLE_FLOAT, MASK_MAD, MASK_4300_MUL_FIX, MASK_MIPS16)
+       (MASK_NO_CHECK_ZERO_DIV, MASK_BRANCHLIKELY)
+       (MASK_UNINIT_CONST_IN_RODATA, MASK_FIX_R4000, MASK_FIX_R4400)
+       (MASK_FIX_SB1, MASK_FIX_VR4120, MASK_VR4130_ALIGN)
+       (MASK_FP_EXCEPTIONS, MASK_DIVIDE_BREAKS, MASK_PAIRED_SINGLE)
+       (MASK_MIPS3D, MASK_SYM32, MASK_DEBUG, MASK_DEBUG_D)
+       (MASK_MIPS_TFILE, TARGET_INT64, TARGET_LONG64, TARGET_FLOAT64)
+       (TARGET_64BIT, TARGET_SPLIT_ADDRESSES, TARGET_DEBUG_MODE)
+       (TARGET_DEBUG_D_MODE, TARGET_MEMCPY, TARGET_ABICALLS)
+       (TARGET_XGOT, TARGET_SOFT_FLOAT, TARGET_HARD_FLOAT)
+       (TARGET_LONG_CALLS, TARGET_EMBEDDED_DATA)
+       (TARGET_UNINIT_CONST_IN_RODATA, TARGET_BIG_ENDIAN)
+       (TARGET_SINGLE_FLOAT, TARGET_DOUBLE_FLOAT, TARGET_MAD)
+       (TARGET_FUSED_MADD, TARGET_4300_MUL_FIX, TARGET_CHECK_ZERO_DIV)
+       (TARGET_DIVIDE_TRAPS, TARGET_BRANCHLIKELY, TARGET_FIX_SB1)
+       (TARGET_FIX_R4000, TARGET_FIX_R4400, TARGET_FIX_VR4120)
+       (TARGET_FIX_VR4130, TARGET_VR4130_ALIGN, TARGET_FP_EXCEPTIONS)
+       (TARGET_PAIRED_SINGLE_FLOAT, TARGET_MIPS3D, TARGET_SYM32)
+       (TARGET_EXPLICIT_RELOCS): Delete.
+       (TARGET_SWITCHES, SUBTARGET_TARGET_SWITCHES): Delete.
+       (TARGET_OPTIONS): Remove entry for -mfix-vr4130.
+       * config/mips/mips.c (TARGET_DEFAULT_TARGET_FLAGS): Define.
+       (override_options): Set MASK_LONG64 if -mint64 is given and no
+       -mlongXX option is.  Complain about -mint64 -mlong32.
+       (override_options, CMP_BUILTINS, mips_bdesc, sb1_desc): Rename
+       MASK_PAIRED_SINGLE to MASK_PAIRED_SINGLE_FLOAT.
+       * config/mips/mips.opt: New file.
+
+2005-03-14  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config.gcc (extra_options): New variable for listing option files.
+       Add ${cpu_type}/${cpu_type}.opt to it if that file exists.
+       * configure.ac (extra_opt_files): New AC_SUBST variable.
+       (tm_file_list, tm_include_list): Include options.h first.
+       * configure: Regenerate.
+       * Makefile.in (extra_opt_files, ALL_OPT_FILES): New variables.
+       (s-options): Use $(ALL_OPT_FILES) instead of $(lang_opt_files)
+       (s-options-h): New rule.
+       (options.h): Depend on it.
+       (TEXI_GCCINT_FILES): Add options.texi.
+       * hooks.h (hook_bool_size_t_constcharptr_int_true): Declare.
+       * hooks.c (hook_bool_size_t_constcharptr_int_true): New function.
+       * target.h (gcc_target): Add default_target_flags and handle_option.
+       * target-def.h (TARGET_DEFAULT_TARGET_FLAGS)
+       (TARGET_HANDLE_OPTION): New macros.
+       (TARGET_INITIALIZER): Include them.
+       * opt-functions.awk (opt_args, nth_arg): New functions.
+       (switch_flags): Handle the "Target" flag.
+       (var_args): Delete.
+       (var_name): Use opt_args and nth_arg.
+       (var_set, var_ref): Likewise.  Handle "Mask" and "InverseMask".
+       * 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
+       "var_cond" and "var_value".
+       (CL_TARGET): New macro.
+       (option_enabled, print_filtered_help): Declare.
+       (decode_options): Move definition.
+       * opts.c (handle_option): Search for the original option before
+       removing any "no-" prefix.  Handle CL_TARGET.  Adjust for the new
+       var_cond and var_value fields.  Use targetm.handle_option to handle
+       target options.
+       (decode_options): Set target_flags to targetm.default_target_flags.
+       (print_filtered_help): Make global.  Handle CL_TARGET.
+       (option_enabled): New function.
+       * toplev.c (target_switches): Guard with #ifdef TARGET_SWITCHES.
+       (display_target_options, set_target_switch, print_switch_values)
+       (default_pch_valid_p): Guard uses of target_switches with
+       #ifdef TARGET_SWITCHES.  Also...
+       (display_target_options): Display the CL_TARGET entries in cl_options.
+       (set_target_option): Don't complain about the "" option when
+       TARGET_SWITCHES is undefined.
+       (print_switch_values): Use option_enabled.
+       (default_pch_valid_p): Check cl_options[] when looking for something
+       that has changed the value of target_flags.
+       * c.opt: Remove documentation from top of file.
+       * doc/gccint.texi: Add an "Options" chapter.  Include options.texi.
+       * doc/sourecebuild.texi: Refer to the new options documentation
+       instead of c.opt.  Document machine-specific .opt files.
+       * doc/tm.texi (target_flags): Say that this variable is declared
+       by options.h.
+       (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Document.
+       (TARGET_SWITCHES, TARGET_OPTIONS): Refer to the option files as
+       an alternative.
+       * doc/options.texi: New file.
+
+2005-03-14  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR middle-end/18628
+       * cse.c (fold_rtx_mem): Don't fold a load from a jumptable into a
+       register.
+
+2005-03-14  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR c++/20280
+       * gimplify.c (gimplify_cond_expr): Add fallback argument.  Use a
+       temporary variable of pointer type if an lvalues is required.
+       (gimplify_modify_expr_rhs): Request an rvalue from it.
+       (gimplify_expr): Pass fallback on.
+
+2005-03-14  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * cfgbuild.c: Update comments.
+
+2005-03-14  Roger Sayle  <roger@eyesopen.com>
+
+       PR rtl-optimization/17236
+       * optabs.c (expand_doubleword_mult): New helper function split out
+       from expand_binop.  Permute the order in which instructions are
+       emitted to minimize the number of simultaneously live registers.
+       (expand_binop): Call expand_doubleword_mult to synthesize a double
+       word multiplication.
+
+2005-03-14  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * basic-block.h: Update the prototypes of cached_make_edge and
+       rtl_make_eh_edge.
+       * cfg.c (cached_make_edge): Take edge_cache representing one
+       row of the adjacency matrix of edges.
+       * cfgbuild.c (make_label_edge, rtl_make_eh_edge): Likewise.
+       (make_edges): Initialize edge_cache to represent one row of
+       the adjacency matrix of edges.
+
+2005-03-14  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * tree-ssa-phiopt.c (minmax_replacement, blocks_in_phiopt_order):
+       New functions.
+       (tree_ssa_phiopt): Use blocks_in_phiopt_order and minmax_replacement.
+       Remove unused removed_phis variable.
+       (conditional_replacement): Use build1/build2.
+       (abs_replacement): Use last_and_only_stmt and build1/build2.
+
+2005-03-14  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * builtin-attrs.def (ATTR_NOVOPS, ATTR_NOVOPS_LIST,
+       ATTR_PURE_NOTHROW_NOVOPS_LIST): New.
+       * builtins.def (ATTR_MATHFN_FPROUNDING): Use NOVOPS.
+       (BUILT_IN_PREFETCH): Set the NOVOPS attribute.
+       * c-common.c (handle_novops_attribute): New function.
+       (c_common_attribute_table): Add "no vops" entry.
+       * c-decl.c (merge_decls): Copy DECL_IS_NOVOPS.
+       * calls.c (flags_from_decl_or_type): Set ECF_NOVOPS.
+       * tree-ssa-operands.c (get_call_expr_operands): Do not
+       create virtual operands for calls with ECF_NOVOPS flag.
+       * tree.h (DECL_IS_NOVOPS): New macro.
+       (struct tree_decl): Add novops_flag.
+       (ECF_NOVOPS): New constant.
+
+2005-03-14  Uros Bizjak  <uros@kss-loka.si>
+
+       PR target/17688
+       * config/i386/i386.c (x86_use_himode_fiop): New.
+       (x86_use_simode_fiop): Rename from x86_use_fiop.
+       * config/i386/i386.h (x86_use_himode_fiop): 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.
+       (*fp_jcc_8<mode>_387, splitter): Rename from *fp_jcc_8_387.
+       Use X87MODEI12 mode macro to handle HImode input operands.
+       (*fop_sf_2<mode>_i387, *fop_sf_3<mode>_i387, *fop_df_2<mode>_i387,
+       *fop_df_3<mode>_i387, *fop_xf_2<mode>_i387, *fop_xf_3<mode>_i387):
+       Renamed from *fop_sf_2_i387, *fop_sf_3_i387, *fop_df_2_i387,
+       *fop_df_3_i387, *fop_xf_2_i387, *fop_xf_3_i387. Use X87MODEI12 mode
+       macro to implement x87 operators with HImode input operands.
+       (fop splitters): Use X87MODEI12 mode macro to handle HImode
+       input operands.
+
+2005-03-14  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * tree-cfg.c (find_taken_edge_cond_expr): Use zero_p instead of
+       integer_zerop.
+       * tree-gimple.c (is_gimple_min_invariant): Consider overflowed
+       constants invariant.
+
+2005-03-14  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * basic-block.h (BB_VISITED): Removed.
+       * cfganal.c (dfs_enumerate_from): Do not use BB_VISITED flag.
+
+2005-03-14  Falk Hueffner  <falk@debian.org>
+
+       PR bootstrap/20424
+       * config/alpha/alpha.c (alpha_fold_builtin_cmpbge): Fix typo.
+
+2005-03-14  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * ggc-zone.c: Fix comment typos.
+
+       * alloc-pool.c, except.h, ggc-common.c, ggc-zone.c, ggc.h,
+       stringpool.c, config/mips/mips-protos.h: Update copyright.
+
+2005-03-14  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/rs6000-protos.h: Replace "struct rtx_def *"
+       throughout with its typedef, "rtx".
+       * config/rs6000/rs6000.c: Likewise.  Formatting fixes.
+       (rs6000_tls_symbol_ref_1): Remove inline keyword.
+       * config/rs6000/rs6000.h (REG_ALLOC_ORDER): Formatting.  Reorder
+       regs in comment to match code.
+
+2005-03-14  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * except.c (check_handled): Make it static.
+       * except.h: Remove the corresponding prototype.
+
+       * function.c (get_func_frame_size): Make it static.
+       * function.h: Remove the corresponding type.
+
+       * regclass.c (reg_class_superclasses, reg_class_subclasses):
+       Make them static.
+       * hard-reg-set.h: Remove the corresponding declarations.
+
+       * tree-cfg.c (verify_stmts): Check that
+       bb_for_stmt (stmt) == bb for every PHI node and statement.
+
+2005-03-14  Alan Modra  <amodra@bigpond.net.au>
+
+       * config.gcc: Remove excess indentation.
+       (powerpc*-*-*, rs6000-*-*): Accept --with-cpu/tune power5 and 8548.
+
+2005-03-13  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/19331
+       * tree.c (get_unwidened): Treat CONVERT_EXPR and NOP_EXPR identically.
+       * fold-const.c (fold_sign_changed_comparison): Likewise.
+       (fold_binary): Optimize comparisons against widened operands if
+       the extension is represented by a CONVERT_EXPR, same as a NOP_EXPR.
+
+2005-03-13  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * config/sparc/sparc.c (struct_value_alias_set): New global variable.
+       (sparc_override_options): Initialize it.
+       (sparc_struct_value_rtx): Set it on the MEM to be returned.
+
+2005-03-13  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/predicates.md (mem_or_easy_const_operand): Delete.
+       (reg_or_none500mem_operand): New predicate.
+       (zero_reg_mem_operand): New predicate.
+       * config/rs6000/rs6000.md (extendsfdf2): Change operand1 predicate
+       to reg_or_none500mem_operand.
+       (extendsfdf2_fpr): Add MEM alternative.
+       (extenddftf2_internal): Change operand2 predicate to
+       zero_reg_mem_operand.
+
+2005-03-13  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * ggc-zone.c: Rewritten.
+
+       * alloc-pool.c (dump_alloc_pool_statistics): Don't print statistics
+       if there are none.
+       * configure.ac: Define GGC_ZONE for --with-gc=zone.
+       * config.in: Regenerated.
+       * configure: Regenerated.
+       * gengtype.c (write_types_process_field, write_func_for_structure):
+       Pass new argument to gt_pch_note_object.
+       * ggc-common.c (struct ptr_data): Add TYPE.
+       (gt_pch_note_object): Take TYPE argument and save it.
+       (call_count): Update call to ggc_pch_count_object.
+       (call_alloc): Update call to ggc_pch_alloc_object.
+       (gt_pch_save): Call ggc_pch_prepare_write after paddng the PCH
+       file.
+       * ggc-none.c (rtl_zone, garbage_zone, ggc_alloc_zone_stat): Delete.
+       * ggc-page.c (rtl_zone, tree_zone, garbage_zone)
+       (ggc_alloc_zone_stat): Delete.
+       (ggc_pch_count_object, ggc_pch_alloc_object): Add TYPE argument.
+       * ggc.h (gt_pch_note_object, ggc_pch_count_object)
+       (ggc_pch_alloc_object): Update prototypes.
+       (garbage_zone): Delete.
+       (tree_zone, rtl_zone, ggc_alloc_zone_stat, ggc_alloc_zone): Move to
+       GGC_ZONE conditional.  Update.  Change tree_zone and rtl_zone into
+       pointers.
+       (tree_id_zone): New variable.
+       (ggc_alloc_cleared_zone): Remove unused.
+       (ggc_alloc_zone): Define.
+       (ggc_alloc_rtvec, ggc_alloc_tree): Update to use ggc_alloc_zone.
+       * rtl.c (rtx_alloc_stat, shallow_copy_rtx_stat): Use
+       ggc_alloc_zone_stat.
+       * stringpool.c (gt_pch_n_S): Update call to gt_pch_note_object.
+       * tree.c (copy_node_stat, make_tree_binfo_stat, make_tree_vec_stat)
+       (tree_cons_stat, build1_stat): Update call to ggc_alloc_zone_stat.
+       (make_node_stat): Likewise.  Use tree_id_zone.
+
+2005-03-13  Daniel Jacobowitz  <dan@codesourcery.com>
+           Joseph S. Myers  <joseph@codesourcery.com>
+
+       * configure.ac: Check for MIPS TLS.
+       * configure: Regenerated.
+       * config/mips/mips-protos.h (enum mips_symbol_type): Add
+       SYMBOL_TLS, SYMBOL_TLSGD, SYMBOL_TLSLDM, SYMBOL_DTPREL,
+       SYMBOL_GOTTPREL, and SYMBOL_TPREL.
+       * config/mips/mips.c (mips_regno_to_class): Handle V1_REG.
+       (TARGET_HAVE_TLS, TARGET_CANNOT_FORCE_CONST_MEM): Define.
+       (mips_classify_symbol, mips_symbolic_constant_p)
+       (mips_symbolic_address_p, mips_symbol_insns): Handle TLS symbols.
+       (mips_tls_operand_p, mips_call_tls_get_addr)
+       (mips_legitimize_tls_address, mips_cannot_force_const_mem)
+       (mips_tls_symbol_ref_1): New functions.
+       (mips_legitimize_address, mips_legitimize_const_move): Call
+       mips_legitimize_tls_address.
+       (override_options): Handle V1_REG and TLS symbols.  Disable TLS
+       for MIPS16.
+       * config/mips/mips.h (enum reg_class, REG_CLASS_NAMES)
+       (REG_CLASS_CONTENTS, GR_REG_CLASS_P): Include V1_REG.
+       (mips_char_to_class): Document V1_REG.
+       (HAVE_AS_TLS): Provide default.
+       * config/mips/mips.md (UNSPEC_TLS_LDM, UNSPEC_TLS_GET_TP): New
+       constants.
+       (load_got<mode>): Renamed from *load_got<mode>.  Allow when
+       !TARGET_ABICALLS.
+       (tls_get_tp_<mode>): New instruction.
+
+2005-03-13  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * configure.ac: Update checks for target tools.
+       * configure: Regenerated.
+
+2005-03-13  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * varasm.c (decl_tls_model): Check flag_shlib instead of flag_pic.
+
+2005-03-13  Roger Sayle  <roger@eyesopen.com>
+
+       * 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 a positive constant and negating the result) and
+       multiplications by large powers of two, by using a left shift.
+
+2005-03-13  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-into-ssa.c (find_idf): Speed up by putting the indexes
+       of basic blocks into work_stack.
+
+       * builtin-attrs.def, c-lex.c, c-pragma.h, reg-stack.c,
+       config/mips/vr.h: Update copyright.
+
+       * c-decl.c (c_init_decl_processing): Remove useless calls to
+       build_function_type.
+
+       * builtins.c (fold_trunc_transparent_mathfn,
+       fold_fixed_mathfn, fold_builtin_atan, fold_builtin_trunc,
+       fold_builtin_floor, fold_builtin_ceil, fold_builtin_round,
+       fold_builtin_lround, fold_builtin_bitop, fold_builtin_memcpy,
+       fold_builtin_strcpy, fold_builtin_strncpy,
+       fold_builtin_signbit): Use TYPE (TYPE (fndecl)) instead of
+       TREE_TYPE (exp).
+
+       * builtins.c (expand_builtin_mathfn_3): Remove local variable
+       before_call.
+
+       * lambda-code.c (lambda_compute_auxillary_space): Remove local
+       variable determinant.
+
+       * tree-cfg.c (group_case_labels): Remove local variable type.
+
+       * tree-ssa-live.c (build_tree_conflict_graph): Remove local
+       variable ann.
+
+       * tree-ssa-phiopt.c (value_replacement): Remove local variable
+       result.
+
+2005-03-13  Andy Hutchinson  <HutchinsonAndy@netscape.net>
+
+       PR target/18251
+       * config/avr/avr.md (movmemhi): Rewrite as RTL loop.
+       (*movmemqi_insn): Delete.
+       (*movmemhi): Delete.
+
+2005-03-13  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * builtins.c (fold_builtin_classify): Take decomposed
+       arguments of CALL_EXPR.
+       (fold_builtin_1): Update a call to fold_builtin_classify.
+
+2005-03-13  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/20402
+       * c-parser.c (c_parser_struct_or_union_specifier): Don't fall
+       through into call to parser_xref_tag after parse error.
+       (c_parser_struct_declaration): Consistently return NULL_TREE on
+       error.
+
+2005-03-12  Daniel Berlin  <dberlin@dberlin.org>
+
+       * tree-flow-inline.h (ref_contains_array_ref): New function.
+       (lookup_subvars_for_var): Ditto.
+       (get_subvars_for_var): Ditto.
+       (var_can_have_subvars): Ditto.
+
+       * tree-flow.h (mem_tag_kind): Add STRUCT_FIELD.
+       (struct subvar): New type.
+
+       * tree-dfa.c (okay_component_ref_for_subvars): New function.
+
+       * tree-optimize.c (init_tree_optimization_passes): Call
+       pass_create_structure_vars.
+
+       * tree-ssa-alias.c: Include vec.h.
+       (init_alias_info): Don't auto-clear call clobbered on struct-field
+       tags.
+       (compute_flow_insensitive_aliasing): Handle subvars.
+       (group_aliases): Handle STRUCT_FIELD aliases.
+       (setup_pointers_and_addressables): Ditto.
+       Don't mark variables non-addressable if they still have
+       addressable subvars.
+       Also mark subvars addressable when the real variable is marked
+       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
+       properly include subvars.
+       (bitpos_of_field): New function.
+       (push_fields_onto_fieldstack): Ditto.
+       (get_or_create_used_part_for): Ditto.
+       (create_overlap_variables_for): Ditto.
+       (find_used_portions): Ditto.
+       (create_structure_vars): Ditto.
+       (pass_create_structure_vars): New structure.
+
+       * tree-ssa-operands.c (finalize_ssa_v_must_defs): Remove assert.
+       (get_expr_operands): Handle subvars.  Also try to turn
+       COMPONENT_REF accesses into must-defs now that we can accurately
+       portray it.
+       (note_addressable): Try to only mark as addressable those subvars
+       we know a COMPONENT_REF touches.
+       (overlap_subvar): New function.
+
+       * tree-vect-analyze.c (vect_object_analysis): Add new parameter.
+       Handle subvar storing.
+       (vect_address_analysis): Update caller of vect_object_analysis.
+
+       * tree-vect-transform.c (vect_create_data_ref_ptr): Copy subvars.
+
+       * tree-vectorizer.h (struct _stmt_vec_info): Add subvars member.
+       (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.
+       * tree-ssa-dce.c (mark_stmt_necessary): Don't check for it.
+       * tree-ssa-operands.c (get_expr_operands): Likewise.
+       (get_expr_operands): Likewise for ERROR_MARK.
+
 2005-03-12  Kazu Hirata  <kazu@cs.umass.edu>
 
        * tree-ssa.c (kill_redundant_phi_nodes): Remove local variable
        * tree-vect-transform.c (vect_get_new_vect_var): Remove local
        variable prefix_len.
 
+       * value-prof.c (mod_subtract_transform): Remove local variable
+       value.
+
+       * builtins.c (fold_builtin_exponent): Take decomposed
+       arguments of CALL_EXPR.
+       (fold_builtin_1): Update a call to fold_builtin_exponent.
+
+       * builtins.c (fold_builtin_logarithm): Take decomposed
+       arguments of CALL_EXPR.
+       (fold_builtin_1): Update a call to fold_builtin_logarithm.
+
+       * c-decl.c (c_init_decl_processing): Remove local variables
+       ptr_ftype_void and ptr_ftype_ptr.
+
+       * gimplify.c (gimplify_expr): Remove local variables r0 and
+       r1.
+
+       * reg-stack.c (move_for_stack_reg): Remove local variable
+       push_insn.
+       (compare_for_stack_reg): Remove local variable flags_user.
+       (convert_regs_1): Remove local variable deleted.
+
+       * tree-if-conv.c (tree_if_convert_cond_expr): Remove local
+       variable new_cond.
+       (combine_blocks): Remove local variables exits and new_e.
+
+       * tree-inline.c (expand_call_inline): Remove local variable
+       decl.
+
+       * tree-ssa-live.c (create_ssa_var_map,
+       calculate_live_on_entry): Remove local variable snn.
+
 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-11  James A. Morrison  <phython@gcc.gnu.org>
 
-        PR tree-optimization/15784
-        * fold-const.c (fold): Fold ~A + 1 to -A.  Fold -A - 1
-        and -1 - A to ~A.
+       PR tree-optimization/15784
+       * fold-const.c (fold): Fold ~A + 1 to -A.  Fold -A - 1
+       and -1 - A to ~A.
 
-        * stmt.c (expand_case): Don't change index_type.  Convert minval
-        to the proper type.
+       * stmt.c (expand_case): Don't change index_type.  Convert minval
+       to the proper type.
 
        PR tree-optimization/20130
        * fold-const.c (fold): Fold x * -1 into -x.
 
 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,