OSDN Git Service

* gcse.c (delete_null_pointer_checks_1): Set stop_insn to end, not
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 12345f5..bd4942d 100644 (file)
@@ -1,3 +1,578 @@
+2004-02-24  Alan Modra  <amodra@bigpond.net.au>
+
+       * gcse.c (delete_null_pointer_checks_1): Set stop_insn to end, not
+       beginning of block.
+
+2004-02-23  James E Wilson  <wilson@specifixinc.com>
+
+       * calls.c (precompute_arguments): Update comment.
+
+2004-02-23  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * et-forest.c: Replace et_occurences with et_occurrences.
+
+2004-02-23  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * cfgloop.h, loop-iv.c, loop-unswitch.c: Replace iv_analyse
+       with iv_analyze.
+
+2004-02-23  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * config/i386/i386.c: Rename pni to sse3.
+       * config/i386/i386.h: Likewise.
+        * config/i386/i386.md: Likewise.
+       * config/i386/pmmintrin.h: Likewise.
+       * doc/extend.texi: Likewise.
+       * doc/invoke.texi: Likewise.
+
+2004-02-23  Zack Weinberg  <zack@codesourcery.com>
+           Kazu Hirata  <kazu@cs.umass.edu>
+
+       Remove -fwritable-strings.
+       * c-common.c (fix_string_type): Don't check
+       flag_writable_strings.
+       (fix_string_type): Likewise.
+       * c-opts.c (set_std_c89): Don't initialize
+       flag_writable_strings.
+       (set_std_c99): Likewise.
+       * common.opt (fwritable-strings): Remove.
+       * flags.h: Remove the external declaration of
+       flag_writable_strings.
+       * opts.c (common_handle_option) <OPT_fwritable_strings>:
+       Remove.
+       * toplev.c (flag_writable_strings): Remove.
+       (f_options): Remove an entry for writable-strings.
+       * varasm.c (const_hash_1) <STRING_CST>: Don't check
+       flag_writable_strings.
+       (compare_constant) <STRING_CST>: Likewise.
+       (build_constant_desc): Likewise.
+       * config/darwin.c (machopic_select_section): Likewise.
+       * config/arm/arm.c (AOF_ASSEMBLER): Likewise.
+       * config/arm/pe.c (arm_pe_encode_section_info): Likewise.
+       * config/iq2000/iq2000.c (iq2000_select_section): Likewise.
+       * config/mips/mips.c (mips_select_section): Likewise.
+       (mips_encode_section_info): Likewise.
+       * config/pa/pa.c (pa_select_section): Likewise.
+       * config/pa/pa.h (TEXT_SPACE_P): Likewise.
+       * config/v850/v850.c (v850_select_section): Likewise.
+       * doc/invoke.texi (-fwritable-strings): Remove.
+       (-fno-const-strings): Don't mention -fwritable-strings.
+       * doc/trouble.texi: Don't mention -fwritable-strings.
+
+2003-02-23  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * doc/install.texi: Update for switch of boehm-gc to autoconf 2.57.
+
+2003-02-23  Matt Austern  <austern@apple.com >
+
+       * config/darwin.h (SUBTARGET_OPTIONS): Add -mmacosx= option.
+       (macosx_version_min_required): Declare global variable.
+       * config/darwin-protos.h (darwin_parse_macosx_version_name): Declare.
+       * config/darwin.c (macosx_version_min_required): Define variable.
+       (darwin_macosx_vers_tbl): Define. Table mapping text strings of
+       OS versions to numerical codes.
+       (darwin_parse_macosx_version_name): Define.  Parse -mmacosx=,
+       set macosx_version_min_required appropriately.
+       * config/i386/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Define.
+       Invoke darwin_parse_macosx_version_name.
+       * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Add
+       darwin_parse_macosx_version_name to Darwin option handling.
+       * doc/invoke.texi (-mmacosx=): Document.
+       
+2004-02-23  Dale Johannesen  <dalej@apple.com>
+
+       * config/rs6000.md (movsf_hardfloat): Add POWER form of nop.
+       (movdf_hardfloat64):  Ditto.
+       (movdf_softfloat64):  Ditto.
+
+2004-02-23  Fariborz Jahanian <fjahanian@apple.com>
+        * config/rs6000/rs6000.c (function_arg): call to
+       rs6000_mixed_function_arg for DFmode moved to allow
+       normal DFmode incoming register assignment.  
+
+2004-02-23  Dale Johannesen  <dalej@apple.com>
+
+       * config/rs6000.md (movsf_hardfloat): Accept CTR-to-CTR copy.
+       (movdf_hardfloat64):  Ditto.
+
+2004-02-23  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * convert.c, gcov-io.c, libgcov.c, sched-int.h, sibcall.c,
+       config/rs6000/linux.h, config/rs6000/rs6000-c.c: Update
+       copyright.
+
+2004-02-23  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR c/14156
+       * c-typeck.c (c_expand_return): Change check for VAR_DECL
+       to use DECL_P instead.
+
+       * config/rs6000/linux.h (OS_MISSING_POWERPC64): Define.
+       * config/rs6000/linux64.h (OS_MISSING_POWERPC64): Define.
+
+2004-02-23  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * Makefile.in (opts.o): Depend on target.h.
+       * opts.c (decode_options): Use targetm.default_short_enums
+       instead of DEFAULT_SHORT_ENUMS.
+       * system.h (DEFAULT_SHORT_ENUMS): Poison.
+       * target-def.h (TARGET_DEFAULT_SHORT_ENUMS): New.
+       (TARGET_INITIALIZER): Add TARGET_DEFAULT_SHORT_ENUMS.
+       * target.h (gcc_target): Add default_short_enums.
+       * config/cris/cris.h: Remove a comment about
+       DEFAULT_SHORT_ENUMS.
+       * config/ip2k/ip2k.h: Likewise.
+       * doc/tm.texi (DEFAULT_SHORT_ENUMS): Change to
+       TARGET_DEFAULT_SHORT_ENUMS.  Update the description.
+
+2004-02-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
+            Falk Hueffner  <falk@debian.org>
+
+       PR c/14188
+       * builtins.c (expand_builtin_va_arg): Emit an informative message
+       if a trap is generated.
+       * c-typeck.c (build_function_call): Likewise.
+
+2004-02-22  Jakub Jelinek  <jakub@redhat.com>
+
+       * gcov-io.c (gcov_open) [GCOV_LOCKED]: Use open + fdopen instead of
+       fopen.
+       * libgcov.c: Include sys/stat.h.
+       * config/rs6000/linux.h (TARGET_HAS_F_SETLKW): Define.
+       * config/rs6000/linux64.h (TARGET_HAS_F_SETLKW): Define.
+       * config/sparc/linux.h (TARGET_HAS_F_SETLKW): Define.
+       * config/sparc/linux64.h (TARGET_HAS_F_SETLKW): Define.
+
+2004-02-22  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * reorg.c: Remove comments about dead ports.
+
+2004-02-22  Christopher Faylor  <cgf@redhat.com>
+
+       * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): *Really* specify
+       extra host object file when targetting cygwin rather than generic
+       object files.
+
+2004-02-22  Josef Zlomek  <zlomekj@suse.cz>
+
+       Merge from tree-ssa:
+       2003-11-20  Richard Henderson  <rth@redhat.com>
+
+               * tree-inline.c (insert_decl_map): New.
+               (remap_decl, remap_type, remap_block, copy_body_r,
+               initialize_inlined_parameters, declare_return_variable,
+               remap_save_expr): Use it.
+
+       * function.c (copy_body_r): Add mapping from id->ret_label to
+       id->ret_label.  Revert test for ret_label.
+
+2004-02-22  Jakub Jelinek  <jakub@redhat.com>
+
+       * genoutput.c (process_template): Strip trailing whitespace in @
+       templates and issue a warning if there was any.
+
+2004-02-21  Christopher Faylor  <cgf@redhat.com>
+
+       * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): Specify extra host
+       object file when targetting cygwin.
+       * config/i386/t-cygwin (EXTRA_GCC_OBJS): Remove definition since it is
+       overridden by top-level Makefile.
+
+2004-02-21  Roger Sayle  <roger@eyesopen.com>
+
+       * config/i386/i386.c (standard_80387_constant_p): Also prefer
+       the x87's load constant instructions when optimizing for size.
+
+2004-02-21  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * combine.c (SHIFT_COUNT_TRUNCATED): Remove.
+       * defaults.h (SHIFT_COUNT_TRUNCATED): Provide the default.
+       * expmed.c: Assume SHIFT_COUNT_TRUNCATED is always defined.
+       * fold-const.c: Likewise.
+       * simplify-rtx.c: Likewise.
+
+2004-02-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * combine.c (can_combine_p): Don't ignore SETs marked with
+       REG_EH_REGION notes.
+       (try_combine): When attemting to fix unrecognized insns, don't
+       split a PARALLEL that contains the original i2.
+
+2004-02-21  Ziemowit Laski  <zlaski@apple.com>
+
+       * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Refer to
+       SUBTARGET_OPTION_TRANSLATE_TABLE for architecture-specific options.
+       * config/i386/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): Define it.
+       * config/rs6000/altivec.h: #error out if '-maltivec' not specified.
+       (vector, pixel, bool): #define to __vector, __pixel and __bool.
+       (__un_args_eq, __bin_args_eq, __tern_args_eq): Move to C-specific
+       portion of header.
+       (__altivec_link_error_invalid_argument): Remove prototype; will use
+       __builtin_altivec_compiletime_error("vec_*") instead.
+       (vec_*): Fix/complete set of available operation overloads given the
+       existence of distinct 'vector bool ...' and 'vector pixel' types; tighten
+       cv-correctness of pointer arguments; in C, always check for correct
+       argument types before macro expansion.
+       * config/rs6000/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): New macro
+       defining Darwin/PowerPC-specific '-f[no-]altivec' and
+       '-W[no-]altivec-long-deprecated' switches.
+       * config/rs6000/rs6000-c (rs6000_cpu_cpp_builtins): Pre-define
+       '__vector', '__pixel' and '__bool' macros using
+       '__attribute__((altivec(...)))' types.
+       * config/rs6000/rs6000.c (bool_char_type_node, bool_short_type_node,
+       bool_int_type_node, pixel_type_node, bool_V16QI_type_node,
+       bool_V8HI_type_node, bool_V4SI_type_node, pixel_V8HI_type_node):
+       New type nodes.
+       (rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch): New, for
+       handling '-W[no-]altivec-long-deprecated'.
+       (rs6000_override_options): Handle '-W[no-]altivec-long-deprecated'.
+       (rs6000_expand_binop_builtin, rs6000_expand_ternop_builtin,
+       altivec_expand_dst_builtin): Remove casts from integer literals.
+       (altivec_expand_builtin): Likewise; handle expansion of new
+       '__builtin_altivec_compiletime_error' function.
+       (rs6000_init_builtins): Initialize 'vector bool ...' and 'vector pixel'
+       types, and make them distinct from other vector types; register
+       '__builtin_altivec_compiletime_error' function.
+       (print_operand): For 'P', print a full target register name instead of
+       merely its number.
+       (rs6000_attribute_table): Add "altivec" attribute.
+       (rs6000_handle_altivec_attribute): New function.
+       * config/rs6000/rs6000.h (TARGET_OPTIONS): Describe 
+       '-m[no-]-warn-altivec-long' (which '-W[no-]altivec-long-deprecated'
+       maps to).
+       (rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch): Forward
+       declare.
+       (ALTIVEC_BUILTIN_COMPILETIME_ERROR): New built-in enumeration.
+
+2004-02-20  James E Wilson  <wilson@specifixinc.com>
+
+       * config/ia64/ia64.md (shift_mix4left+1): Delete reload_completed
+       check.
+       (shift_mix4left+2): Delete redundant pattern.
+
+2004-02-20  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * alias.c (OUTGOING_REGNO): Don't define the default.
+       * builtins.c (OUTGOING_REGNO): Likewise.
+       (INCOMING_REGNO): Likewise.
+       (apply_args_register_offset): Always use OUTGOING_REGNO.
+       * combine.c (OUTGOING_REGNO): Likewise.
+       * sibcall.c (OUTGOING_REGNO): Likewise.
+       * defaults.h (INCOMING_REGNO): Provide the default.
+       (OUTGOING_REGNO): Likewise.
+
+2004-02-21  Jan Hubicka  <jh@suse.cz>
+
+       * params.def (max-peeled-insns, max-completely-peeled-insns,
+       max-once-peeled-insns): Set to 400.
+
+2004-02-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+        PR c++/12007
+       * dbxout.c (dbxout_parms): Check that DECL_RTL and DECL_INCOMING_RTL
+       are set for parameters before outputing debugging information.
+
+2004-02-20  Falk Hueffner  <falk@debian.org>
+
+       PR target/14201
+       * config/alpha/alpha.md (*fix_truncsfsi_ieee): Fix typoed operand
+       numbers.
+
+2004-02-20  Per Bothner  <per@bothner.com>
+
+       * input.h:  Don't #include line-map.h.  It may cause link problems
+       with undefined linemap_line_start when line-map.h is included but
+       line-map.o is not linked, as currently happens with gengtype on
+       compilers that don't support inline.
+       * toplev.c:  So we do have to explicitly #include line-map.h here.
+
+2004-02-20  Richard Henderson  <rth@redhat.com>
+
+       * doc/invoke.texi: Add -Wvariadic-macros.
+
+2004-02-20  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * haifa-sched.c (sched_emit_insn): Remove.
+       * sched-int.h: Remove the corresponding prototype.
+
+2004-02-20  Kazu Hirata  <kazu@cs.umass.edu>
+
+       Revert:
+       2004-02-19  Kazu Hirata  <kazu@cs.umass.edu>
+       * opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS.
+       * system.h (DEFAULT_SHORT_ENUMS): Poison.
+       * config/cris/cris.h: Remove a comment about
+       DEFAULT_SHORT_ENUMS.
+       * config/ip2k/ip2k.h: Likewise.
+       * doc/tm.texi (DEFAULT_SHORT_ENUMS): Remove.
+
+2004-02-20  Mohan Embar  <gnustuff@thisiscool.com>
+           Tom Tromey  <tromey@redhat.com>
+
+       * doc/install.texi: Moved --disable-libgcj and
+       --with-system-zlib documentation to new section for
+       Java-specific options.
+       Added explicit Cross-Compiler-Specific Options subheading.
+       Added section for Java-specific options.
+
+2004-02-20  Matt Kraai  <kraai@alumni.cmu.edu>
+
+       * doc/install.texi (Building the Ada compiler): Remove
+        example.
+
+2004-02-20  James E Wilson  <wilson@specifixinc.com>
+
+       * toplev.c (dump_file_index, dump_file): Put ce3 before rnreg.
+
+2004-02-20  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * gcc.c (process_command): Allow translation of the copyright
+       symbol but not the rest of the copyright message.
+       * gcov.c (print_version): Likewise.  Allow translation of the
+       message about warranty.
+
+2004-02-20  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/cris.md ("*andsi_movu"): Correct parentheses in
+       predicate.
+       ("*andsi_clear"): Tweak constraints to not match postincrement.
+       Adjust the predicate to exclude a volatile memory reference.
+       ("*andhi_clear"): Ditto.  Rename from "*andhi_clear_signed".
+       ("*andhi_clear_unsigned"): Remove, non-matching pattern.
+
+2004-02-19  Matt Kraai  <kraai@alumni.cmu.edu>
+
+       * move-if-change: Remove.
+       * Makefile.in (s-mlib, c-parse.y, s-check, s-gencheck)
+       (s-specs, s-options, s-config, s-conditions, s-flags, s-codes)
+       (s-constants, s-emit, s-recog, s-opinit, s-extract, s-peep)
+       (s-attr, s-attrtab, s-output, s-genrtl, s-modes, s-preds)
+       (s-gtyp-gen, s-iov): Use the top level move-if-change.
+       * objc/Make-lang.in (objc/objc-parse.y): Likewise.
+
+2004-02-19  James E Wilson  <wilson@specifixinc.com>
+
+       * config/i386/i386.md (doloop_end_internal): Use nonimmediate_operand
+       for operand2.  Add condition that requires register_operand operand2
+       before reload.
+
+2004-02-19  Richard Sandiford  <rsandifo@redhat.com>
+           Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
+
+       * config/mips/mips.c (mips_address_insns): Treat BLKmode specially.
+       * config/mips/mips.md: Expand comment above unaligned loads and stores.
+
+2004-02-19  Richard Henderson  <rth@redhat.com>
+
+       * Makefile.in (STRICT2_WARN): Add -Wno-variadic-macros.
+       * tree.c (build0, build1, build2, build3, build4): Split out from...
+       (build): ... here.  Call them.
+       * tree.h (build, _buildN1, _buildN2, _buildC1, _buildC2): New.
+
+       * convert.c (convert_to_integer): Remove extra build argument.
+       * tree-inline.c (expand_call_inline): Likewise.
+
+2004-02-19  Richard Henderson  <rth@redhat.com>
+
+       * c-opts.c (warn_variadic_macros): New.
+       (c_common_handle_option): Set it.
+       (sanitize_cpp_opts): Copy it to cpp_opts.
+       * c.opt (Wvariadic-macros): New.
+       * cpplib.h (struct cpp_options): Add warn_variadic_macros.
+       * cppinit.c (cpp_create_reader): Initialize it.
+       * cppmacro.c (parse_params): Check it.
+
+2004-02-19  David Daney <ddaney@avtrex.com>
+
+       PR preprocessor/14198
+       * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Add
+       builtin_assert ("machine=mips")
+
+2004-02-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS.
+       * system.h (DEFAULT_SHORT_ENUMS): Poison.
+       * config/cris/cris.h: Remove a comment about
+       DEFAULT_SHORT_ENUMS.
+       * config/ip2k/ip2k.h: Likewise.
+       * doc/tm.texi (DEFAULT_SHORT_ENUMS): Remove.
+
+2004-02-19  Zack Weinberg  <zack@codesourcery.com>
+
+       * config/ia64/ia64.c (ia64_function_arg): In big-endian mode,
+       when passing single SFmode quantities in general registers,
+       put them in the high half.
+
+2004-02-19  Aldy Hernandez  <aldyh@redhat.com>
+
+       * doc/md.texi (Standard Names): Document additional dependency on
+       fix pattern.
+
+       * optabs.c (ftruncify): Remove.
+       (expand_fix): Manually inline ftruncify above.
+       (can_fix_p): Add FIXME note.
+
+2004-02-19  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/spe.md (spe_fixunssfsi2): Rename to
+       spe_fixuns_truncsfsi2.
+
+       * config/rs6000/rs6000.md (fixunssfsi2): Rename to
+       fixuns_truncsfsi2.
+
+2004-02-19  Steve Ellcey  <sje@cup.hp.com>
+
+       * config/ia64/ia64.h (HARD_REGNO_CALLER_SAVE_MODE): New macro.
+       * testsuite/gcc.dg/20040219-1.c: New test.
+
+2004-02-19  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.md ("*subdf3_cc", "*subdf3_cconly", "*subsf3_cc",
+       "*subsf3_cconly"): Subtraction is not commutative.
+
+2004-02-19  Zack Weinberg  <zack@codesourcery.com>
+
+       * sdbout.c (preinit_symbols, sdbout_initialized): New statics.
+       (sdbout_symbol): If called before sdbout_init, queue DECL for
+       later and return.
+       (sdbout_init): Set sdbout_initialized true, process decls
+       queued earlier by sdbout_symbol.
+       (sdbout_finish): Use size_t for index variable.
+
+2004-02-19  Jeff Law  <law@redhat.com>
+
+       * fold-const.c (invert_truthvalue): Do not call invert_tree_comparison
+       for unordered comparison codes.
+
+2004-02-19  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * reload1.c (reload): Correct comment.
+       (scan_paradoxical_subregs): Remove #if 0 and old comment.
+       * doc/extend.texi (Local Reg Vars): Remove obsolete comment that
+       register variables are not used by reload.
+
+2004-02-19  Hans-Peter Nilsson  <hp@axis.com>
+
+       PR target/14209
+       * config/cris/cris.md ("*andsi_movu", "*andhi_movu"): Tweak
+       constraints to not match postincrement.  Adjust the predicate to
+       exclude a volatile memory reference.
+
+2004-02-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/mcore/mcore.h (ASM_OUTPUT_EXTERNAL): Remove.
+
+2004-02-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * hooks.c (hook_void_tree_int): Remove.
+       (hook_void_constcharptr): Likewise.
+       (hook_int_void_0): Likewise.
+       * hooks.h: Remove the prototypes for the above three
+       functions.
+       * targhooks.c (hook_bool_machine_mode_true): Remove.
+       * targhooks.h: Remove the prototype for
+       hook_bool_machine_mode_true.
+
+2004-02-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * emit-rtl.c (subreg_realpart_p): Remove.
+       (reorder_insns_with_line_notes): Likewise.
+       (end_full_sequence): Likewise.
+       * rtl.h: Remove the prototype for the above functions.
+
+2004-02-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/arc/arc.h, config/arm/arm.h, config/frv/frv.h,
+       config/h8300/h8300.h, config/i386/i386.h, config/i860/i860.h,
+       config/iq2000/iq2000.h, config/m32r/m32r.h,
+       config/pdp11/pdp11.h, config/sparc/sparc.h,
+       config/xtensa/xtensa.h: Remove commented-out or useless
+       definitions of CASE_VECTOR_PC_RELATIVE.
+
+2004-02-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * loop.c (all_sets_invariant_p): Remove.
+
+2004-02-19  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR target/12916
+       * config/sparc/sparc.h (NPARM_REGS): Delete.
+       (BASE_RETURN_VALUE_REG): Likewise.
+       (BASE_OUTGOING_VALUE_REG): Likewise.
+       (BASE_PASSING_ARG_REG): Likewise.
+       (BASE_INCOMING_ARG_REG): Likewise.
+       * config/sparc/sparc.c (sparc_strict_argument_naming): Test
+       TARGET_ARCH64, not TARGET_V9.
+       (function_arg_slotno): Dispatch based on the mode class.
+       Handle vector modes like floating-point modes.
+       (function_arg_record_value_1): Handle vector types like
+       floating-point types.
+       (function_arg_record_value_2): Likewise.
+       Calculate regno after mode transformation.
+       (function_arg): Handle vector modes like floating-point modes.
+       (function_arg_partial_nregs): Replace NPARM_REGS by SPARC_INT_ARG_MAX.
+       If ARCH64, do not recheck alignment.
+       (function_arg_pass_by_reference): Reorder the conditions.
+       (sparc_return_in_memory): Move after function_arg_padding.
+       Implement calling conventions for vector modes.
+       (sparc_struct_value_rtx): Move after sparc_return_in_memory.
+       (function_value): Move scope of 'regbase'.
+       Implement calling conventions for vector modes.
+       (sparc_builtin_saveregs): Replace NPARM_REGS by SPARC_INT_ARG_MAX
+       and BASE_INCOMING_ARG_REG by SPARC_INCOMING_INT_ARG_FIRST.
+       (sparc_va_arg): Use function_arg_pass_by_reference to test whether
+       the argument is passed by reference.
+       (sparc_type_code): Handle vector types.
+
+2004-02-19  Alan Modra  <amodra@bigpond.net.au>
+
+       * function.c (assign_parms): When building decl_rtl for
+       SPLIT_COMPLEX_ARGS, ensure inner modes of concat match outer.
+
+2004-02-19  Olivier Hainque  <hainque@act-europe.fr>
+
+       * expr.c (is_aligning_offset): Check if we are aligning the
+       expressions's address over BIGGEST_ALIGNMENT in bytes, not
+       in bits.
+
+2003-02-18  Matt Austern  <austern@apple.com>
+
+       * gcc.c (LIBGCC_SPEC): If REAL_LIBGCC_SPEC is defined, and
+       LIBGCC_SPEC isn't, set LIBGCC_SPEC to REAL_LIBGCC_SPEC.
+       (init_gcc_spec): Don't define or call if REAL_LIBGCC_SPEC is
+       defined.  Instead use REAL_LIBGCC_SPEC, unmodifed, as the libgcc
+       spec string.
+       * doc/tm.texi (REAL_LIBGCC_SPEC): Document.
+
+2004-02-18  Zack Weinberg  <zack@codesourcery.com>
+
+       * dwarf2out.c (loclabel_num): Move outside #ifdef
+       DWARF2_DEBUGGING_INFO and mark with GTY(()).
+       * config/ia64/ia64.c (struct extern_func_list,extern_func_head):
+       Mark with GTY(()).
+       (ia64_hpux_add_extern_decl): Save the decl, not the name string.
+       Allocate memory with ggc_alloc.  No need to copy anything.
+       (ia64_hpux_file_end): Update to match.
+
+2004-02-18  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/i386/i386.c (override_options): Don't imply 3DNow! for -m64
+       by default.
+
+2004-02-18  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.md ("divmodtidi3"): Use canonical RTL.
+       ("divmodtisi3"): Likewise.
+       ("udivmoddi4", "udivmodtidi3"): Likewise.
+       ("divmodsi4", "divmoddisi3"): Likewise.
+       ("udivmodsi4", "udivmoddisi3"): Likewise.
+       ("udivsi3", "umodsi3"): Likewise.
+
+2004-02-18  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.c (s390_mainpool_start): Delete the main pool
+       placeholder insn when chunkifying the pool.
+
 2004-02-18  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
 
        * pa.h (PIC_OFFSET_TABLE_REGNUM): Define to INVALID_REGNUM when not
 
 2004-02-17  Ulrich Weigand  <uweigand@de.ibm.com>
 
