OSDN Git Service

2002-04-19 Joel Sherrill <joel@OARcorp.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 9b1f9e1..18c69ab 100644 (file)
@@ -1,3 +1,281 @@
+2002-04-19     Joel Sherrill <joel@OARcorp.com>
+
+       * config/rtems.h (STARTFILE_SPEC, ENDFILE_SPEC): Fix for non-ELF
+       targets.
+
+2002-04-19  Tom Tromey  <tromey@redhat.com>
+
+       * doc/install.texi (Specific): Update status of Solaris 2.8.
+       For PR libgcj/6158.
+
+2002-04-19  Andreas Schwab  <schwab@suse.de>
+
+       * real.c: Allow sizeof (REAL_VALUE_TYPE) > 2*NE.
+       (PUT_REAL): Restore old definition.
+
+2002-04-19  Dan Nicolaescu  <dann@godzilla.ics.uci.edu>
+           Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/install.texi (Specific, sparc-sun-solaris2*): Mention that
+       binutils 2.11.2 and higher generate smaller binaries than Sun's
+       native tools.
+
+2002-04-19  Mark Mitchell  <mark@codesourcery.com>
+
+       PR c++/6352
+       * toplev.c (rest_of_compilation): Do not defer functions for which
+       TREE_SYMBOL_REFERENCED has already been set.
+
+Fri Apr 19 15:53:03 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * i386.md (movsi_1, movhi_1): Force reload to use more flexible
+       alternative.
+
+2002-04-19  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * builtins.c: Include langhooks.h.
+       (lang_type_promotes_to): Remove.
+       (expand_builtin_va_arg): Use new hook.
+       * c-common.c (c_common_nodes_and_builtins): Don't set hook.
+       (simple_type_promotes_to): Move to c-typeck.c.
+       * c-common.h (simple_type_promotes_to): Remove.
+       * c-decl.c (duplicate_decls, grokdeclarator): Update.
+       * c-format.c: Include langhooks.h.
+       (check_format_types): Update.
+       * c-tree.h (c_type_promotes_to): New.
+       * c-typeck.c (c_type_promotes_to): Move from c-common.c.
+       (type_lists_compatible_p): Update.
+       * langhooks-def.h (lhd_type_promotes_to): New.
+       (LANG_HOOKS_TYPE_PROMOTES_TO): New.
+       (LANG_HOOKS_FOR_TYPES_INITIALIZER): Update.
+       * langhooks.c (lhd_type_promotes_to): New.
+       * langhooks.h (struct lang_hooks_for_types): New hook.
+       * tree.h (lang_type_promotes_to): Remove.
+objc:
+       * objc-lang.c (LANG_HOOKS_TYPE_PROMOTES_TO): Redefine.
+
+2002-04-18  Richard Henderson  <rth@redhat.com>
+
+       * function.c: Revert patch for c/6358.
+
+2002-04-18  Richard Henderson  <rth@redhat.com>
+
+       * ifcvt.c (find_cond_trap): Handle cases with no proper THEN or JOIN
+       blocks.  Handle multiple references to the TRAP block.  Handle
+       non-adjacent THEN and OTHER blocks.
+
+2002-04-18  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/ia64.c (ia64_function_arg_pass_by_reference): Don't
+       crash with no type for by-mode libcalls.
+
+       * config/ia64/ia64.md (conditional_trap): Fix predicate polarity.
+
+2002-04-18  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill,
+       __xtensa_nonlocal_goto): Use a syscall instructions to flush
+       the register windows.
+
+2002-04-18  Zack Weinberg  <zack@codesourcery.com>
+
+       * real.h: Define REAL_VALUE_TYPE_SIZE as 96 or 160, as
+       appropriate.  Document need for extended precision even when
+       MAX_LONG_DOUBLE_TYPE_SIZE is smaller.  Define REAL_WIDTH here,
+       based on REAL_VALUE_TYPE_SIZE.  Use REAL_WIDTH to size
+       REAL_VALUE_TYPE.  Define CONST_DOUBLE_FORMAT here.  Use #error
+       instead of relying on later syntax error when REAL_WIDTH > 5.
+       * real.c: Define NE based only on whether or not we have a
+       full 128-bit extended type (not INTEL_EXTENDED_IEEE_FORMAT).
+       Require sizeof(REAL_VALUE_TYPE) == 2*NE.  Unconditionally
+       define GET_REAL and PUT_REAL as simple memcpy operations; no
+       need to byteswap or round.
+       Use #error instead of #ifdef-ing out the entire file, for
+       prompt error detection.
+
+       * rtl.c, gengenrtl.c: No need to calculate CONST_DOUBLE_FORMAT here.
+
+2002-04-18  David S. Miller  <davem@redhat.com>
+
+       * config/sparc/sparc.h (BRANCH_COST): Define.
+
+       * fold-const.c (BRANCH_COST): Don't provide default here, expr.h
+       does it.
+
+2002-04-18  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * flow.c (update_life_info): Ignore return value of cleanup_cfg.
+       Mask out PROP_SCAN_DEAD_CODE | PROP_KILL_DEAD_CODE in
+       propagate_block calls after relaxation loop using new variable
+       stabilized_prop_flags.
+
+2002-04-18  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/ia64.c (ia64_function_arg_pass_by_reference): New.
+       (ia64_va_arg): Expect variable sized types by reference.
+       * config/ia64/ia64-protos.h: Update.
+       * config/ia64/ia64.h (FUNCTION_ARG_PASS_BY_REFERENCE): Use
+       ia64_function_arg_pass_by_reference.
+
+2002-04-18  Richard Henderson  <rth@redhat.com>
+
+       * ifcvt.c: Include except.h.
+       (block_has_only_trap): Break out from find_cond_trap.
+       (find_cond_trap): Use it.  Always delete the trap block.
+       (merge_if_block): Allow then block null.  Be less simplistic about
+       what insns can end a block.
+       * Makefile.in (ifcvt.o): Depend on except.h.
+
+       * config/ia64/ia64.md (trap, conditional_trap): New.
+
+2002-04-18  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/6358
+       * function.c (assign_parms): Assign hard current_function_return_rtx
+       register here...
+       (expand_function_end): ...not here.
+
+2002-04-18  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * c-lang.c (LANG_HOOKS_INCOMPLETE_TYPE_ERROR): Redefine.
+       * c-tree.h (c_incomplete_type_error): New.
+       * c-typeck.c (require_complete_type, build_component_ref): Update.
+       (incomplete_type_error): Rename.
+       * langhooks-def.h (lhd_incomplete_type_error): New.
+       (LANG_HOOKS_INCOMPLETE_TYPE_ERROR): New.
+       (LANG_HOOKS_FOR_TYPES_INITIALIZER): Update.
+       * langhooks.c (lhd_incomplete_type_error): New.
+       * langhooks.h (struct lang_hooks_for_types): New hook.
+       * tree.c (size_in_bytes): Use new hook.
+       * tree.h (incomplete_type_error): Remove.
+objc:
+       * objc-lang.c (LANG_HOOKS_INCOMPLETE_TYPE_ERROR): Redefine.
+
+2002-04-18  Zack Weinberg  <zack@codesourcery.com>
+
+       * config/arc/arc.md: Remove #if HOST_FLOAT_FORMAT !=
+       TARGET_FLOAT_FORMAT blocks.
+
+2002-04-18  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/install.texi (Downloading the source): Do not mention Chill
+       any longer, but mention Ada.
+       (Configuration): Do not mention Chill any longer.
+
+2002-04-18  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/cris.h (TARGET_VERSION): Remove local version number.
+
+Thu Apr 18 17:14:08 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * i386.h (SSE_FLOAT_MODE_P): Fix bogus conflict resolution
+       in last patch.
+
+2002-04-18  Jakub Jelinek  <jakub@redhat.com>
+
+       * fold-const.c (fold): Use (*lang_hooks.types.unsigned_type)
+       instead of unsigned_type.
+
+Thu Apr 18 15:49:12 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * i386.h (SSE_FLOAT_MODE_P): Kill bogus TARGET_SSE_MATH check.
+       * i386.md (sse_mov?fcc*): Swap operands for cases they will be swapped
+       later.
+
+2002-04-18  Bernd Schmidt  <bernds@redhat.com>
+
+       * attribs.c (vector_type_node_list): New static variable.
+       (handle_vector_size_attribute): Use it to avoid generating a
+       new type node each time we are called.
+
+       * combine.c (subst): Avoid trying to make a vector mode subreg of
+       an integer constant.
+       (gen_lowpart_for_combine): Likewise.
+
+2002-04-18  Roger Sayle  <roger@eyesopen.com>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       * fold-const.c (fold) [NOP_EXPR]: Convert (T)(x&c) into ((T)x&(T)c)
+       for integer constant c (if x has unsigned type or sign bit is not
+       set in c).  This folds the zero/sign extension into the bit-wise and
+       operation.
+
+2002-04-18  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/6205
+       * config/i386/i386.md (movsf_1): Use pxor only if TARGET_SSE2,
+       otherwise xorps.
+
+2002-04-17  NIIBE Yutaka  <gniibe@m17n.org>
+
+       * config/sh/elf.h: Undefine ASM_OUTPUT_CASE_LABEL.
+
+2002-04-17  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * gcc.c (read_specs): Detect and fail if an attempt is made to
+       rename a spec string to an already existing string.
+
+2002-04-17  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.c (legitimize_pic_address): Do not generate
+       illegal address constant without CONST.
+
+2002-04-17  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * sparc/linux64.h (CC1_SPEC): Error for -m32 and -m64.
+       * sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
+
+2002-04-17  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       PR optimization/6305
+       * config/s390/s390.c (s390_expand_plus_operand): Use find_replacement
+       to make sure previous reloads are taken into account.  Generate
+       better code if one operand is an in-range immediate constant.
+
+2002-04-16  Andrew Haley  <aph@cambridge.redhat.com>
+
+       * doc/install.texi (Building): libgcj requires GNU make.
+
+2002-04-17  Jakub Jelinek  <jakub@redhat.com>
+
+       PR bootstrap/6315
+       * config/sparc/sparc.md (movtf reg<-reg split): Allow spliting
+       even if hard quad and register is not floating.
+       (movtf reg<-mem split): Disallow splitting if hard quad and
+       register is floating.
+       (movtf mem<-reg split): Likewise.
+       * config/sparc/sparc.c (fp_register_operand): New predicate.
+       * config/sparc/sparc.h (PREDICATE_CODES): Add fp_register_operand.
+
+2002-04-17  Zack Weinberg  <zack@codesourcery.com>
+
+       * Makefile.in (PROTO_OBJS): Add cppdefault.o.
+       (protoize.o): Take $(PREPROCESSOR_DEFINES) off command line.
+       (unprotoize.o): Ditto.  Build from protoize.c.  Define
+       UNPROTOIZE on command line.
+       * protoize.c: Include cppdefault.h.  Delete include_defaults.
+       (in_system_include_dir): Use cpp_include_defaults (defined in
+       cppdefault.o).
+       * unprotoize.c: Delete file.
+
+2002-04-17  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/altivec.h (vec_ld): Add array variants.
+       (vec_lde): Same.
+       (vec_ldl): Same.
+
+2002-04-17  Alan Matsuoka  <alanm@redhat.com>
+           Aldy Hernandez <aldyh@redhat.com>
+
+       * config/rs6000/altivec.h: Define __ALTIVEC__.
+       (bool): New.
+       (__pixel): New.
+       (pixel): New.
+       (vec_cfux): New.
+       (vec_vmaddfp): New.
+       (vec_vsldoi): New.
+       Add parentheses to all macro arguments.
+
 2002-04-16  Richard Henderson  <rth@redhat.com>
 
        PR c++/6320
 
        PR target/6305
        * config/s390/s390.md (mulsidi3): Set both subregs of the
