OSDN Git Service

* pa.md: Change predicate of a peephole2 pattern from reg_or_0_operand
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 2bd5d7d..6c0b664 100644 (file)
+2004-01-28  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * pa.md: Change predicate of a peephole2 pattern from reg_or_0_operand
+       to register_operand.
+
+2004-01-28  Zack Weinberg  <zack@codesourcery.com>
+
+       * config/ia64/ia64.md (fetchadd_acq_si, fetchadd_acq_di)
+       (cmpxchg_acq_si, cmpxchg_acq_di): Exchange match_dup and
+       match_operand expressions so that all match_dups appear
+       lexically after their corresponding match_operands.
+
+2004-01-28  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.c (WORD_REG_USED): Use
+       HARD_FRAME_POINTER_REGNUM instead of FRAME_POINTER_REGNUM.
+       (compute_saved_regs): Likewise.
+       (h8300_expand_prologue): Likewise.  Allocate locals after
+       saving registers.
+       (h8300_expand_epilogue): Use HARD_FRAME_POINTER_REGNUM instead
+       of FRAME_POINTER_REGNUM.  Deallocate locals before saving
+       registers.
+       (h8300_initial_elimination_offset): Adjust for the new frame
+       layout, which swaps flips the order of locals and saved
+       registers.
+       * config/h8300/h8300.h (FIRST_PSEUDO_REGISTER): Change to 12.
+       (HARD_FRAME_POINTER_REGNUM): New.
+       (ELIMINABLE_REGS): Add an elimination rule from
+       FRAME_POINTER_REGNUM to HARD_FRAME_POINTER_REGNUM.
+       (REGISTER_NAMES): Add fp.
+       * config/h8300/h8300.md (FP_REG): Change to 11.
+       (HFP_REG): New.
+
+2004-01-28  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * genrecog.c (write_node): Remove a useless local variable.
+
+2004-01-28  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * Makefile.in (options.c options.h): Use stamp file s-options to
+       avoid unnecessary rebuilds.
+       (options.o): New target listing dependencies.
+       (gtyp-gen.h): Use stamp file s-gtyp-gen.
+       (STAGESTUFF): Add s-gtyp-gen.
+
+2004-01-28  Richard Henderson  <rth@redhat.com>
+
+       * ggc.h (ggc_free): Declare.
+       * ggc-common.c (ggc_realloc): Use it.
+       * ggc-page.c: Remove lots of inline markers.
+       (globals): Add free_object_list.
+       (ggc_alloc): Tidy.
+       (ggc_free, validate_free_objects): New.
+       (poison_pages): Provide default.
+       (ggc_collect): Call validate_free_objects; emit markers to
+       the debug file.
+
+2004-01-28  Zack Weinberg  <zack@codesourcery.com>
+           Jim Wilson  <wilson@specifixinc.com>
+
+       * config/ia64/ia64.c (ia64_split_tmode, ia64_split_tmode_move):
+       Rewrite to use POST_INC/POST_DEC/POST_MODIFY instead of a
+       scratch pointer.
+       (ia64_secondary_reload_class): Delete case GR_REGS.
+       * config/ia64/ia64.md (movti, *movti_internal, movtf, *movtf_internal):
+       Do not allocate a scratch register.
+       (reload_inti, reload_outti, reload_intf, reload_outtf): Delete.
+
+2004-01-28  Jan Hubicka  <jh@suse.cz>
+
+       * gcse.c (bypass_block): Prevent edges to be unified when we are
+       about to emit compenstation code.
+
+2004-01-28  Nick Clifton  <nickc@redhat.com>
+
+       * config/arm/arm.c (arm_expand_builtin): Force second argument of
+       the setcwx insn into a register.
+
+2004-01-28  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/fp-bit.c (pack_d): When using paired doubles to implement
+       a long double, round the high part separately.
+       (unpack_d): Fix the case in which the high part is a power of two
+       and the low part is a nonzero value of the opposite sign.
+
+2004-01-28  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/c4x/c4x.c (TARGET_ASM_EXTERNAL_LIBCALL): New.
+       (TARGET_STRUCT_VALUE_RTX): Likewise.
+       (c4x_external_libcall): Likewise.
+       (c4x_struct_value_rtx): Likewise.
+       * config/c4x/c4x.h: Remove.
+       (STRUCT_VALUE_REGNUM): Likewise.
+       (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
+
+2004-01-28  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/i386/i386.c (TARGET_PROMOTE_PROTOTYPES): New.
+       (TARGET_STRUCT_VALUE_RTX): Likewise.
+       * config/i386/i386.h (STRUCT_VALUE_INCOMING): Remove.
+       (STRUCT_VALUE): Likewise.
+       (PROMOTE_PROTOTYPES): Likewise.
+
+2004-01-27  Roger Sayle  <roger@eyesopen.com>
+
+       * config/pa/pa.c (emit_move_sequence): Check that operand1 is a
+       CONST_INT before using INTVAL.
+
+2004-01-27  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.h (TARGET_DEFAULT): Default to !TARGET_BACKCHAIN.
+       * config/s390/s390.c (s390_return_addr_rtx): Fail for all but current
+       frame if !TARGET_BACKCHAIN.
+       * config/s390/s390.md ("allocate_stack"): Use pattern only if
+       TARGET_BACKCHAIN.
+       * doc/invoke.texi (-mbackchain/-mno-backchain): Document new default.
+
+2004-01-27  Zack Weinberg  <zack@codesourcery.com>
+
+       * ia64.c (ia64_function_arg): When placing HFAs in integer
+       registers, do not special case the mode used for complex
+       types.  Do not advance int_regs until the current register
+       is full.
+
+2004-01-27  Richard Sandiford  <rsandifo@redhat.com>
+
+       PR target/7297
+       * except.c (init_eh): Use a 5-word __jbuf for __builtin_setjmp().
+
+2004-01-27  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.c (rs6000_emit_move): #if 0 splitting
+       slow, unaligned loads and stores while debugging.  Fix formatting.
+
+2004-01-27  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.md (save_stack_nonlocal): Use Pmode instead
+       of computing wmode.
+       (restore_stack_nonlocal): Same.
+
+2004-01-27  Devang Patel <dpatel@apple.com>
+
+       * Makefile.in (dwarf2out.o): Depend on input.h
+       * dbxout.c (dbx_debug_hooks): Add new empty hook for
+       imported_module_or_decl.
+       (xcoff_debug_hooks): Same.
+       * sdbout.c (sdb_debug_hooks): Same.
+       * vmsdbgout.c (vmsdbg_debug_hooks): Same.
+       * debug.c (do_nothing_debug_hooks): Same.
+       (debug_nothing_tree_tree): New function.
+       * debug.h (gcc_debug_hooks): New hook, imported_module_or_decl.
+       * dwarf2out.c: Include input.h.
+       (dwarf2_debug_hooks): Add new hook for imported_module_or_decl.
+       (remove_child_TAG): New function.
+       (dwarf_tag_name): Handle DW_TAG_imported_module.
+       (gen_subprogram_die): Equate decl number to declaration die. Do not
+       remove all children dies while reusing declaration die for definition.
+       Instead, selectively remove only formal parameters.
+       (gen_variable_die): Equate variable decl to declaration die.
+       (gen_field_die): Equate field decl to line number.
+       (force_namespace_die): Replace it with ...
+       (force_decl_die): ... this.
+       (force_type_die): New function.
+       (setup_namespace_context): Replace use of force_namespace_die() with
+       force_decl_die().
+       (gen_namespace_die): Same.
+       (dwarf2out_imported_module_or_decl): New function.
+
 2004-01-27  Bob Wilson  <bob.wilson@acm.org>
-       
+
        * config/xtensa/xtensa.c (xtensa_copy_incoming_a7): Remove SUBREG
        on CQImode and CHImode incoming arguments in register a7.
        (function_arg): Wrap BLKmode argument in register a7 in a PARALLEL.
        * config/xtensa/xtensa.h (BLOCK_REG_PADDING): Define.
        * config/xtensa/xtensa.md (movdi, movdf): Only call force_reg or
        xtensa_copy_incoming_a7 before reload.
-       
+
 2004-01-27  J"orn Rennecke <joern.rennecke@superh.com>
 
        * coverage.c (get_coverage_counts): Give a different message
 
 2004-01-24  James A. Morrison  <ja2morri@uwaterloo.ca>
 
-        * fixinc/fixinc.c (test_test): Initialize res.
+       * fixinc/fixinc.c (test_test): Initialize res.
        (start_flexer): Initialize pz_cmd_save.
 
 2004-01-27  Zack Weinberg  <zack@codesourcery.com>