-       * combine.c (simplify_if_then_else): Do not replace 
+       * combine.c (simplify_if_then_else): Do not replace
        (if_then_else (ne reg 0) (0) (const_int)) by (reg) if the
        modes differ.
 
        * config/mips/t-irix-gld: ... this.
        * config.gcc (mips-sgi-irix6*): Reflect this
        (mips-sgi-irix5*): Use it with GNU ld.
-       
+
        * config/mips/irix6-crti.asm, config/mips/irix6-crtn.asm: Renamed
        to ...
        * config/mips/irix-crti.asm, config/mips/irix-crtn.asm: ... this.
        * config/mips/t-irix-gld: Reflect this.
        * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
-       
+
        * config/mips/iris5gld.h: New file.
        * config.gcc (mips-sgi-irix5*): Use it with GNU ld.
        Only use collect2 without gas.
-       
+
        * config/mips/iris6.h (IRIX6_STARTFILE_SPEC, IRIX6_ENDFILE_SPEC):
        Renamed to IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC.
        (STARTFILE_SPEC, ENDFILE_SPEC, SUBTARGET_EXTRA_SPECS): Reflect this.
        * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
-       
+
        * config/mips/iris6.h (SUBTARGET_EXTRA_SPECS): Moved ...
        * config/mips/iris5.h: ... here.
 
        * config/mips/iris5.h (STARTFILE_SPEC, ENDFILE_SPEC): Renamed to