-       multiword register. 
+       multiword register.
 
 2002-04-16  Aldy Hernandez  <aldyh@redhat.com>
 
        the only supported ways to configure gcc.
 
 2002-04-15  Roland McGrath  <roland@frob.com>
+
        * config.gcc (alpha*-*-gnu*): New target configuration.
        * config/alpha/gnu.h: New file for it.
        * config/gnu.h (TARGET_MEM_FUNCTIONS): #undef before #define.
        * stmt.c (expand_start_stmt_expr): Add has_scope parameter.
        * tree-inline.c (expand_call_inline): Set STMT_EXPR_NO_SCOPE
        on the STMT_EXPR created for the inline function.
-       
+
 2002-04-15  Richard Henderson  <rth@redhat.com>
 
        * config/alpha/linux.h, config/arm/linux-elf.h, config/i370/linux.h,
@@ -345,7 +623,7 @@ Fri Apr 12 15:42:59 2002  Jeffrey A Law  (law@redhat.com)
        * config/ia64/ia64.h (ASM_SPEC): Moved from here ...
        * config/ia64/sysv4.h (ASM_SPEC): ... to here, so that it
        overrides the definition in config/svr4.h.
-       
+
 2002-04-12     Eric Norum <eric.norum@usask.ca>
 
        * config/rtems.h, config/a29k/rtems.h, config/arm/rtems-elf.h,
@@ -393,7 +671,7 @@ Fri Apr 12 10:51:38 2002  J"orn Rennecke <joern.rennecke@superh.com>
 
        * flow.c (mark_used_reg): Manage reg_cond_dead properly for
        modes spanning multiple hard regs.
-    
+
        * recog.c (peephole2_optimize): Rebuild jump labels as needed.
 
 2002-04-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>