OSDN Git Service

* config/xtensa/xtensa.c (print_operand): Fix incorrect mode
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index ce9c9b3..e2a2102 100644 (file)
@@ -1,3 +1,144 @@
+2002-03-22  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.c (print_operand): Fix incorrect mode
+       passed to adjust_address.  Fix comment formatting.
+
+
+2002-03-22  Zack Weinberg  <zack@codesourcery.com>
+
+       * real.h: Don't define REAL_INFINITY or REAL_IS_NOT_DOUBLE.
+       Always make REAL_VALUE_TYPE a struct containing an array of
+       HOST_WIDE_INT, not a double.  Tidy up the code deciding how
+       big it is.  Don't declare or use union real_extract.
+
+       * emit-rtl.c (init_emit_once), varasm.c (immed_real_const_1,
+       decode_rtx_const, output_constant_pool), config/a29k/a29k.c
+       (print_operand), config/arm/arm.c (output_move_double),
+       config/arm/arm.md (consttable_4, consttable_8),
+       config/romp/romp.c (output_fpops), config/s390/s390.h
+       (ASM_OUTPUT_SPECIAL_POOL_ENTRY), config/xtensa/xtensa.c
+       (xtensa_output_literal): Don't use union real_extract.
+
+       * config/dsp16xx/dsp16xx.c (print_operand), config/i860/i860.c
+       (sfmode_constant_to_ulong), config/ns32k/merlin.h
+       (PRINT_OPERAND), config/ns32k/ns32k.c (print_operand),
+       config/pdp11/pdp11.h (PRINT_OPERAND), config/we32k/we32k.h
+       (PRINT_OPERAND): Don't use local version of union
+       real_extract.
+
+       * config/convex/convex.c (check_float_value), config/vax/vax.c
+       (vax_float_literal), config/m88k/m88k.md (divdf3),
+       config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2),
+       config/pdp11/pdp11.c (output_move_quad): Don't do host
+       arithmetic on target floating point quantities.
+
+       * config/a29k/a29k.md, config/dsp16xx/dsp16xx.c
+       (output_dsp16xx_float_const): Don't test HOST_FLOAT_FORMAT.
+
+       * fold-const.c (fold), simplify-rtx.c (simplify_binary_real):
+       Use MODE_HAS_INFINITIES rather than #ifdef REAL_INFINITY.
+
+       * real.c (earith): Test INFINITY rather than REAL_INFINITY;
+       NANS implies INFINITY, so can drop #ifdef NANS inside #ifndef
+       INFINITY.
+       * print-rtl.c (print_rtx): Disable code which needs
+       floating-point emulator.
+       * libgcc2.c: Include float.h and use DBL_MANT_DIG,
+       FLT_MANT_DIG, to define DF_SIZE and SF_SIZE, rather than
+       depending on HOST_FLOAT_FORMAT to be defined properly.
+
+       * config/1750a/1750a.c (get_double, float_label): Delete.
+       (print_operand): Delete huge commented-out chunk.  Use
+       REAL_VALUE_TO_DECIMAL.
+       * config/1750a/1750a-protos.h: Delete prototypes of deleted
+       functions.
+       * config/convex/convex.h: Always set TARGET_FLOAT_FORMAT to
+       IEEE_FLOAT_FORMAT.
+       * config/i370/i370.h (PRINT_OPERAND [TARGET_HLASM version]):
+       Use REAL_VALUE_TO_DECIMAL as ELF version does.
+       * config/m88k/m88k.c (real_power_of_2_operand,
+       legitimize_operand): Take the REAL_VALUE_TYPE and/or union
+       real_extract out of the union; run the input through
+       REAL_VALUE_TO_TARGET_DOUBLE, then plug the pair of longwords
+       from that into the union.
+       * config/pdp11/pdp11.c (output_move_double): Rearrange
+       parentheses to make automatic indenter happy.
+
+       * doc/tm.texi (Cross-compilation): Rename node to "Floating
+       Point" and rewrite to describe current situation.  Also adjust
+       documentation of REAL_VALUE_TO_TARGET_SINGLE and friends to
+       match code.
+       * doc/rtl.texi: Adjust cross reference.
+
+2002-03-22  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa-protos.h (non_acc_reg_operand): Remove.
+       (xtensa_valid_move, xtensa_preferred_reload_class): Define.
+       * config/xtensa/xtensa.c (non_acc_reg_operand): Remove.
+       (xtensa_valid_move, xtensa_preferred_reload_class): Define to
+       prevent use of sp as a reload register.
+       (xtensa_emit_move_sequence): Use xtensa_valid_move instead of
+       non_acc_reg_operand.
+       * config/xtensa/xtensa.h (PREDICATE_CODES): Remove non_acc_reg_operand.
+       (PREFERRED_RELOAD_CLASS): Move code to xtensa_preferred_reload_class.
+       * config/xtensa/xtensa.md (movsi_internal, movhi_internal,
+       movqi_internal): Use xtensa_valid_move instead of non_acc_reg_operand.
+
+2002-03-22  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cpphash.h (struct cpp_reader): Remove mls_line and mls_col.
+       * cpplex.c (unterminated): Delete.
+       (parse_string): No string literal may extend over multiple
+       lines.  Suppress the error when preprocessing assembly.
+       * cppmain.c (scan_translation_unit): Strings are single-line.
+
+       * doc/cpp.texi: Update to match.
+
+2002-03-22  Jakub Jelinek  <jakub@redhat.com>
+
+       PR optimization/5854
+       * config/m68hc11/m68hc11.h (CONST_OK_FOR_LETTER_VALUE_P): Use K for 0.
+       Shut up warnings.
+       (CONST_DOUBLE_OK_FOR_LETTER_P): Use G for 0.0.
+       (EXTRA_CONSTRAINT): Use S for non-push memory operand.
+       * config/m68hc11/m68hc11.c (m68hc11_split_move): Handle setting from
+       const0 if scratch register was not allocated.
+       (m68hc11_reload_operands, m68hc11_gen_lowpart, m68hc11_gen_highpart,
+       m68hc11_z_replacement): Replace gen_rtx (CONST_INT, VOIDmode, ...)
+       with GEN_INT (...).
+       (m68hc11_reorg): Compute BLOCK_FOR_INSN before reload_cse_regs.
+       * config/m68hc11/m68hc11.md: Replace gen_rtx (CONST_INT, VOIDmode, ...)
+       with GEN_INT (...) everywhere.  Remove constraints in define_split
+       patterns.
+       (movdi_internal, movdf_internal, movsi_internal, movsf_internal): Don't
+       require scratch register for setting 0 into regs/non-pushable memory.
+
+2002-03-22  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/mips/mips.h (MASK_RETURN_ADDR): Define.
+       (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define.
+
+2002-03-22  Phil Edwards  <pme@gcc.gnu.org>
+
+       * cpplib.h (struct cpp_options):  New member, warn_endif_labels.
+       * cppinit.c (cpp_create_reader):  On by default.
+       (cpp_handle_option):  Handle -W[no-]endif-labels.
+       (cpp_post_options):  Also enable if -pedantic.
+       * cpplib.c (do_else):  Use it.
+       (do_endif):  Likewise.
+       * doc/cppopts.texi:  Document new option.
+       * doc/invoke.texi:  Document new option.
+
+2002-03-22  Lars Brinkhoff  <lars@nocrew.org>
+
+       * config/i386/i386.c, config/i386/i386.md: Change all occurences
+       of GEN_INT (trunc_int_for_mode (...)) to gen_int_mode (...).
+
+2002-03-22  Alexandre Oliva  <aoliva@redhat.com>
+
+       * flow.c (calculate_global_regs_live): Clear aux fields of
+       ENTRY and EXIT.
+
 2002-03-22  Jakub Jelinek  <jakub@redhat.com>
 
        * config/v850/v850.c (v850_reorg): Only call alter_subreg on
@@ -426,7 +567,7 @@ Tue Mar 19 14:12:32 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
 2002-03-18  Mark Mitchell  <mark@codesourcery.com>
 
-       * calls.c (precompute_arguments): Do not assume that temporaries 
+       * calls.c (precompute_arguments): Do not assume that temporaries
        can be destroyed after expanding the argument.
        (expand_call): Likewise.