OSDN Git Service

PR other/7031
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 3788d84..4ae02b3 100644 (file)
-2003-03-21  Loren James Rittle  <ljrittle@acm.org>
+2003-06-07  Magnus Kreth <magnus.kreth@gmx.de>
+           Thibaud Gaillard <thibaud.gaillard@nto.atmel.com>
+
+       * Makefile.in (install-common): Remove GCOV_INSTALL_NAME instead of
+       gcov.
+
+2003-06-07  Kelley Cook  <kelleycook@wideopenwest.com>
+
+       * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Remove quotes in
+       section names.
+       * configure: Regenerate.
+
+2003-06-07  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/linux64.h (CRT_CALL_STATIC_FUNCTION): Define.
+
+2003-06-06  James E Wilson  <wilson@tuliptree.org>
+
+       PR inline-asm/10890
+       * reload1.c (merge_assigned_reloads): Abort only if two reloads have
+       different in fields.
+
+2003-06-06  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * configure.in: Make $(target_subdir) correspond with top level usage.
+       * Makefile.in: Likewise.
+       * configure: Regenerate.
+
+2003-06-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * pa.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_COMMON,
+       ASM_OUTPUT_ALIGNED_LOCAL): Cast `SIZE' and `ALIGNED' parameters to
+       unsigned HOST_WIDE_INT.
+       * pa-pro-end.h (ASM_OUTPUT_ALIGNED_COMMOM, ASM_OUTPUT_ALIGNED_LOCAL):
+       Likewise.
+       * pa64-hpux.h (ASM_OUTPUT_ALIGNED_COMMON, ASM_OUTPUT_ALIGNED_LOCAL):
+       Likewise.
+
+2003-06-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * doc/install.texi (Prerequisites): New section documenting
+       tools and packages necessary prior to building and/or
+       modifying GCC.
+       * doc/install.texi2html: Also generate prerequisites.html.
+
+2003-06-06  Richard Earnshaw  <rearnsha@arm.com>
+
+       PR target/11052
+       * ifcvt.c (noce_process_if_block): Fail if the destination has
+       side-effects.
+
+2003-06-06  Jason Merrill  <jason@redhat.com>
+
+       * stmt.c (resolve_asm_operand_names): Rename from
+       resolve_operand_names.  No longer static.  Avoid needless copying.
+       Don't build array of constraints.
+       (expand_asm_operands): Build it here.
+       * tree.h: Declare resolve_asm_operand_names.
+
+       * stmt.c (expand_decl): Put artificial vars into registers even
+       when not optimizing, and don't mark the regs as user vars.
+
+2003-06-06  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * sh.h (FUNCTION_ARG_1): Consistently use NEW_MODE for the mode
+       of the generated register.
+
+2003-06-06  Daniel Jacobowitz  <drow@mvista.com>
+
+       * config.gcc: Add a missing sparc64 case.
+
+2003-06-06  Jakub Jelinek  <jakub@redhat.com>
+
+       * mklibgcc.in: Propagate .note.GNU-stack section if needed into
+       the .hidden assembly stubs.
+
+2003-06-06  H.J. Lu <hongjiu.lu@intel.com>
+
+       * config.gcc (extra_headers): Add emmintrin.h for i[34567]86-*-*
+       and x86_64-*-*.
+
+       * config/i386/mmintrin.h: Update version and add alternate
+       intrinsic names.
+       * config/i386/xmmintrin.h: Likewise.
+
+       * config/i386/xmmintrin.h: Include <emmintrin.h>. Move SSE2
+       intrinsics to ...
+       * config/i386/emmintrin.h: Here. New file.
+
+2003-06-06  Roger Sayle  <roger@eyesopen.com>
+
+       * fold-const.c (fold <ABS_EXPR>):  Re-fold the result of folding
+       fabs(-x) into fabs(x).  Use tree_expr_nonnegative_p to determine
+       when the ABS_EXPR (fabs or abs) is not required.
+       (tree_expr_nonnegative_p): Move the logic that sqrt and exp are
+       always nonnegative from fold to here.  Additionally, cabs and fabs
+       are always non-negative, and pow and atan are non-negative if
+       their first argument is non-negative.
+
+       * builtins.c (fold_builtin_cabs): New function to fold cabs{,f,l}.
+       Evaluate cabs of a constant at compile-time.  Convert cabs of a
+       non-complex argument into fabs.  Convert cabs(z) into
+       sqrt(z.r*z.r + z.i*z.i) at the tree-level with -ffast-math or
+       -funsafe-math-optimizations or -ffast-math.
+       (fold_builtin): Convert BUILT_IN_FABS{,F,L} into an ABS_EXPR.
+       Fold BUILT_IN_CABS{,F,L} using fold_builtin_cabs.
+
+Thu Jun  5 20:51:09 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * sourcebuild.texi (Front End Directory): Document new hooks.
+
+Fri Jun  6 11:02:35 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * function.c (FLOOR_ROUND, CEIL_ROUND): Fix.
+       * i386.md (gen_pro_epilogue_adjust_stack): Deal with gigantic
+       stack frames.
+       (pro_epilogue_adjust_stack_rex64_2): New pattern
+
+Fri Jun  6 11:03:14 CEST 2003  Jan Hubicka  <jh@suse.cz>
+                              Pop Sebastian
+                              Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+       * cfghooks.h, cfghooks.c: New files.
+       * Makefile.in (BASIC_BLOCK_H): Depends on cfghooks.h.
+       (OBJS): Add cfghooks.o.
+       (cfghooks.o): New rule.
+       * basic-block.h (split_edge): Rename to rtl_split_edge.
+       (verify_flow_info): Rename to rtl_verify_flow_info.
+       (cfghooks.h): Included here.
+       * cfgrtl.c (split_edge): Renamed rtl_split_edge.
+       (verify_flow_info): Renamed rtl_verify_flow_info.
+       * toplev.c (rest_of_compilation): Call rtl_register_cfg_hooks.
+
+       * basic-block.h (split_block, split_edge, flow_delete_block,
+       redirect_edge_and_branch, redirect_edge_and_branch_force): Delete.
+       (flow_delete_block_noexpunge):  Return void.
+       * cfg.c (verify_flow_info): New function.
+       * cfgcleanup.c (try_simplify_condjump, outgoing_edges_match,
+       try_crossjump_to_edge, try_optimize_cfg, delete_unreachable_blocks):
+       Use delete_block.
+       * cfglayout.c (function_footer): Rename to...
+       (cfg_layout_function_footer): ... this variable
+       (unlink_insn_chain): Make global.
+       (fixup_reorder_chain, record_effective_endpoints): Update.
+       (cleanup_unconditional_jumps): Use delete_block.
+       (cfg_layout_redirect_edge, cfg_layout_split_block): Move to cfgrtl.c
+       (cfg_layout_duplicate_bb): Use redirect_edge_and_branch_force.
+       (cfg_layout_initialize, cfg_layout_finalize): Update hooks.
+       * cfglayout.h (cfg_layout_redirect_edge, cfg_layout_split_block):  Delete.
+       (cfg_layout_function_footer): Declare.
+       * cfgloopmanip (split_loop_bb): Do not update RBI.
+       (remove_bbs): Use delete_block.
+       (loop_reidrect_edge, loop_delete_branch_edge): Use
+       redirect_edge_and_branch.
+       (create_preheader): Use split_block and redirect_edge_and_branch_force.
+       (split_edge_with): Likewise.
+       * cfgrtl.c: Include cfglayout.h
+       (split_edge): Rename to ...
+       (rtl_split_edge) ... this one; make local.
+       (redirect_edge_and_branch): Rename to ...
+       (rtl_redirect_edge_and_branch) ... this one; make local.
+       (redirect_edge_and_branch_force): Rename to ...
+       (rtl_redirect_edge_and_branch_force) ... this one; make local.
+       (cfg_layout_delete_block, cfg_layout_delete_edge_and_branch_force): New.
+       (cfg_layout_redirect_edge_and_branch, cfg_layout_split_block): Move here from
+       cfglayout.c; update to directly call RTL counterparts.
+       (rtl_cfg_hooks, cfg_layout_rtl_cfg_hooks): New functions.
+       * ifcvt.c (find_cond_trap): Use delete_block.
+       (find_if_case_1): Use delete_block.
+       (find_if_case_2): Use delete_block.
+       * rtl.h (unlink_insn_chain): Declare.
+       * toplev.c (rtl_reigster_cfg_hooks): New.
+
+2003-06-05  Richard Henderson  <rth@redhat.com>
+
+       * recog.c (peephole2_optimize): Revert last change.
+
+2003-06-05  Richard Henderson  <rth@redhat.com>
+
+       * recog.c (peephole2_optimize): Don't split block unless
+       can_throw_internal.
+
+2003-06-06  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.c (get_shift_alg): Correct the syntax of rotxl.
+       * config/h8300/h8300.md (*addsi3_lshiftrt_16_zexthi): Likewise.
+
+2003-06-05  Kelley Cook  <kelleycook@wideopenwest.com>
+
+       PR optimization/4490
+       * config/i386/i386.md: Don't use XFMode if TARGET_128BIT_LONG_DOUBLE.
+       * doc/invoke.texi (m96bit-long-double, m128bit-long-double):  Reword
+       documentation to accurately reflect what these options do.
+
+2003-06-06  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/linux.h (STARTFILE_SPEC): Handle -pie.  Simplify.
+       (ENDFILE_SPEC): Redefine to handle -pie.
+
+2003-06-05  Phil Edwards <phil@jaj.com>
+
+       * Makefile.in (qmtest-g++): Use target_alias, not target.
+
+2003-06-05  Per Bothner  <pbothner@apple.com>
+
+       * toplev.c (push_srcloc):  Simplify behavior to save current location
+       and set current location to parameters.
+       (pop_srcloc):  Simplify semantics.
+       (lang_dependent_init):  Remove now-useless initial push_srcloc.
+
+2003-05-06  Richard Henderson  <rth@redhat.com>
+
+       * dwarf2out.c (loc_descriptor_from_tree): Return 0 for 
+       language-specific tree codes.
+
+2003-06-05  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR middle-end/9986
+       * pa.c (pa_init_builtins): Also set implicit_built_in_decls for
+       BUILT_IN_FPUTC_UNLOCKED to NULL_TREE.
+
+Thu Jun  5 18:32:46 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * install.tex: Document profiledbootstrap.
+
+       * configure.in:  Add support for lang.stageprofile and
+       lang.stagefeedback
+       * Makefile.in (clean, distclean): Kill new stages
+       (POSTSTAGE1_FLAGS_TO_PASS): Break from ...
+       (STAGE2_FLAGS_TO_PASS): ... this one.
+       (STAGEPROFILE_FLAGS_TO_PASS, STAGEFEEDBACK_FLAGS_TO_PASS): New.
+       (stage[2-4]_build): Add POSTSTAGE1_FLAGS_TO_PASS.
+       (stageprofile_build, stageprofile_copy, stagefeedback_build,
+       stagefeedback_copy): New.
+       (restageprofile, restagefeedback, stageprofile-start, 
+       stageprofile, stagefeedback-start): Likewise.
+
+2003-06-05  David Miller  <davem@redhat.com>
+           Richard Henderson  <rth@redhat.com>
+
+       * optabs.c (HAVE_conditional_trap): Provide default.
+       (gen_conditional_trap): Likewise.
+       (init_optabs): Merge init_traps.
+       (gen_cond_trap): Use prepare_operand.  Restructure and avoid ifdef.
+
+Thu Jun  5 14:59:44 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * combine.c (simplify_if_then_else): (IF_THEN_ELSE (NE REG 0) (0) (8))
+       is REG for nonzero_bits (REG) == 8.  
+
+Thu Jun  5 13:23:51 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * i386.md (align): Fix warning; clarify what to do when no p2align
+       is available.
+
+2003-06-05  Nick Clifton  <nickc@redhat.com>
+
+       * config.gcc (m32r-elf): Revert previous delta.
+        * config/m32r/t-m32r (crtinit.o): Fix rule to work with
+        multilibs.  Remove m32rx specific version.
+        (crtfini.o): Likewise.
+        (EXTRA_MULTILIB_PARTS): Define.
+        
+2003-06-05  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * doc/md.texi (Machine Constraints): Correct the meaning of
+       constraints related to floating-point registers on SPARC.
+
+2003-06-05  Eric Botcazou  <ebotcazou@libertysurf.fr>
+            Paolo Bonzini  <bonzini@gnu.org>
+
+       PR target/10663
+       * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Redirect
+       assembler and linker output to /dev/null.
+       Use a 'sed' construct instead of 'grep -A1'.
+       * configure: Regenerate.
+
+2003-06-04  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/i386.c (struct ix86_address): Add seg.
+       (no_seg_address_operand): New.
+       (ix86_decompose_address): Restructure PLUS loop.  Accept one
+       UNSPEC_TP if TARGET_TLS_DIRECT_SEG_REFS.  Adjust ESP swap test
+       to test for a regnum, not stack_pointer_rtx.
+       (ix86_address_cost): Reduce cost if non-default segment.
+       (legitimate_address_p): Remove UNSPEC_TP check.
+       (get_thread_pointer): Add to_reg argument.  Don't represent
+       the thread pointer as a memory load.
+       (legitimize_tls_address): Split out of ...
+       (legitimize_address): ... here.
+       (print_operand_address): Handle parts.seg.
+       (ix86_expand_move): Use legitimize_tls_address.
+       (ix86_rtx_costs): Handle UNSPEC_TP.
+       * config/i386/i386.h (MASK_TLS_DIRECT_SEG_REFS): New.
+       (TARGET_TLS_DIRECT_SEG_REFS): New.
+       (TARGET_SWITCHES): Add tls-direct-seg-refs.
+       (TARGET_TLS_DIRECT_SEG_REFS_DEFAULT): Default.
+       (PREDICATE_CODES): Add no_seg_address_operand.
+       * config/i386/i386.md (lea_1): Use it.
+       (lea_1_rex64, lea_1_zext, lea_2_rex64): Likewise.
+       (load_tp_si, add_tp_si, load_tp_di, add_tp_di): New.
+       * config/i386/linux.h (TARGET_TLS_DIRECT_SEG_REFS_DEFAULT): New.
+       * config/i386/linux64.h (TARGET_TLS_DIRECT_SEG_REFS_DEFAULT): New.
+       * doc/invoke.texi: Add -mtls-direct-seg-refs.
+
+2003-06-04  Mark Mitchell  <mark@codesourcery.com>
+
+       * Makefile.in (QMTESTRUNFLAGS): Set for DejaGNU emulation.
+       (QMTEST_GPP_TESTS): Use "g++" by default.
+       (stamp-qmtest): Tweak database creation.
+       (QMTEST_DIR/context): Update context file format.
+       (qmtest-g++): Tweak command-line.
+
+2003-06-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Makefile.in (varasm.o): Don't set -Wno-error.
+       * rs6000/t-rs6000 (varasm.o, out_object_file): Don't clear.
+
+2003-06-04  Zack Weinberg  <zack@codesourcery.com>
+
+       PR bootstrap/3163
+       * aclocal.m4 (AC_FUNC_MMAP_ANYWHERE, AC_FUNC_MMAP_FILE): Delete.
+       (gcc_AC_FUNC_MMAP_BLACKLIST): New.
+       * configure.in: Check for sys/mman.h and mmap in AC_CHECK_HEADERS
+       and AC_CHECK_FUNCS lists, respectively.  Use
+       gcc_AC_FUNC_MMAP_BLACKLIST, not AC_FUNC_MMAP_ANYWHERE nor
+       AC_FUNC_MMAP_FILE.
+       * configure, config.in: Regenerate.
+
+2003-06-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * arm/aout.h (ASM_OUTPUT_SKIP): Fix cast for format specifier warning.
+       * arm.c (arm_output_function_prologue): Fix format specifiers.
+       * arm.h (ARM_PRINT_OPERAND_ADDRESS): Likewise.
+       * m68k.c (m68k_output_mi_thunk): Use more readable %wd instead of
+       HOST_WIDE_INT_PRINT_DEC.
+       * vax.c (vax_output_function_prologue): Fix format specifiers.
+
+2003-06-04  Richard Henderson  <rth@redhat.com>
+
+       * cse.c (find_best_addr): Consider binary operators even if second
+       argument is not CONST_INT.
+
+2003-06-04  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       * doc/invoke.texi (max-cse-path-length): Document.
+
+2003-06-04  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/i386.md (align): Use ASM_OUTPUT_*ALIGN macros.
+
+2003-06-04  Andrew Pinski <pinskia@physics.uc.edu>
+
+       * config/rs6000/darwin.h (RS6000_OUTPUT_BASENAME):
+       Remove semi-colon at the end of the expression.
+
+2003-06-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * i370.c (mvs_function_name_length): Fix signed/unsigned warnings.
+       * i370.h (mvs_function_name_length): Likewise.
+       * i960.h (CONSTANT_ALIGNMENT): Likewise.
+       * mips/linux.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
+       * pa/pa-pro-end.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
+       * pa.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
+       * rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Delete unused
+       variable.
+
+2003-06-04  Daniel Jacobowitz  <drow@mvista.com>
+
+       * config.gcc: Reorganize --with-cpu logic.  Set
+       configure_default_options according to the default CPU, --with-cpu,
+       --with-arch, --with-tune, --with-schedule, --with-abi, and
+       --with-float.  Check for legal values of various options.
+       * configure.in: Define configure_default_options in configargs.h.
+       * configure: Regenerated.
+       * config/mips/mips.h (TARGET_DEFAULT_ARCH_P)
+       (TARGET_DEFAULT_FLOAT_P): New macros.
+       * gcc.c (do_option_spec): New function.
+       (struct default_spec, option_default_specs): New.
+       (main): Call do_option_spec.
+       * config/alpha/alpha.h, config/arm/arm.h, config/i386/i386.h,
+       config/mips/mips.h, config/pa/pa.h, config/rs6000/rs6000.h,
+       config/sparc/sparc.h (OPTION_DEFAULT_SPECS): Define.
+
+       * doc/install.texi: Update --with-cpu documentation.  Mention
+       --with-arch, --with-schedule, --with-tune, --with-abi, and
+       --with-float.
+       * doc/tm.texi (Driver): Document OPTION_DEFAULT_SPECS.
+
+2003-06-04  Daniel Jacobowitz  <drow@mvista.com>
+
+       * config.gcc: Only process --with-cpu logic in the third pass.
+
+2003-06-04  Daniel Jacobowitz  <drow@mvista.com>
+
+       * config.gcc: Reorganize --with-cpu section.  Remove an
+       obsolete comment about the default CPU for x86-64.  Fix
+       a typo for the ep9312.  Update the list of supported PowerPC
+       CPUs.  Support a limited set of new --with-cpu options
+       for i386.
+
+2003-06-04  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/rs6000.c (rs6000_complex_function_value): Unpack
+       complex numbers <= 32 bits into two registers.
+
+2003-06-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * alpha.c (print_operand_address): Fix format specifier warnings.
+       * alpha/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
+       * alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
+       * arm/aof.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
+       * arm/pe.h (ASM_OUTPUT_COMMON): Likewise.
+       * avr.h (ASM_OUTPUT_COMMON, ASM_GENERATE_INTERNAL_LABEL,
+       ASM_OUTPUT_SKIP): Likewise.
+       * c4x.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+       * dsp16xx.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+       * h8300.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_COMMON):
+       Likewise.
+       * i370.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+       * i386/cygming.h (ASM_OUTPUT_COMMON): Likewise.
+       * i386/darwin.h (ASM_OUTPUT_COMMON): Likewise.
+       * i960.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+       * m68k/hp320.h (PRINT_OPERAND_ADDRESS): Likewise.
+       * mcore.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
+       * pdp11.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+       * ptx4.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
+       * sparc/freebsd.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+       * svr3.h (ASM_OUTPUT_COMMON): Likewise.
+
+2003-06-04  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * c-decl.c (c_init_decl_processing): Clear input_file_name
+       while building common nodes.
+       * dwarf2out.c (gen_compile_unit_die, dwarf2out_finish):
+       Don't add working directory for strings like <built-in> .
+
+2003-06-04  David Edelsohn  <edelsohn@gnu.org>
+
+       * doc/install.texi (*-ibm-aix*): Native as and ld required
+       to bootstrap on AIX 5L.
+
+2003-06-04  Richard Henderson  <rth@redhat.com>
+
+       * c-common.c (handle_cleanup_attribute): New.
+       (c_common_attributes): Add it.
+       * c-decl.c (finish_decl): Honor the cleanup attribute.
+       * doc/extend.texi (Variable Attributes): Document it.
+
+       * unwind-c.c: New file.
+       * Makefile.in (LIB2ADDEH): Add it.
+       * config/t-darwin, config/t-linux, config/t-linux-gnulibc1,
+       config/ia64/t-ia64: Likewise.
+
+2003-06-04  Jakub Jelinek  <jakub@redhat.com>
+
+       * function.c (trampolines_created): New variable.
+       (expand_function_end): Set it when doing INITIALIZE_TRAMPOLINE.
+       * function.h (trampolines_created): Add.
+       * config/s390/linux.h (ASM_FILE_END): Define.
+       * config/alpha/linux-elf.h (ASM_FILE_END): Define.
+       * config/m68k/linux.h (ASM_FILE_END): Define.
+       * config/rs6000/linux.h (ASM_FILE_END): Define.
+       * config/rs6000/linux64.h (ASM_FILE_END): Define.
+       * config/rs6000/ppc-asm.h: Add .note.GNU-stack on powerpc-linux.
+       * config/sparc/linux.h (ASM_FILE_END): Define.
+       * config/sparc/linux64.h (ASM_FILE_END): Define.
+       * config/i386/i386.c (ix86_asm_file_end): Use SUBTARGET_FILE_END.
+       * config/i386/linux.h (SUBTARGET_FILE_END): Define.
+       * config/i386/linux64.h (SUBTARGET_FILE_END): Define.
+
+Wed Jun  4 18:39:33 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (min_insn_size, k8_avoid_jump_misspredicts): New functions
+       (ix86_reorg): Use it.
+       * i386.md (align): New insn pattern.
+
+2003-06-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * toplev.c (rest_of_type_compilation): Fix typo.
+
+2003-06-04  Jakub Jelinek  <jakub@redhat.com>
+           Alan Modra  <amodra@bigpond.net.au>
+
+       * config/i386/linux.h (NO_PROFILE_COUNTERS): Define to 1.
+       * config/i386/freebsd.h (NO_PROFILE_COUNTERS): Likewise.
+       * config/i386/netbsd-elf.h (NO_PROFILE_COUNTERS): Likewise.
+       * config/xtensa/xtensa.h (NO_PROFILE_COUTNERS): Likewise.
+       * config/darwin.h (NO_PROFILE_COUNTERS): Likewise.
+       * final.c (NO_PROFILE_COUNTERS): Define to 0 if not defined.
+       (profile_function): Allow NO_PROFILE_COUNTERS to be non-constant.
+       * config/rs6000/rs6000.c (output_profile_hook): Likewise.
+
+       * configure.in (powerpc*-*, s390*-*): Set tls_as_opt.
+       Pass it to $gcc_cv_as.
+       * configure: Rebuilt.
+
+       * config/rs6000/rs6000.c (rs6000_abi_name): Remove initializer.
+       (print_operand): Allow TARGET_AIX to be non-constant.
+       (rs6000_aix_emit_builtin_unwind_init, rs6000_emit_eh_toc_restore):
+       Define unconditionally.
+       (rs6000_elf_declare_function_name): New function.
+       * config/rs6000/rs6000.md (eh_return): Allow TARGET_AIX to be
+       non-constant.
+       * config/rs6000/linux64.h [!RS6000_BI_ARCH] (TARGET_64BIT): Define
+       to 1.
+       (DEFAULT_ARCH64_P, RS6000_BI_ARCH_P): Define.
+       [IN_LIBGCC2] (TARGET_64BIT): Define based on whether __powerpc64__
+       is defined.
+       (TARGET_AIX): Define to 1 if TARGET_64BIT.
+       (PROCESSOR_DEFAULT): Remove.
+       (TARGET_RELOCATABLE, RS6000_ABI_NAME, INVALID_64BIT,
+       INVALID_32BIT, SUBSUBTARGET_OVERRIDE_OPTIONS): Define.
+       [RS6000_BI_ARCH] (OVERRIDE_OPTIONS, ASM_FILE_START): Define.
+       (ASM_DEFAULT_SPEC, ASM_SPEC, LINK_OS_LINUX_SPEC): Define for both
+       -m32 and -m64.
+       (MULTILIB_DEFAULTS): Define.
+       (SUBSUBTARGET_EXTRA_SPECS): Define.
+       (ASM_SPEC32, ASM_SPEC64, ASM_SPEC_COMMON): Define.
+       (TARGET_TOC): Define only if !RS6000_BI_ARCH.
+       (TARGET_NO_TOC): Remove.
+       [!RS6000_BI_ARCH] (TARGET_RELOCATABLE, TARGET_EABI,
+       TARGET_PROTOTYPE): Define to 0.
+       (NO_PROFILE_COUNTERS): Define to TARGET_64BIT.
+       (PROFILE_HOOK): Only call output_profile_hook if TARGET_64BIT.
+       (ADJUST_FIELD_ALIGN, ROUND_TYPE_ALIGN): Adjust to work properly
+       if !TARGET_64BIT.
+       (USER_LABEL_PREFIX): Remove.
+       (JUMP_TABLES_IN_TEXT_SECTION): Define to TARGET_64BIT.
+       (SETUP_FRAME_ADDRESSES): Only call rs6000_aix_emit_builtin_unwind_init
+       if TARGET_64BIT.
+       (TARGET_OS_CPP_BUILTINS): Handle both -m32 and -m64.
+       (LINK_OS_LINUX_SPEC32, LINK_OS_LINUX_SPEC64): Define.
+       (STARTFILE_LINUX_SPEC, ENDFILE_LINUX_SPEC): Remove.
+       (TOC_SECTION_ASM_OP): Define depending on TARGET_64BIT.
+       (MINIMAL_TOC_SECTION_ASM_OP): Likewise.
+       (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE): Define depending on
+       TARGET_64BIT.
+       (RS6000_CALL_GLUE): Likewise.
+       (SAVE_FP_PREFIX, SAVE_FP_SUFFIX, RESTORE_FP_PREFIX,
+       RESTORE_FP_SUFFIX): Likewise.
+       (ASM_DECLARE_FUNCTION_NAME): Remove.
+       (ASM_DECLARE_FUNCTION_SIZE, ASM_OUTPUT_SOURCE_LINE,
+       DBX_OUTPUT_BRAC, DBX_OUTPUT_NFUN): Only output dot before function
+       name if TARGET_64BIT.
+       (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Handle both TARGET_64BIT and
+       !TARGET_64BIT.
+       (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Remove undefs.
+       (ASM_PREFERRED_EH_DATA_FORMAT): Take TARGET_64BIT into account.
+       (DRAFT_V4_STRUCT_RET): Define.
+       (SIGNAL_FRAMESIZE): New enum value.
+       (MD_FALLBACK_FRAME_STATE_FOR): Define.
+       * config/rs6000/default64.h: New file.
+       * config/rs6000/sysv4.h (SUBTARGET_SWITCHES): Add -m32 and -m64
+       options.
+       (SUBTARGET_OVERRIDE_OPTIONS): If rs6000_abi_name is NULL, set it
+       to RS6000_ABI_NAME.  Only disallow mixing of -fPIC with -mcall-aixdesc
+       if !TARGET_64BIT.
+       [!RS6000_BI_ARCH] (SUBSUBTARGET_OVERRIDE_OPTIONS): Define.
+       (ASM_DECLARE_FUNCTION_NAME): Use rs6000_elf_declare_function_name
+       function.
+       (TARGET_OS_SYSV_CPP_BUILTINS): Define.
+       (TARGET_OS_CPP_BUILTINS): Use it.
+       (CPP_SYSV_SPEC): Remove.
+       (CPP_SPEC): Remove cpp_sysv.
+       (SUBTARGET_EXTRA_SPECS): Remove cpp_sysv.
+       Add SUBSUBTARGET_EXTRA_SPECS.
+       (SUBSUBTARGET_EXTRA_SPECS): Define.
+       * config/rs6000/biarch64.h: New file.
+       * config/rs6000/rs6000-protos.h (rs6000_elf_declare_function_name):
+       New prototype.
+       * config/rs6000/x-linux64: New file.
+       * config/rs6000/t-linux64: Build -m64, -m32 and -m32 -msoft-float
+       multilibs.
+       * config/rs6000/eabi-ci.asm: Protect with #ifndef __powerpc64__.
+       * config/rs6000/eabi-cn.asm: Likewise.
+       * config/rs6000/tramp.asm: Likewise.
+       * config/rs6000/sol-ci.asm: Likewise.
+       * config/rs6000/sol-cn.asm: Likewise.
+       * config/rs6000/linux.h (TARGET_64BIT): Define to 0.
+       (TARGET_OS_CPP_BUILTINS): Use TARGET_OS_SYSV_CPP_BUILTINS.
+       * config/rs6000/ppc-asm.h: Move __powerpc64__ section before
+       _CALL_AIXDESC section.
+       * config.gcc (powerpc64-*-linux*): Configure a bi-arch compiler,
+       defaulting to -m64 unless --with-cpu= is one of the 32-bit CPUs
+       or default32.
+
+2003-06-04  Daniel Jacobowitz  <drow@mvista.com>
+
+       * config.gcc: Revert accidentally committed ARM changes.
+
+2003-06-04  Roger Sayle  <roger@eyesopen.com>
+
+       * builtins.c (dconstpi, dconste): New mathematical constants.
+       (init_builtin_dconsts): New function to initialize dconstpi
+       and dconste.
+       (fold_builtin): Optimize exp(1.0) = e.  Evaluate exp(x) at
+       compile time with -ffast-math when x is an integer constant.
+       Optimize tan(0.0) = 0.0.  Optimize atan(0.0) = 0.0,
+       atan(1.0) = pi/4 and tan(atan(x)) = x with -ffast-math.
+
+2003-06-04  Roger Sayle  <roger@eyesopen.com>
+
+       * calls.c (expand_call): Avoid calling pure or const functions
+       when the result is ignored (or void) and none of the arguments
+       are volatile.  Move warning diagnostic earlier in function.
+
+2003-06-04  Andreas Jaeger  <aj@suse.de>
+
+       * system.h: Do not poison TDESC_SECTION_ASM_OP,
+       RDATA_SECTION_ASM_OP and SUBTARGET_PROLOGUE.
+
+2003-06-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * final.c (asm_fprintf): Update comments, accept "-+ #0" flags,
+       optimize '%' case, handle %c, don't accept %p, %e, %f or %g,
+       handle %ll, optimize regular character case.
+
+2003-06-04  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       * Makefile.in (cse.o): Add params.h dependency.
+       * cse.c: Include params.h.
+       (PATHLENGTH): Removed.
+       (struct cse_basic_block_data): Make path array dynamic.
+       (cse_end_of_basic_block): Use PARAM_MAX_CSE_PATH_LENGTH instead
+       of PATHLENGTH.
+       (cse_main, cse_basic_block): Allocate path array.
+       * params.def (PARAM_MAX_CSE_PATH_LENGTH): New.
+
+Wed Jun  4 09:49:21 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (ix86_reorg): Replace the jump instead of adding nop.
+       * i386.md (UNSPEC_REP): New constant.
+       (return_internal_long): New pattern.
+
+2003-06-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR optimization/11018
+       * config/sparc/sparc.c (sparc_v8plus_shift): Use which_alternative
+       consistently to decide whether the scratch register is really
+       required.
+
+2003-06-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR optimization/10876
+       * config/sparc/sparc.h (CONST_OK_FOR_LETTER): Add
+       new 'O' constraint for constant 4096.
+       (CONST_DOUBLE_OK_FOR_LETTER_P): Likewise.
+       * config/sparc/sparc.md (adddi3 expander): Canonicalize pattern.
+       Do not transform into MINUS insn for constant 4096.
+       (*adddi3_sp64 insn): Canonicalize pattern. Add new alternative
+       for constant 4096 as third operand.
+       (addsi3 expander): Remove.
+       (*addsi3 insn): Rename into 'addsi3'. Canonicalize pattern. Add
+       new alternative for constant 4096 as third operand.
+       (subdi3 expander): Do not transform into PLUS insn for constant 4096.
+       (*subdi3_sp64 insn): Add new alternative for constant 4096 as third
+       operand.
+       (subsi3 expander): Remove.
+       (*subsi3 insn): Rename into 'subsi3'. Add new alternative for
+       constant 4096 as third operand.
+       * doc/md.texi (Machine Constraints): Document new 'O' constraint for
+       the SPARC port.
+
+2003-06-03  Chris Demetriou  <cgd@broadcom.com>
+
+       * config/mips/t-linux64 (CRTSTUFF_T_CFLAGS_S): Define.
+
+2003-06-04  Andreas Jaeger  <aj@suse.de>
+
+       * config/i386/uwin.h: Remove SUBTARGET_PROLOGUE.
+
+       * config/i386/i386.c (ix86_expand_prologue): Do not use
+       SUBTARGET_PROLOGUE.
+
+       * system.h: Poision SUBTARGET_PROLOGUE.
+
+       * config/arm/arm-protos.h: Remove unused rdate_section prototype.
+
+       * output.h: Remove TDESC_SECTION_ASM_OP and RDATA_SECTION_ASM_OP
+       dependend code.
+
+       * system.h: Poison TDESC_SECTION_ASM_OP and RDATA_SECTION_ASM_OP.
+
+       * system.h: Poison INSN_CACHE_DEPTH, INSN_CACHE_SIZE and
+       INSN_CACHE_LINE_WIDTH.
+
+       * libgcc2.c (INSN_CACHE_PLANE_SIZE): Removed.
+       (__clear_cache): Remove code dependend on INSN_CACHE_DEPTH,
+       INSN_CACHE_SIZE and INSN_CACHE_LINE_WIDTH.
+
+       * doc/tm.texi (Trampolines): Remove INSN_CACHE_DEPTH,
+       INSN_CACHE_SIZE and INSN_CACHE_LINE_WIDTH.
+
+       * dbxout.c (dbxout_type): Remove usage of DBX_OUTPUT_ENUM.
+       (dbxout_symbol): Remove usage of DBX_OUTPUT_CONSTANT_SYMBOL.
+       (dbxout_block): Remove usage of DBX_OUTPUT_CATCH.
+       (dbxout_block): Remove usage of DBX_LBRAC_FIRST.
+       (dbxout_source_file): Remove usage of DBX_OUTPUT_SOURCE_FILENAME.
+       (dbxout_init): Remove test for DBX_WORKING_DIRECTORY.
+
+       * doc/tm.texi (DBX Options): Do not document DBX_LBRAC_FIRST,
+       DBX_OUTPUT_SOURCE_FILENAME and DBX_OUTPUT_ENUM and
+       DBX_WORKING_DIRECTORY.
+
+       * system.h: Poison DBX_LBRAC_FIRST, DBX_OUTPUT_ENUM,
+       DBX_OUTPUT_SOURCE_FILENAME and DBX_WORKING_DIRECTORY.
+
+       * config/frv/frv-protos.h: Remove unused const_section
+       declaration.
+       * config/vax/vax-protos.h: Likewise.
+
+       * output.h: Remove CONST_SECTION_ASM_OP usage.
+
+       * system.h: Poison CONST_SECTION_ASM_OP.
+
+       * crtstuff.c (__do_global_dtors_aux): Remove usage of
+       CRT_GET_RFIB_TEXT.
+       (frame_dummy): Likewise.
+       * unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Likewise.
+       * system.h: Poison CRT_GET_RFIB_TEXT.
+
+       * collect2.c (is_ctor_dtor): Remove CFRONT_LOSSAGE dependend code.
+
+       * fix-header.c: Remove ADD_MISSING_EXTERN_C dependend variables.
+       (write_lbrac): Remove ADD_MISSING_EXTERN_C dependend code.
+       (recognized_function): Likewise.
+       (read_scan_file): Likewise.
+
+2003-06-03  Roger Sayle  <roger@eyesopen.com>
+
+       * optabs.c (expand_binop): Optimize complex multiplication for
+       the case of squaring a complex argument.
+
+2003-06-03  Roger Sayle  <roger@eyesopen.com>
+
+       * optabs.c (expand_binop): Attempt to reuse pseudos for duplicate
+       non-volatile operands of binary operations.
+       (prepare_cmp_insn): Likewise.
+
+2003-06-03  Roger Sayle  <roger@eyesopen.com>
+
+       * varasm.c (force_const_mem): Handle alignment of constants not
+       representable as a type in the front-end language.
+
+2003-06-03  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * flow.c (initialize_uninitialized_subregs): Use
+       emit_move_insn instead of emitting a hardcoded move.
+
+2003-06-03  Richard Henderson  <rth@redhat.com>
+
+       * optabs.c (expand_abs_nojump): Split out from ...
+       (expand_abs): ... here.
+       * optabs.h (expand_abs_nojump): Declare.
+       * ifcvt.c: (noce_try_abs): Use expand_abs_nojump.
+       * Makefile.in (ifcvt.o): Depend on optabs.h.
+
+2003-06-03  Alan Modra  <amodra@bigpond.net.au>
+
+       * dwarf2out.c (DEBUG_STR_SECTION_FLAGS): Heed flag_merge_constants.
+
+2003-06-03  Jason Thorpe  <thorpej@wasabisystems.com>
+
+       * config.gcc (default_use_cxa_atexit): New variable, defaults to no.
+       (*-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*): Set default_use_cxa_atexit
+       to yes.
+       * configure.in: Allow default_use_cxa_atexit to determine the
+       value of DEFAULT_USE_CXA_ATEXIT if not explicitly enabled or
+       disabled.
+       * configure: Regenerate.
+
+2003-06-03  Douglas B Rupp  <rupp@gnat.com>
+
+       * Makefile.in (TEXI_GCC_FILES): Remove vms.texi entry.
+       * doc/gcc.texi: Remove vms.texi section.
+       * doc/vms.texi: Remove obsolete file.
+
+2003-05-23  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * configure.in (inhibit_libc): Don't define when configuring
+       with --with-newlib --with-headers.
+       * configure: Regenerate.
+
+       * t-sh: Remove LIB2FUNCS_EXTRA and embed-bb.c rules.
+
+2003-06-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * configure.in (gcc_cv_as_hidden): Disable .hidden completely on
+       IRIX 6 without GNU ld.
+       * configure: Regenerate.
+
+2003-06-03  Roger Sayle  <roger@eyesopen.com>
+
+       * expr.c (emit_move_insn_1): Use emit_move_insn to move the parts
+       of a complex number rather than invoke mov_optab directly.
+
+2003-06-03  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * combine.c (simplify_set): Don't move a subreg in SET_SRC to
+       SET_DEST if WORD_REGISTER_OPERATIONS is not defined.
+
+2003-06-03  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * config/i386/x86-64.h: Remove two target-independent comments;
+        replace "GNU CC" with "GCC".
+
+2003-06-03  Anthony Green  <green@redhat.com>
+
+       * config/frv/t-frv (EXTRA_HEADERS): Remove media.h
+
+2003-06-03  Roger Sayle  <roger@eyesopen.com>
+
+       * builtins.def (BUILT_IN_CABS, BUILT_IN_CABSF, BUILT_IN_CABSL):
+       New builtins representing ISO C99's cabs, cabsf and cabsl.
+       * builtins.c (expand_builtin_fabs): New function.
+       (expand_builtin_cabs): New function.
+       (expand_builtin): Expand BUILT_IN_FABS{,F,L} and BUILT_IN_CABS{,F,L}
+       using expand_builtin_fabs and expand_builtin_cabs respectively.
+
+       * doc/extend.texi: Document new cabs, cabsf and cabsl builtins.
+
+2003-06-03  Aldy Hernandez  <aldyh@redhat.com>
+
+       * function.c (assign_parms): Split complex arguments.
+
+       * doc/tm.texi (SPLIT_COMPLEX_ARGS): Document.
+
+       * expr.h (SPLIT_COMPLEX_ARGS): Define.
+       (split_complex_types): Protoize.
+       (split_complex_values): Protoize.
+
+       * calls.c (expand_call): Split complex arguments on architectures
+       that require it.
+       (split_complex_values): New.
+       (split_complex_types): New.
+
+       * config/rs6000/rs6000.c (rs6000_libcall_value): New.
+       (rs6000_function_value): Handle complex values on AIX.
+       (rs6000_complex_function_value): New.
+
+       * config/rs6000/rs6000-protos.h (rs6000_libcall_value): Protoize.
+
+       * config/rs6000/rs6000.h (LIBCALL_VALUE): Call function.
+       (SPLIT_COMPLEX_ARGS): New.
+
+2003-06-03  Jakub Jelinek  <jakub@redhat.com>
+
+       * configure.in (HAVE_LD_PIE): Check for ld -pie.
+       * config.in: Rebuilt.
+       * configure: Rebuilt.
+       * toplev.c (flag_pie, flag_shlib): New variables.
+       (f_options): Add -fpie and -fPIE.
+       (parse_options_and_default_flags): Set flag_pic if -fpie/-fPIE.
+       Set flag_shlib if flag_pic and not -fpie/-fPIE.
+       * flags.h (flag_pic, flag_shlib): Add.
+       * varasm.c (default_binds_local_p): Use flag_shlib instead of
+       flag_pic.
+       * gcc.c (LINK_PIE_SPEC): Define.
+       (LINK_COMMAND_SPEC): Use LINK_PIE_SPEC.
+       (option_map): Add --pie -> -pie mapping.
+       * config/sol2.h (ASM_SPEC): Handle -fpie the same way as -fpic
+       and -fPIE the same way as -fPIC.
+       * config/openbsd.h (ASM_SPEC): Likewise.
+       * config/frv/frv.h (ASM_SPEC): Likewise.
+       * config/arm/linux-gas.h (SUBTARGET_CPP_SPEC): Likewise.
+       * config/arm/semi.h (ASM_SPEC): Likewise.
+       * config/arm/netbsd-elf.h (SUBTARGET_EXTRA_ASM_SPEC): Likewise.
+       * config/freebsd-spec.h (FBSD_CPP_SPEC): Likewise.
+       * config/i386/beos-elf.h (CC1_SPEC): Likewise.
+       * config/i386/freebsd-aout.h (ASM_SPEC): Likewise.
+       * config/m68k/linux.h (CPP_SPEC): Likewise.
+       * config/m68k/netbsd.h (ASM_SPEC): Likewise.
+       * config/m68k/openbsd.h (ASM_SPEC): Likewise.
+       * config/m68k/netbsd-elf.h (ASM_SPEC): Likewise.
+       * config/mips/linux.h (SUBTARGET_CPP_SPEC): Likewise.
+       * config/mips/openbsd.h (SUBTARGET_ASM_SPEC): Likewise.
+       * config/pa/pa-linux.h (CPP_SPEC): Likewise.
+       * config/netbsd-aout.h (ASM_SPEC): Likewise.
+       * config/rs6000/sysv4.h (ASM_SPEC, CPP_SYSV_SPEC): Likewise.
+       * config/rs6000/vxworks.h (CPP_SPEC): Likewise.
+       * config/sparc/linux.h (CPP_SUBTARGET_SPEC, ASM_SPEC): Likewise.
+       * config/sparc/linux64.h (CPP_SUBTARGET_SPEC, ASM_SPEC): Likewise.
+       * config/sparc/sparc.h (ASM_SPEC): Likewise.
+       * config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
+       * config/sparc/sysv4.h (ASM_SPEC): Likewise.
+       * config/sparc/netbsd-elf.h (ASM_SPEC): Likewise.
+       * config/sparc/openbsd64.h (ASM_SPEC): Likewise.
+       * config/cris/linux.h (CRIS_ASM_SUBTARGET_SPEC): Likewise.
+       * config/linux.h (STARTFILE_SPEC, ENDFILE_SPEC): Handle -pie.
+       Simplify.
+       * config/alpha/elf.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+       * config/i386/linux64.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+       * config/ia64/linux.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+       * config/rs6000/sysv4.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+       * config/rs6000/linux64.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+       * config/sparc/linux.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+       * config/sparc/linux64.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+       * doc/invoke.texi: Document -pie, -fpie and -fPIE options.
+
+2003-06-03  Jakub Jelinek  <jakub@redhat.com>
+
+       * builtins.c (expand_builtin_memcpy): Remove endp argument and endp
+       != 0 handling.  Pass 0 to store_by_pieces.
+       (expand_builtin_mempcpy): Add endp argument.  Don't call
+       expand_builtin_memcpy, call store_by_pieces resp. move_by_pieces
+       directly.  If ignoring result, only do expand_call.
+       (expand_builtin_stpcpy): Likewise.  Call expand_builtin_mempcpy
+       otherwise.
+       (expand_builtin_strncpy, expand_builtin_memset): Adjust
+       store_by_pices callers.
+       (expand_builtin): Adjust expand_builtin_memcpy and
+       expand_builtin_mempcpy callers.
+       * expr.c (can_move_by_pieces): New function.
+       (move_by_pieces): Add endp argument, return to resp. memory at end
+       or one byte earlier depending on endp.
+       (store_by_pieces): Likewise.
+       (emit_block_move): Adjust call to move_by_pieces.
+       (emit_push_insn): Adjust move_by_pieces caller.
+       * expr.h (can_move_by_pieces): New prototype.
+       (store_by_pieces): Adjust prototypes.
+       * rtl.h (move_by_pieces): Adjust prototype.
+       * config/mips/mips.c (expand_block_move): Adjust move_by_pieces
+       caller.
+
+2003-06-03  Ben Elliston  <bje@wasabisystems.com>
+
+       * doc/md.texi (Processor pipeline description): Improve wording.
+
+2003-06-03  Neil Booth  <neil@daikokuya.co.uk>
+
+       * c-opts.c (c_common_handle_option): New, pulled out of
+       c_common_decode_option.  Substitute uses of argv.
+       (c_common_decode_option): Broken into two.
+
+2003-06-02  Roger Sayle  <roger@eyesopen.com>
+           Zack Weinberg  <zack@codesourcery.com>
+
+       * emit-rtl.c (gen_complex_constant_part):  Remove unnecessary
+       test of TREE_CONSTANT_POOL_ADDRESS_P.
+
+2003-06-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * mips.c: Don't include output.h twice.
+       * stormy16.c: Likewise.
+       * xtensa.c: Likewise.
+       * output.h: Protect against multiple inclusion.
+
+2003-06-02  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * sh.h (OLD_ARG_MODE): New macro.
+       (FUNCTION_ARG_ADVANCE, FUNCTION_ARG_PASS_BY_REFERENCE): Use it.
+       (FUNCTION_ARG_1): Break out of:
+       (FUNCTION_ARG).  Use OLD_ARG_MODE.
+
+2003-06-02  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
+
+       * gcc/config.gcc Add support multilib parts for m32rx processor.
+
+2003-06-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Makefile.in (c-options.c): Pass in $(AWK) to opts.sh.
+       (mostlyclean): Delete c-options.c and c-options.h.
+
+2003-06-02  Neil Booth  <neil@daikokuya.co.uk>
+
+       * c-opts.c (CL_REJECT_NEGATIVE): New.
+       (c_common_decode_option): Update to use it.
+       * c.opt: Update documentation; use RejectNegative.
+       * opts.sh: Handle RejectNegative.
+
+2003-06-01  Zack Weinberg  <zack@codesourcery.com>
+
+       * ggc-page.c (init_ggc): Give better diagnostics on failure to
+       open /dev/zero.
+       * toplev.c (crash_signal): Reset handling for received signal
+       to SIG_DFL.
+
+2003-06-02  Ben Elliston  <bje@wasabisystems.com>
+
+       * config/arm/arm.c (arm_use_dfa_pipeline_interface): Declare.
+       (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define if not already.
+       (arm_use_dfa_pipeline_interface): Implement.
+       * config/arm/arm.md (arm): New automaton.
+       (write_buf): Remove function units; new cpu unit.
+       (write_blockage): Remove function units; new cpu unit.
+       (core): Remove function units; new cpu unit.
+       (r_mem_f_wbuf): New instruction reservation.
+       (store1_wbuf, store2_wbuf, store3_wbuf, store4_wbuf): Likewise.
+       (store1_ldsched, store2, store3, store4): Likewise.
+       (load_ldsched, load_ldsched_xscale, load_or_store): Likewise.
+       (mult, mult_ldsched, mult_ldsched_strongarm): Likewise.
+       (multi_cycle, single_cycle): Likewise.
+       * config/arm/fpa.md (armfp): New automaton.
+       (fpa): Remove function units; new cpu unit.
+       (fpa_mem): Remove function unit; new cpu unit.
+       (fdivx, fdivd, fdivs, fmul, ffmul, farith, ffarith): New reservations.
+       (r_2_f, f_2_r, f_load, f_store, r_mem_f, f_mem_r): Likewise.
+
+2003-06-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtin-attrs.def (ATTR_ASM_FPRINTF): New.
+       * c-format.c (enum format_type): Add asm_fprintf_format_type.
+       (NOARGUMENTS, asm_fprintf_length_specs, asm_fprintf_flag_specs,
+       asm_fprintf_flag_pairs, asm_fprintf_char_table): New.
+       (format_types_orig): Renamed from format_types.  Add new data.
+       (format_types): Declare as pointer.
+       (handle_format_attribute): Move later in file so we have all
+       necessary declarations.  Add section to capture HOST_WIDE_INT.
+       * output.h (ATTRIBUTE_ASM_FPRINTF, __gcc_host_wide_int__): New.
+       (asm_fprintf): Mark with ATTRIBUTE_ASM_FPRINTF.
+
+2003-06-01  Andreas Jaeger  <aj@suse.de>
+
+       * doc/tm.texi (Storage Layout): Remove ROUND_TYPE_SIZE and
+       ROUND_TYPE_SIZE_UNIT.
+
+       * stor-layout.c (finalize_record_size): Remove usages of
+       ROUND_TYPE_SIZE and ROUND_TYPE_SIZE_UNIT.
+       (finalize_type_size): Likewise.
+       (layout_type): Likewise.
+
+       * system.h: Poison ROUND_TYPE_SIZE and ROUND_TYPE_SIZE_UNIT.
+
+       * loop.c (check_insn_for_givs): Remove DONT_REDUCE_ADDR macro.
+
+       * config/d30v/d30v.h: Remove text copied from the manual.
+
+2003-06-01  Roger Sayle  <roger@eyesopen.com>
+           John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+           Geoffrey Keating  <geoffk@apple.com>
+
+       * emit-rtl.c (gen_lowpart_common): Handle interpreting integer
+       constants as condition code values.
+
+2003-06-01  DJ Delorie  <dj@redhat.com>
+
+       * cppmacro.c (warn_of_redefinition): Handle cases where the two
+       definitions have different numbers of tokens.
+
+2003-06-01  Andreas Jaeger  <aj@suse.de>
+
+       * gen-protos.c (main): Readd unused attribute for argc.
+
+2003-06-01  Neil Booth  <neil@daikokuya.co.uk>
+
+       * Makefile.in (c-options.c, c-options.h): Parallel make safe.
+       * c.opt: End in blank line.
+       * opts.sh: Take AWK from environment if available; use C locale.
+
+2003-06-01  Andreas Schwab  <schwab@suse.de>
+
+       * config/m68k/linux.h: Remove code protected by USE_GNULIBC_1.
+
+2003-06-01  Andreas Jaeger  <aj@suse.de>
+
+       * gen-protos.c (main): Revert patch to check for argument.
+
+2003-06-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR target/11044
+       * config/i386/i386.md (length attribute): Set length to 4
+       for instructions of type "fcmp".
+
+2003-06-01  Andreas Jaeger  <aj@suse.de>
+
+       * toplev.c: Use ISO C90 prototypes.
+
+       * toplev.h: Use ISO C90 prototypes.
+
+       * genrecog.c: Use ISO C90 prototypes.
+       (nodes_identical): Correct declaration to match prototype.
+       (maybe_both_true): Likewise.
+       (merge_trees): Likewise.
+
+       * genpeep.c (gen_peephole): Remove #if 0 code.
+       Use ISO C90 prototypes.
+
+       * genattrtab.c (copy_rtx_unchanging): Remove #if 0'ed code.
+       Remove #if 0'ed function simplify_by_alternatives.
+       (optimize_attrs): Remove #if 0'ed code.
+       Remove ^L.
+       Use ISO C90 prototypes.
+       (make_canonical): Remove #if 0'ed code.
+       (convert_const_symbol_ref): Remove #if 0'ed function.
+
+       * gen-protos.c (main): Check for argument.
+
+       * rtl.h: Use ISO C90 prototypes for functions from lists.c.
+
+       * params.h: Use ISO C90 prototypes.
+       * params.c: Likewise.
+       * intl.c: Likewise.
+       * intl.h: Likewise.
+       * lists.c: Likewise.
+       * errors.c: Likewise.
+       * errors.h: Likewise.
+       * gencodes.c: Likewise.
+       * genpreds.c: Likewise.
+       * genattr.c: Likewise.
+       * gen-protos.c: Likewise.
+       * genflags.c: Likewise
+       * genconditions.c: Likewise.
+       * genautomata.c: Likewise.
+       * gencheck.c: Likewise.
+       * genconfig.c: Likewise.
+       * genconstants.c: Likewise.
+       * genemit.c: Likewise.
+       * genextract.c: Likewise.
+       * gengenrtl.c: Likewise.
+       * gengtype.c: Likewise.
+       * gengtype.h: Likewise.
+       * genopinit.c: Likewise.
+       * genoutput.c: Likewise.
+       * gensupport.c: Likewise.
+       * gensupport.h: Likewise.
+
+       * sdbout.h: Use ISO C90 prototypes.
+
+       * sdbout.c (CONTIN): Removed empty macro.
+       (sdbout_one_type): Remove CONTIN usages.
+       Remove ^Ls.
+       (tag_of_ru_type): Remove #if 0'ed function.
+       (sdbout_symbol): Remove #if 0'ed code.
+       (sdbout_one_type): Remove a #if 1.
+       (sdbout_one_type): Remove #if 0'ed code.
+       (sdbout_init): Remove RMS_QUICK_HACK_1 code.
+       Remove PARAMS, use ISO C90 prototypes for all functions.
+
+2003-06-01  Josef Zlomek  <zlomekj@suse.cz>
+
+       * rtl.def (CONST_DOUBLE): Update comment.
+
+2003-06-01  Neil Booth  <neil@daikokuya.co.uk>
+
+       * opts.sh: Remove path from sort.
+
+2003-06-01  Aldy Hernandez  <aldyh@redhat.com>
+
+       PR/9680
+       * config/rs6000/rs6000.h (CANNOT_CHANGE_MODE_CLASS): Require
+       TARGET_SPE for SPE_VECTOR_MODE.
+
+2003-05-31  Aldy Hernandez  <aldyh@redhat.com>
+
+       * toplev.c (botch): Remove.
+       (do_abort): Remove.
+       (set_Wunused): Comment.
+       (set_Wextra): Comment.
+       Remove ^L's.
+       (rest_of_compilation): Factor out common code into functions.
+       (rest_of_handle_inlining): New.
+       (rest_of_handle_ssa): New.
+       (rest_of_handle_cse): New.
+       (rest_of_handle_gcse): New.
+       (rest_of_handle_loop_optimize): New.
+       (rest_of_handle_jump_bypass): New.
+       (rest_of_handle_sibling_calls): New.
+       (rest_of_handle_null_pointer): New.
+       (rest_of_handle_addresof): New.
+       (rest_of_handle_flow): New.
+       (rest_of_handle_branch_prob): New.
+       (rest_of_handle_if_conversion): New.
+       (rest_of_handle_tracer): New.
+       (rest_of_handle_loop2): New.
+       (rest_of_handle_cse2): New.
+       (rest_of_handle_life): New.
+       (rest_of_handle_combine): New.
+       (rest_of_handle_if_after_combine): New.
+       (rest_of_handle_regmove): New.
+       (rest_of_handle_sched): New.
+       (rest_of_handle_old_regalloc): New.
+       (rest_of_handle_new_regalloc): New.
+       (rest_of_handle_regrename): New.
+       (rest_of_handle_reorder_blocks): New.
+       (rest_of_handle_sched2): New.
+       (rest_of_handle_new_regalloc): New.
+       (rest_of_handle_old_regalloc): New.
+       (rest_of_handle_regrename): New.
+       (rest_of_handle_reorder_blocks): New.
+       (rest_of_handle_stack_regs): New.
+       (rest_of_handle_machine_reorg): New.
+       (rest_of_handle_delay_slots): New.
+       (rest_of_handle_final): New.
+
+       * toplev.h (botch): Remove prototype.
+       (do_abort): Same.
+
+2003-05-31  Neil Booth  <neil@daikokuya.co.uk>
+
+       * Makefile.in (c-opts.o, c-options.h): Update dependencies.
+       * c-opts.c: Include c-options.h and c-options.c.
+       (CL_C_ONLY, CL_OBJC_ONLY, CL_CXX_ONLY, CL_OBJCXX_ONLY):
+       Rename CL_C, CL_OBJC, CL_CXX, CL_OBJCXX.
+       (CL_ARG, CL_ALL, COMMAND_LINE_OPTIONS, struct cl_option,
+       OPT, opt_comp): Remove.
+       (missing_arg, c_common_init_options, c_common_decode_option,
+       write_langs): Update for macro redefinitions and enumeration
+       name changes.
+       * c.opt, opts.sh: New files.
+       * doc/passes.texi: Update.
+
+2003-05-31  Andreas Jaeger  <aj@suse.de>
+
+       * function.c (trampoline_address): Remove ALLOCATE_TRAMPOLINE
+       usage.
+
+       * doc/tm.texi (Trampolines): Remove ALLOCATE_TRAMPOLINE.
+
+       * config/d30v/d30v.h: Remove traces of ALLOCATE_TRAMPOLINE.
+
+       * system.h: Poison ALLOCATE_TRAMPOLINE.
+
+       * doc/tm.texi (Misc): Remove HANDLE_PRAGMA.
+       * system.h: Poison HANDLE_PRAGMA.
+
+2003-05-31  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * doc/invoke.texi: Update dump file names.
+
+2003-05-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * c-format.c (format_length_info, format_char_info,
+       format_flag_spec, format_flag_pair, format_kind_info):
+       De-const-ify structure members.
+
+2003-05-31  Roger Sayle  <roger@eyesopen.com>
+
+       * flags.h (flag_wrapv): New flag controlling overflow semantics.
+       * toplev.c (flag_wrapv): Declare the variable with default false.
+       (lang_independent_options): New option "-fwrapv" to set the above.
+
+       * fold-const.c (extract_muldiv_1): Disable optimization of (2*x)/2
+       as x, when signed arithmetic overflow wraps around.
+       (fold): Optimize "-A - B" as "-B - A" if overflow wraps around.
+       * loop.c (basic_induction_var): Ignore BIVs that rely on undefined
+       overflow when flag_wrapv is true.
+
+       * doc/invoke.texi: Document new -fwrapv command line option.
+       * doc/c-tree.texi: Mention that the overflow semantics of
+       NEGATE_EXPR, PLUS_EXPR, MINUS_EXPR and MULT_EXPR is dependent
+       upon both flag_wrapv and flag_trapv.
+
+2003-05-31  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * doc/install.texi (mips-sgi-irix5): Add missing
+       HTML <hr> marker.
+
+2003-05-31  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * doc/md.texi (Machine Constraints): Document
+       missing SPARC constraints.
+
+2003-05-31  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * doc/md.texi (Automaton pipeline description): Use
+       "type" instead of "cpu" as the attribute in the examples.
+
+2003-05-30  Stan Shebs  <shebs@apple.com>
+
+       * system.h: Poison OBJC_PROLOGUE.
+
+2003-05-30  Roger Sayle  <roger@eyesopen.com>
+
+       * emit-rtl.c (gen_complex_constant_part): New function for getting
+       the constant real or imaginary part of a complex constant.
+       (gen_realpart): Use it.
+       (gen_imagpart): Likewise.
+
+2003-05-30  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * doc/invoke.texi: Fix typos.
+       * doc/rtl.texi: Likewise.
+
+2003-05-30  Dhananjay Deshpande  <dhananjayd@kpitcummins.com>
+
+       * config/h8300/crti.asm: Use .h8300hn and .h8300sn for normal
+       mode.
+       * config/h8300/crtn.asm: Likewise.
+       * config/h8300/lib1funcs.asm: Likewise.
+       * config/h8300/h8300.c (asm_file_start): Likewise.
+       * config/h8300/elf.h (LINK_SPEC): Use h8300hnelf and
+       h8300snelf emulations for normal mode.
+       * config/h8300/h8300.h (LINK_SPEC): Use h8300hn and h8300sn
+       emulations for normal mode.
+
+2003-05-30  Dhananjay Deshpande  <dhananjayd@kpitcummins.com>
+
+       * config/h8300/h8300.c (h8300_tiny_constant_address_p): Return
+       true if TARGET_NORMAL_MODE.
+
+2003-05-30  Roger Sayle  <roger@eyesopen.com>
+
+       * cse.c (cse_insn): Simplify REG_EQUAL note on libcalls when
+       making a substitution.
+       (dead_libcall_p): If directly replacing a libcall with a
+       constant value produces an invalid instruction, also try forcing
+       the constant into the constant pool.
+       * expr.c (emit_move_insn): Add a REG_EQUAL note when it is not
+       obvious that the source is a constant.
+       (compress_float_constant): Use set_unique_reg_note to place
+       REG_EQUAL notes on instructions.
+
+2003-05-30  Eric Christopher  <echristo@redhat.com>
+
+       * config/mips/mips.c (extern_list): Add GTY marker.
+       (extern_head): Separate out definition. Add marker.
+       (mips_output_external): Use ggc_alloc for extern_list
+       allocation.
+       (mips_output_external_libcall): Ditto.
+
+2003-05-30  Florian Weimer  <fw@deneb.enyo.de>
+
+       * doc/install.texi: Ada-enabled bootstrap requires GNAT 3.14 or
+       later.
+
+2003-05-30  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * vax.h (ASM_GENERATE_INTERNAL_LABEL): Fix format specifier
+       warnings.
+       (PRINT_OPERAND): Likewise.
+
+2003-05-30  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Move
+       -mdebug/-no-mdebug switches ...
+       (MDEBUG_ASM_SPEC): ... here.
+       Use only with gas.
+       (EXTRA_SPECS): Initialize mdebug_asm_spec.
+
+2003-05-29  Matt Kraai  <kraai@alumni.cmu.edu>
+
+       * gthr-gnat.c: Remove #undef UNUSED.
+       (__gnat_default_lock, __gnat_default_unlock): Prototype.
+       (__gnat_task_lock, __gnat_task_unlock): Make declarations
+       prototypes.
+       (__gnat_install_locks): Convert declaration to ISO C90, make
+       parameter declarations prototypes, and remove blank line.
+       * gthr-gnat.h (__gnat_install_locks): Make parameter
+       declarations prototypes.
+
+2003-05-29  Jason Merrill  <jason@redhat.com>
+
+       * Makefile.in (unstrap): Remove stage_last after make unstage1.
+
+2003-05-29  Roger Sayle  <roger@eyesopen.com>
+
+       * mips-tfile.c (PAGE_SIZE): Increase page size to 32K.
+
+2003-05-29  Roger Sayle  <roger@eyesopen.com>
+           Kaveh Ghazi  <ghazi@caip.rutgers.edu>
+
+       PR bootstrap/10169
+       * mips-tfile.c (main): Use getopt_long instead of getopt.
+       Add new command line option --version to display version.
+       Treat --verbose like -v to report a single line version.
+       (options): New global variable for getopt_long.
+       * mips-tdump.c (main): Use getopt_long instead of getopt.
+       New command line options -v, --version and -verbose to display
+       the program version number (to match mips-tfile's behavior).
+       (options): New global variable for getopt_long.
+
+       * gcov.c (options): Zero-terminate getopt_long array.
+       * gcov-dump.c (options): Likewise.
+
+       * Makefile.in (mips-tdump.o): Add dependency on version.h.
+
+2003-05-29  Stan Shebs  <shebs@apple.com>
+
+       Remove OBJC_PROLOGUE everywhere.
+       * objc/objc-act.c (finish_objc): Remove use of OBJC_PROLOGUE.
+       * config/avr/avr.h: Remove no-op ref to OBJC_PROLOGUE.
+       * config/d30v/d30v.h: Similarly.
+       * config/ip2k/ip2k.h: Similarly.
+       * doc/tm.texi: Remove doc of OBJC_PROLOGUE.
+
+2003-05-29  Roger Sayle  <roger@eyesopen.com>
+
+       * c-semantics.c (genrtl_do_stmt_1): New function split out from...
+       (gen_rtl_do_stmt): ... here.  Call genrtl_do_stmt_1.
+       (expand_unreachable_stmt): Expand unreachable while statements
+       using genrtl_do_stmt_1.
+
+2003-05-29  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips-protos.h (mips_output_load_label): Declare.
+       * config/mips/mips.c (mips_output_load_label): New function.
+       (mips_output_conditional_branch): Use it.
+       * config/mips/mips.md (jump): And here.
+
+2003-05-28  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa-protos.h (smalloffset_double_mem_p): Delete.
+       (xtensa_split_operand_pair): New proto.
+       * config/xtensa/xtensa.c (move_operand): Handle DFmode and DImode.
+       (smalloffset_double_mem_p): Delete.
+       (gen_float_relational, printx, print_operand, xtensa_va_arg):
+       Fix whitespace.
+       (xtensa_split_operand_pair): New.
+       (xtensa_dbx_register_number): Fix formatting.
+       * config/xtensa/xtensa.h (EXTRA_CONSTRAINT): Remove 'S' constraint.
+       * config/xtensa/xtensa.md (movdi, movdf): Force constants to memory
+       instead of splitting them into single-word moves.  Remove unnecessary
+       checks for reload_in_progress and reload_completed.
+       (movdi_internal, movdf_internal): Change to post-reload split patterns.
+       Add constraints to allow constant operands.
+       (movsf_internal): Allow CONST_INT operands.
+
+2003-05-27  Danny Smith   <dannysmith@users.sourceforge.net>
+
+       * config.gcc (i[34567]86-*-mingw32*): Add host makefile
+       fragment i386/x-mingw32.
+       * config/i386/x-mingw32: New file. Make local_includedir
+       relative to EXEC_PREFIX.
+
+2003-05-27  Aaron W. LaFramboise  <awlaframboise@aol.com>
+
+       * config/i386/mingw32.h (STANDARD_INCLUDE_DIR): Update.
+       (MD_STARTFILE_PREFIX): Define.
+
+2003-05-27  Denis Chertykov  <denisc@overta.ru>
+
+       * cselib.c (cselib_invalidate_regno): Abort if hardreg have a
+       VOIDmode.
+       * cselib.c (cselib_process_insn): Pass reg_raw_mode for hardreg in
+       call of cselib_invalidate_regno.
+
+2003-05-28  Daniel Jacobowitz  <drow@mvista.com>
+
+       * config/mips/linux.h (LIB_SPEC): Add missing -lc and correct
+       -lthread to -lpthread.
+
+2003-05-28  Eric Botcazou  <ebotcazou@libertysurf.fr>
+           Bruce Korb  <bkorb@gnu.org>
+           Arno Klaassen  <arno@heho.snv.jussieu.fr>
+
+       * fixinc/inclhack.def: Add missing declaration of getpagesize()
+       to unistd.h on Solaris 2.5.1.
+       Fix prototype of recv() and send() in sys/socket.h on
+       Solaris 2.5.1 and 2.6.
+       * fixinc/tests/base/unistd.h: Add solaris_unistd fix test.
+       * fixinc/tests/base/sys/socket.h: Add solaris_socket test.
+       * fixinc/check.tpl: Use 'diff -c', not 'diff -u'.
+       * fixinc/fixincl.x: Regenerate.
+
+2003-05-27  Jason Merrill  <jason@redhat.com>
+
+       * tree.c (expr_first, expr_length): New fns.
+       * tree.h: Declare them.
+
+       * tree.c (iterative_hash_expr): Hash commutative expressions
+       consistently.
+
+2003-05-27  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * tree.h (contains_placeholder_p): Now returns bool.
+       (CONTAINS_PLACEHOLDER_P): New macro.
+       (type_contains_placeholder_p): New function.
+       * tree.c (save_expr): Remove code avoiding folding COMPONENT_REF.
+       (contains_placeholder_p): Now returns bool.
+       Rework to use CONTAINS_PLACEHOLDER_P macro.
+       (type_contains_placeholder_p): New function.
+       * fold-const.c (fold, case COMPONENT_REF): Don't fold if
+       type_contains_placeholder_p.
+       (fold_range_test, fold_mathfn_compare, fold_inf_compare, fold):
+       Use CONTAINS_PLACEHOLDER_P macro.
+       * builtins.c (fold_builtin): Likewise.
+       * calls.c (initialize_argument_information): Likewise.
+       * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
+       * explow.c (expr_size): Likewise.
+       * expr.c (store_constructor, get_inner_reference): Likewise.
+       * function.c (assign_parms): Likewise.
+       * stor-layout.c (variable_size): Likewise.
+
+2003-05-25  Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+       * diagnostic.h (output_verbatim, verbatim):  Remove  printf
+       attribute.
+
+2003-05-25  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/contrib.texi (Contributors): Update Kean Johnston.
+
+2003-05-24  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.md (save_fpregs_{si,di}): Add length attribute.
+
+2003-05-24  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * config/rs6000/440.md, config/stormy16/stormy16protos.h,
+       config/stormy16/stormy16.c, config/stormy16/stormy16.md:
+       Replace "GNU CC" with "GCC".
+
+2003-05-24  Matt Kraai  <kraai@alumni.cmu.edu>
+
+       * builtins.c (expand_builtin_memcpy): Use mode of dest_addr for
+       intermediate computation.
+
+2003-05-23  Eric Christopher  <echristo@redhat.com>
+
+       * config/mips/mips.md (clzsi, clzdi): New patterns.
+
+2003-05-23  Geoffrey Keating  <geoffk@apple.com>
+
+       * gcc.c (default_compilers): Use -o to specify preprocessor's output
+       file.  Make -no-integrated-cpp work when building PCH files.
+       * objc/lang-specs.h: Likewise.
+
+2003-05-23  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * fixinc/Makefile.in: Correct description.
+       * fixinc/Makefile.in, fixinc/fixfixes.c, fixinc/fixincl.c,
+       fixinc/fixlib.c, fixinc/fixlib.h, fixinc/fixtests.c,
+       fixinc/genfixes: Replace "GNU CC" with "GCC".
+
+2003-05-23  Roger Sayle  <roger@eyesopen.com>
+
+       * builtins.def: Define atan, atanf, atanl, tan, tanf and tanl
+       builtin functions (and their __builtin_* variants).
+       * builtins.c (mathfn_built_in): Handle tan{,f,l} and atan{,f,l}.
+       (expand_builtin): Don't expand tan{,f,l} or atan{,f,l} when not
+       optimizing.
+
+       * doc/extend.texi: Document new tan and atan builtins, and
+       their float and long double variants.
+
+2003-05-23  Jason Thorpe  <thorpej@wasabisystems.com>
+
+       * config/sparc/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define
+       __sparcv9 in the TARGET_ARCH64 case.
+
+Fri May 23 22:17:32 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (ix86_reorg): Calls are also jumps.
+
+2003-05-23  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * cse.c (count_reg_usage): When processing an INSNs REG_EQUAL
+       note containing an EXPR_LIST, process all the arguments.
+
+Fri May 23 21:19:31 CEST 2003  Jan Hubicka  <jh@suse.cz>
+                              Andreas Jaeger  <aj@suse.de>
+
+       * i386.h (TARGET_CPU_CPP_BUILTINS): Define __amd64 and __amd64__;
+       do not use assertion.
+
+2003-05-23  Mike Stump  <mrs@apple.com>
+
+       * tlink.c (scan_linker_output): Add support for darwin linker, as it
+       emits unresolved symbols one per line, consuming the entire line.
+
+2003-05-23  Larin Hennessy <larin@science.oregonstate.edu>
+           Zack Weinberg <zack@codesourcery.com>
+
+       * explow.c (allocate_dynamic_stack_space): Remove call to gen_probe.
+       * config/m68k/m68k.c (m68k_output_function_prologue):
+       Remove code under #if NEED_PROBE.
+       * config/m68k/m68k.h: Don't define NEED_PROBE.
+       * config/m68k/m68k.md: Remove "probe" insn.
+       * doc/md.texi: Remove documentation of "probe" pattern.
+
+2003-05-23  Dorit Naishlos  <gcchaifa@il.ibm.com>
+
+       * config/rs6000/rs6000.md (save_fpregs_{si,di}): Add branch attribute.
+
+2003-05-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * doc/install.texi: Remove sparc64-*-*. Add sparc64-*-solaris2*.
+       Document sparcv9-*-solaris2* as a synonym for sparc64-*-solaris2*.
+
+2003-05-22  Roger Sayle  <roger@eyesopen.com>
+
+       * real.c (real_maxval): New function to return the largest finite
+       value representable in a given mode (i.e. FLT_MAX and DBL_MAX).
+       * real.h (real_maxval): Prototype here.
+       * fold-const.c (fold_inf_compare): Transform comparisons against
+       +-Infinity into comparisons against DBL_MAX (or equivalent).
+
+2003-05-22  Mike Stump  <mrs@apple.com>
+
+       * config.gcc (*-*-darwin*): Remove use_collect2=no, as it is the
+       default.
+
+2003-05-22  DJ Delorie  <dj@redhat.com>
+
+       * calls.c (expand_call): If the arg block is going to grow
+       downward, we need argblock to point to the top of the block,
+       not the bottom.
+
+2003-05-22  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * c-decl.c (duplicate_decls): Test DECL for ERROR_MARK.
+
+       * expr.c (expand_expr, case CONSTRUCTOR): Put into memory if
+       constant and EXPAND_CONST_ADDRESS, not just EXPAND_INITIALIZER.
+
+2003-05-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * m68hc11.c: Don't use the `0' flag for asm_fprintf specifiers.
+       * m68k.c: Likewise.
+       * m68k.h: Likewise.
+
+2003-05-22  Zack Weinberg  <zack@codesourcery.com>
+
+       PR other/2873
+       * fixinc/inclhack.def (avoid_wchar_t_type): Add bypass
+       expressions to prevent triggering on recent curses.h,
+       linux/nls.h, or X11/Xlib.h.
+       (stdio_va_list): Add _G_va_list to bypass pattern.
+       (strict_ansi_not): Add bypass pattern for __SCO_VERSION__.
+       * fixinc/fixincl.x: Regenerate.
+
+2003-05-22 Rekha Bhintade <rekhad@kpitcummins.com>
+
+       * gcc/config/sh/sh.h (TARGET_SWITCHES): Display all the target
+       switches when --target-help option is specified.
+
+2003-05-22  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR bootstrap/10805
+       * doc/install.texi (sparc-sun-solaris2.7): Document bootstrap
+       failure with Sun assembler 5.0 Alpha 03/27/98.
+
+2003-05-21  Loren James Rittle  <ljrittle@acm.org>
 
        * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Add -D__sparcv9
-       -D__sparc__ to match system compiler convention.
+       to match system compiler convention.
 
 2003-05-21  Danny Smith  <dannysmith@users.sourceforge.net>
 
 2003-05-19  Seth Arnold  <sarnold@wirex.com>
            Aldy Hernandez  <aldyh@redhat.com>
 
-        * config/rs6000/rs6000.c (rs6000_stack_info): Do not add
-        vrsave_size twice.
+       * config/rs6000/rs6000.c (rs6000_stack_info): Do not add
+       vrsave_size twice.
 
 2003-05-19  Aldy Hernandez  <aldyh@redhat.com>
 
-        * doc/tm.texi (function_arg): Fix typo.
+       * doc/tm.texi (function_arg): Fix typo.
 
 2003-05-19  Matt Austern  <austern@apple.com>
 
        * doc/invoke.texi: Document -Winvalid-offsetof.
        * testsuite/g++.dg/other/offsetof3.C: New.
        * testsuite/g++.dg/other/offsetof4.C: New.
-       
+
 2003-05-19  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
-            David Edelsohn  <edelsohn@gnu.org>
+           David Edelsohn  <edelsohn@gnu.org>
 
        * config/rs6000/rs6000.c (rs6000_alignment_string,
        rs6000_alignment_flags): New variables.
@@ -2469,7 +4092,7 @@ Mon May 12 11:32:53 CEST 2003  Jan Hubicka  <jh@suse.cz>
                * config/mips/mips.c (mips_symbol_insns): Rework.  Fix handling
                of unaligned offsets.
 
-               * config/mips/mips.c (mips_splittable_symbol_p): Fix handling
+               * config/mips/mips.c (mips_splittable_symbol_p): Fix handling
                of SYMBOL_GENERAL.
 
        2003-03-22  Richard Sandiford  <rsandifo@redhat.com>
@@ -2657,7 +4280,7 @@ Mon May 12 11:32:53 CEST 2003  Jan Hubicka  <jh@suse.cz>
 
        2003-02-02  Eric Christopher  <echristo@redhat.com>
 
-               * config/mips/mips.c (mips_sign_extend): Remove.
+               * config/mips/mips.c (mips_sign_extend): Remove.
                * config/mips/mips-protos.h: Ditto.
                * config/mips/mips.md (movdi_internal2_extend): Remove.
                (extendsidi2): Fix mode of convert_memory_address.
@@ -2745,7 +4368,7 @@ Mon May 12 11:32:53 CEST 2003  Jan Hubicka  <jh@suse.cz>
                simple_memory_operand, double_memory_operand, mips_check_split,
                mips_address_cost, pic_address_needs_scratch, mips16_gp_offset,
                mips16_gp_offset_p, mips16_output_gp_offset,
-               mips16_constant_after_function_p, mips16_constant): Remove.
+               mips16_constant_after_function_p, mips16_constant): Remove.
                (call_insn_operand): Be more fussy about symbolic constants.
                Use register_operand.
                (move_operand): Use mips_symbolic_address_p to check symbolic
@@ -2973,7 +4596,7 @@ Mon May 12 11:32:53 CEST 2003  Jan Hubicka  <jh@suse.cz>
                * cnfig/mips/mips.md (reload_incc): Change destination prediate
                to fcc_register_operand.  Remove misleading source constraint.
                Use mips_emit_fcc_reload.
-                       (reload_outcc): Duplicate reload_incc.
+               (reload_outcc): Duplicate reload_incc.
 
 
 2003-04-30  Diego Novillo  <dnovillo@redhat.com>