OSDN Git Service

* Makefile.in (libgcc.mk): Depend on specs.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 01d3cc6..b5303fc 100644 (file)
@@ -1,3 +1,285 @@
+2002-06-14  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * Makefile.in (libgcc.mk): Depend on specs.
+
+Fri Jun 14 12:15:11 2002  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * sh.md (mulsi3): Update way how to find insns in a sequence.
+
+Fri Jun 14 12:04:02 2002  Dhananjay R. Deshpande <dhananjayd@kpit.com>
+
+       * sh.h: Define HARD_REGNO_RENAME_OK
+       * sh.c: sh_hard_regno_rename_ok: New. If current function has
+       interrupt_handler attribute, only registers saved on stack are OK.
+       * sh-protos.h: Declare sh_hard_regno_rename_ok.
+
+2002-06-14  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.md (jump): Emit jump insn.
+       (call_pcrel): Get pattern of the result of gen_call_site.
+       (call_value_pcrel, sibcall_pcrel, GOTaddr2picreg): Likewise.
+
+2002-06-14  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cpphash.h (struct cpp_buffer): Remove saved_line_base.
+       * cpptrad.c: Update comments.
+       (skip_whitespace, copy_comment): Take a new parameter.
+       (skip_escaped_newlines): Don't duplicate escaped newline test.
+       (copy_comment): Different location for CUR, decide here how
+       to copy / replace the comment.
+       (skip_whitespace): Copy whitespace.
+       (_cpp_overlay_buffer, _cpp_remove_overlay): Don't play with line_base.
+       (scan_out_logical_line): Let copy comment handle keeping or
+       replacing comments.
+       (scan_parameters, _cpp_create_trad_definition): Update.
+
+2002-06-13  Alan Lehotsky  <apl@alum.mit.edu>
+
+       * reload.c (get_secondary_mem,find_reloads_address,
+       find_reloads_address_1): Pass reference to MEM to find_reloads_address
+       so that LEGITIMIZE_RELOAD_ADDRESS will be called.
+       
+2002-06-13  Jessica Han  <jessica@cup.hp.com>
+
+       * defaults.h (TARGET_VTABLE_ENTRY_ALIGN): New.
+       (TARGET_VTABLE_DATA_ENTRY_DISTANCE): New.
+       * doc/tm.texi: Document them.
+       * config/ia64/ia64.h (TARGET_VTABLE_ENTRY_ALIGN): New.
+       (TARGET_VTABLE_DATA_ENTRY_DISTANCE): New.
+       (TARGET_VTABLE_USES_DESCRIPTORS): 4 word descriptors for 32-bit mode.
+       (ASM_OUTPUT_FDESC): Likewise.
+
+2002-06-13  Eric Christopher  <echristo@redhat.com>
+
+       * diagnostic.c (output_format): Fix thinko.
+
+Thu Jun 13 22:34:33 2002  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * config/sh/coff.h (HAS_INIT_SECTION, INVOKE__MAIN): Don't define.
+       (DWARF2_UNWIND_INFO): Define to 0.
+
+       * config/sh/sh.c (calc_live_regs): Don't use initial_value
+       optimization for PR_MEDIA_REG.
+
+2002-06-13  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cpphash.h (_cpp_lex_identifier_trad): Remove.
+       * cpplib.c (end_directive): Don't skip, always remove overlay
+       apart from #define.
+       (prepare_directive_trad): Handle NULL pfile->directive.
+       (_cpp_handle_directive): Always call prepare_directive_trad
+       if traditional.
+       * cppmain.c (check_multiline_token): Rename account_for_newlines,
+       generalize inputs.
+       (scan_translation_unit_trad): Use it.
+       * cpptrad.c (skip_comment): Rename copy_comment, copy comment to
+       output, get escaped newline in comment close correct.
+       (check_output_buffer, skip_whitespace): Update.
+       (_cpp_lex_identifier_trad): Remove.
+       (scan_out_logical_line): Handle -C and comments in directives
+       properly.
+
+Thu Jun 13 20:18:38 2002  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * config.gcc: Add support for sh[234]*-*-elf*, sh[2346lbe]*-*-linux*.
+       * config/sh/linux.h (TARGET_DEFAULT): Use TARGET_CPU_DEFAULT.
+       * sh.h (SELECT_SH1, SELECT_SH2, SELECT_SH3, SELECT_SH3E): New macros.
+       (SELECT_SH4_NOFPU, SELECT_SH4_SINGLE_ONLY, SELECT_SH4): Likewise.
+       (SELECT_SH4_SINGLE, SELECT_SH5_64, SELECT_SH5_64_NOFPU): Likewise.
+       (SELECT_SH5_32, SELECT_SH5_32_NOFPU, SELECT_SH5_COMPACT): Likewise.
+       (SELECT_SH5_COMPACT_NOFPU): Likewise.
+       (TARGET_SWITCHES): Use them.
+       (TARGET_CPU_DEFAULT): Define if not already defined.
+       (TARGET_DEFAULT): Use it.
+       (LINK_DEFAULT_CPU_EMUL): Value now depends on TARGET_CPU_DEFAULT.
+       * config/sh/t-linux (MULTILIB_OPTIONS): Use MULTILIB_ENDIAN.
+       * config/sh/t-monolib: New file.
+
+2002-06-13  Roger Sayle  <roger@eyesopen.com>
+
+       * toplev.c (rest_of_compilation): Simplify (and correct) the
+       logic of the first delete-null-pointer-checks pass.
+
+Thu Jun 13 18:24:17 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (ix86_expand_movstr):  Fix pasto.
+
+Thu Jun 13 18:18:17 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * reload.c (find_valid_class):  Fix thinko in my previous patch.
+
+2002-06-13  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.h (TARGET_CPU_CPP_BUILTINS): New macro.
+       * config/s390/linux.h (TARGET_OS_CPP_BUILTINS): New macro.
+       (CPP_PREDEFINES, CPP_SPEC, CPP_ARCH31_SPEC, CPP_ARCH64_SPEC): Remove.
+       (EXTRA_SPECS): Remove cpp_arch31 and cpp_arch64.
+
+2002-06-13  Gabriel Dos Reis  <gdr@codesourcery.com>
+
+       * tree-inline.c (expand_call_inline): Don' mess with _DECL
+       fields.
+
+2002-06-13  Gabriel Dos Reis  <gdr@codesourcery.com>
+
+       * diagnostic.c (output_format): Recognize "%H" as a format
+       specifier for a location_t.
+       (text_specifies_location): New function.
+       (diagnostic_set_info): Use it.
+
+2002-06-13  Jeffrey Law  <law@redhat.com>
+
+       * emit-rtl.c (static_regno_reg_rtx): Define.
+       (init_emit_once): Initialize static_regno_reg_rtx.
+       (init_emit): Copy static_regno_reg_rtx into regno_reg_rtx instead
+       of building new hard reg objects once per function.
+       (gen_rtx_REG): Try to share hard regs.
+       * regclass.c (init_fake_stack_mems): New function broken out from
+       init_regs.
+       * rtl.h (init_fake_stack_mems): Declare.
+       * toplev.c (lang_independent_init): Call init_regs before
+       init_emit_once.  Call init_fake_stack_mems after init_emit_once.
+
+       * i386.md (extenddfxf2, extenddftf2): Fix typo/thinko.
+
+       * alias.c (argument_registers): Remove.
+       (init_alias_once): Initialize static_reg_base_value here.  Remove
+       initialization of argument_registers.
+       (init_alias_once_per_function): Remove.
+       (init_alias_analysis): Copy all the entries from static_reg_base_value
+       into new_reg_base_value all at once.
+       * rtl.h (init_alias_once_per_function): Remove declaration.
+       * function.c (prepare_function_start): Do not call
+       init_alias_once_per_function.
+
+       * caller-save.c (init_caller_save): Use gen_rtx_INSN instead of
+       starting a sequence and emitting an INSN.
+
+2002-06-13  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/r3900.h (MIPS_CPU_STRING_DEFAULT): Make lower case.
+
+2002-06-13  David S. Miller  <davem@redhat.com>
+
+       * expmed.c (init_expmed): Remove duplicate init of 'reg'.
+
+2002-06-13  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cpplib.c (end_directive): Handle line skipping.  Only remove
+       the rest of the line if the directive was valid.
+       * cppmacro.c (_cpp_push_text_context): Set NODE_DISABLED when
+       expanding a traditional macro.
+       * cpptrad.c (recursive_macro): New.
+       (read_logical_line_trad): Handle skipping.
+       (scan_out_logical_line): Continue after a successful directive.
+       Don't expand macros whilst skipping, or if recursing.
+       (_cpp_create_trad_definition): scan_out_logical_line now sets
+       the output current position.
+
+2002-06-12  Eric Christopher  <echristo@redhat.com>
+
+       * config/mips/mips.md (prefetch, prefetch_di, prefetch_si): New
+       patterns.
+       * config/mips/mips.h (RTX_COSTS): Fix formatting.
+
+2002-06-12  Eric Christopher  <echristo@redhat.com>
+
+       From Chris Demetriou  <cgd@broadcom.com>
+       * config/mips/mips.h (ISA_HAS_FP4): Add ISA_MIPS64 and fix
+       comment.
+       (ISA_HAS_MADD_MSUB): Ditto.
+       (ISA_HAS_NMADD_NMSUB): Ditto.
+
+2002-06-12  Eric Christopher  <echristo@redhat.com>
+
+       * config.gcc: Consolidate little endian handling and
+       little/big endian targets.
+       * config/mips/elfl.h: Remove file.
+       * config/mips/elfl64.h: Ditto.
+       * config/mips/ecoffl.h: Ditto.
+       * config/mips/r3900.h (SUBTARGET_CPP_SPEC): Remove.
+
+2002-06-12  Geoffrey Keating  <geoffk@redhat.com>
+
+       * gengtype.h (xvasprintf): New prototype.
+       (xasprintf): New prototype.
+       (struct outf): New.
+       (get_output_file): Return an outf_p.
+       (header_file): Is now an outf_p.
+       (base_files): Now are outf_p.
+       (oprintf): New.
+       * gengtype.c: Replace all output FILE * with outf_p; use oprintf
+       rather than stdio operations.  Use xasprintf in a few places,
+       when appropriate.
+       (xvasprintf): New.
+       (xasprintf): New.
+       (struct filemap): Delete.
+       (files): Delete.
+       (output_files): New.
+       (oprintf): New.
+       (create_file): Create an outf_p.  Add parameter to indicate output
+       file name, change all callers.
+       (open_base_files): Create gtype-desc.c here.
+       (get_output_file_with_visibility): Rewrite.
+       (get_output_file_name): Just look at 'name' field in struct outf.
+       (close_output_files): Rewrite.
+
+2002-06-12  Jason Thorpe  <thorpej@wasabisystems.com>
+
+       * config/vax/vax.h (MASK_UNIX_ASM, MASK_VAXC_ALIGNMENT)
+       (MASK_G_FLOAT): Define.
+       (TARGET_UNIX_ASM, TARGET_VAXC_ALIGNMENT, TARGET_G_FLOAT): Use them.
+       (TARGET_SWITCHES): Likewise.
+       (TARGET_DEFAULT): Likewise.
+
+2002-06-12  Daniel Jacobowitz  <drow@mvista.com>
+
+       * config/mips/elf.h (DWARF2_DEBUG_INFO): Define.
+       * config/mips/mips.c (mips_output_filename): Don't print a
+       ".file" directive if we are using DWARF-2.
+       (mips_output_function_prologue): Do not emit source file
+       name for TARGET_GAS.
+
+Wed Jun 12 16:45:13 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * i386.md (shift patterns): Use (TARGET_SHIFT1 || optimize_size) to
+       decide whether emit the short opcode.
+       * i386.h (x86_shift1): Declare.
+       (TARGET_SHIFT1): New macro.
+       * i386.c (x86_shift1): New global variable.
+
+       * toplev.c (rest_of_compilation): Call find_basic_block pre-loop
+       unconditionally; make loop to rebuild CFG; kill unnecesary
+       find_basic_block calls; kill compute_bb_for_insn call.
+       * cfgbuild.c (find_basic_blocks): Kill compute_bb_for_insn call.
+       * haifa-sched.c (sched_init): Likewise.
+       * ssa-ccp.c (ssa_const_prop): Likewise.
+       * ssa-dce.c (ssa_eliminate_dead_code): Likewise.
+
+2002-06-11  David S. Miller  <davem@redhat.com>
+
+       * emit-rtl.c (emit_*_scope): Only access INSN_SCOPE if
+       active_insn_p.
+
+2002-06-11  Richard Henderson  <rth@redhat.com>
+
+       * c-common.c (builtin_define_type_max): New.
+       (cb_register_builtins): Define __SCHAR_MAX__, __SHRT_MAX__,
+       __INT_MAX__, __LONG_MAX__, __LONG_LONG_MAX__, __CHAR_BIT__.
+
+       From Joseph S. Myers:
+       * glimits.h: Rewrite to expect the double underscore definitions
+       from the compiler.
+
+       * config/alpha/unicosmk.h, config/avr/avr.h, config/h8300/h8300.h,
+       config/i386/linux64.h, config/ia64/aix.h, config/ia64/hpux.h,
+       config/ia64/ia64.h, config/m68hc11/m68hc11.h, config/m68hc11/m68hc12.h,
+       config/mips/mips.h, config/mmix/mmix.h, config/mn10200/mn10200.h,
+       config/pa/pa.h, config/rs6000/aix43.h, config/rs6000/aix51.h,
+       config/rs6000/linux64.h, config/s390/linux.h, config/sh/sh.h,
+       config/stormy16/stormy16.h: Don't define any of __SHRT_MAX__,
+       __INT_MAX__, __LONG_MAX__, or __LONG_LONG_MAX__.
+
 2002-06-11  Richard Henderson  <rth@redhat.com>
 
        * config/alpha/alpha.c (ALPHA_BUILTIN_THREAD_POINTER): New.
@@ -145,8 +427,6 @@ Wed Jun 12 01:50:28 CEST 2002  Jan Hubicka  <jh@suse.cz>
 
        * config/xtensa/t-xtensa (LIBGCC1_TEST, CROSS_LIBGCC1): Delete.
 
-2002-06-11  Ulrich Weigand  <uweigand@de.ibm.com>
-
        * config/s390/s390.c (emit_prologue): gen_store_multiple
        returns an insn now, not a pattern.