-       IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC. 
+       IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC.
        (STARTFILE_SPEC, ENDFILE_SPEC): Define.
-       
+
        * config/mips/iris5gas.h (STARTFILE_SPEC, ENDFILE_SPEC): Simplify
        using irix_startfile_spec, irix_endfile_spec.
 
        New function.
        (ia64_output_mi_thunk): Use it.
        (ia64_struct_value_rtx): Likewise.
-       
+
 2004-02-17  Kazu Hirata  <kazu@cs.umass.edu>
 
        * config/h8300/h8300.c (h8300_emit_stack_adjustment):
 
 2004-02-16  Matthias Klose  <doko@debian.org>
 
-        * config/t-slibgcc-elf-ver: Define SHLIB_NAME and SHLIB_SONAME
-        in terms of SHLIB_SOVERSION.
-        * config/m68k/t-slibgcc-elf-ver: New file.
-        * config/pa/t-slibgcc-elf-ver: New file.
-        * config.gcc (m68k-linux, parisc-linux): Use them when not 
+       * config/t-slibgcc-elf-ver: Define SHLIB_NAME and SHLIB_SONAME
+       in terms of SHLIB_SOVERSION.
+       * config/m68k/t-slibgcc-elf-ver: New file.
+       * config/pa/t-slibgcc-elf-ver: New file.
+       * config.gcc (m68k-linux, parisc-linux): Use them when not
        sjlj exceptions are not configured.
 
 2004-02-16  Eric Botcazou  <ebotcazou@libertysurf.fr>