OSDN Git Service

* MAINTAINERS: Remove chill maintainers.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index abe29ba..772c2b0 100644 (file)
@@ -1,3 +1,642 @@
+2002-04-15  Mark Mitchell  <mark@codesourcery.com>
+
+       Remove Chill front end.
+       * gcc.c (default_compilers): Remove Chill entries.
+       * ch: Remove directory.
+       * doc/frontends.texi: Remove information about Chill.
+       * doc/sourcebuild.texi: Likewise.
+       * doc/standards.texi: Likewise.
+
+2002-04-15  Douglas B Rupp  <rupp@gnat.com>
+
+       * config/alpha/vms.h (INCLUDE_DEFAULTS): Add /gnu/lib/gcc-lib/include.
+       (LONGLONG_STANDALONE): Define.
+
+2002-04-15  David S. Miller  <davem@redhat.com>
+
+       * config/sparc/sparc.c (sparc_emit_float_lib_cmp):
+       Call emit_library_call with LCT_NORMAL.
+       (sparc_initialize_trampoline): Use LCT_foo instead of
+       magic constant in emit_library_call invocations.
+       (sparc64_initialize_trampoline): Likewise.
+       (sparc_profile_hook): Likewise.
+       * config/sparc/sparc.md: Likewise.
+
+       * config/sparc/sparc.c (sparc_extra_constraint_check):
+       Fix type of argument 'c'.
+       * config/sparc/sparc-protos.h (sparc_extra_constraint_check):
+       Likewise.
+
+2002-04-15  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
+
+       * diagnostic.h (output_buffer_state): Redefine.
+       (output_format_decoder): New macro.
+       (output_prefixing_rule): Likewise.
+       (output_line_cutoff): Likewise.
+       (diagnostic_format_decoder): Adjust.
+       (diagnostic_prefixing_rule): Likewise.
+       (diagnostic_line_cutoff): Likewise.
+       (diagnostic_state): Likewise.
+       (diagnostic_kind_count): Likewise.
+       (diagnostic_buffer): Now a macro.
+
+       * diagnostic.c (diagnostic_buffer): Remove definition.
+       (output_is_line_wrapping): Adjust.
+       (set_real_maximum_length): Likewise.
+       (output_set_maximum_length): Likewise.
+       (init_output_buffer): Likewise.
+       (lhd_print_error_function): Likewise.
+       (output_do_verbatim): Likewise.
+
+2002-04-14  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cpperror.c (print_location): Don't print include chain
+       if line == 0.
+       (cpp_begin_message): Update to use DL_ macros.
+       (cpp_ice, cpp_fatal, cpp_error_from_errno, cpp_warning,
+       cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line,
+       cpp_notice, cpp_notice_from_errno): Remove.
+       (cpp_error, cpp_error_with_line): Update to take a diagnostic
+       level.
+       (cpp_errno): New.
+       * cppexp.c (CPP_ICE): Remove.
+       (SYNTAX_ERROR, SYNTAX_ERROR2, parse_number, parse_defined,
+       lex, integer_overflow, _cpp_parse_expr): Update.
+       * cppfiles.c (read_include_file, find_include_file,
+       handle_missing_header, _cpp_read_file, remap_filename): Update.
+       * cpphash.h (enum error_type): Remove.
+       (_cpp_begin_message): Update.
+       * cppinit.c (append_include_chain, remove_dup_dirs, output_deps,
+       cpp_handle_option, cpp_post_options): Update.
+       * cpplex.c (trigraph_p, skip_escaped_newlines, skip_block_comment,
+       skip_whitespace, parse_identifier, parse_slow, parse_string,
+       _cpp_lex_direct, cpp_spell_token, maybe_read_ucs, cpp_parse_escape,
+       cpp_interpret_charconst): Update.
+       * cpplib.c (check_eol, directive_diagnostics, _cpp_handle_directive,
+       lex_macro_node, do_undef, glue_header_name, parse_include,
+       do_include_common, read_flag, do_line, do_linemarker, do_ident,
+       cpp_register_pragma, do_pragma_once, do_pragma_system_header,
+       do_pragma_poison, do_pragma_dependency, _cpp_do__Pragma, do_else,
+       do_elif, do_endif, parse_answer, parse_assertion, do_assert,
+       _cpp_pop_buffer, do_diagnostic): Update.
+       * cpplib.h (DL_WARNING, DL_WARNING_SYSHDR, DL_PEDWARN, DL_ERROR,
+       DL_FATAL, DL_ICE, DL_EXTRACT, DL_WARNING_P): New.
+       (cpp_ice, cpp_fatal, cpp_error_from_errno, cpp_warning,
+       cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line,
+       cpp_notice, cpp_notice_from_errno): Remove.
+       (cpp_error, cpp_error_with_line): Update to take a diagnostic
+       level.
+       (cpp_errno): New.
+       * cppmacro.c (builtin_macro, stringify_arg, paste_all_tokens,
+       collect_args, enter_macro_context, save_parameter, parse_params,
+       _cpp_create_definition, check_trad_stringification,
+       cpp_macro_definition): Update.
+       * cppmain.c (cpp_preprocess_file): Update.
+       * fix-header.c (read_scan_file): Update.
+
+2002-04-14  Andreas Schwab  <schwab@suse.de>
+
+       * config/ia64/linux.h (CPP_PREDEFINES): Fix missing backslash.
+
+2002-04-14  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
+
+       * config/arm/linux-elf.h (CPLUSPLUS_CPP_SPEC): Define.
+
+2002-04-13  Mark Mitchell  <mark@codesourcery.com>
+
+       * config/i386/gnu.h (CPP_PREDEFINES): Define __gnu_hurd__,
+       not gnu_hurd.
+
+2002-04-13  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC): Fix typo.
+
+2002-04-13     Joel Sherrill <joel@OARcorp.com>
+
+       * config/sparc/t-elf: Enable v8 multilibs.  Impacts
+       sparc-elf and sparc-rtems targets.
+
+2002-04-13  Mark Mitchell  <mark@codesourcery.com>
+
+       * alpha/linux.h: Define __gnu_linux__ wherever __linux__ is
+       defined, and __gnu_hurd__ wherever __GNU__ is defined.
+       * arm/linux-elf.h: Likewise.
+       * cris/aout.h: Likewise.
+       * cris/linux.h: Likewise.
+       * i370/linux.h: Likewise.
+       * i386/gnu.h: Likewise.
+       * i386/linux-aout.h: Likewise.
+       * i386/linux-oldld.h: Likewise.
+       * i386/linux.h: Likewise.
+       * i386/linux64.h: Likewise.
+       * ia64/linux.h: Likewise.
+       * m68k/linux-aout.h: Likewise.
+       * m68k/linux.h: Likewise.
+       * mips/linux.h: Likewise.
+       * pa/pa-linux.h: Likewise.
+       * pj/linux.h: Likewise.
+       * rs6000/sysv4.h: Likewise.
+       * s390/linux.h: Likewise.
+       * sh/linux.h: Likewise.
+       * sparc/linux-aout.h: Likewise.
+       * sparc/linux.h: Likewise.
+       * sparc/linux64.h: Likewise.
+       * xtensa/linux.h: Likewise.
+
+2002-04-13  Richard Sandiford  <rsandifo@redhat.com>
+
+       * stmt.c (check_unique_operand_names): Expect operand names to
+       be strings rather than identifiers.  Use simple_cst_equal to
+       compare them.
+       (resolve_operand_name_1): Make same identifier to string change here.
+       * c-parse.in (asm_operand): Convert a named operand into a string.
+       * cp/parse.y (asm_operand): Likewise.
+
+2002-04-13  Andreas Schwab  <schwab@suse.de>
+
+       * config/ia64/ia64.h (CPP_SPEC): Include %(cpp_cpu).
+
+2002-04-12  Mark Mitchell  <mark@codesourcery.com>
+
+       Revert these changes:
+
+       2002-04-06  Mark Mitchell  <mark@codesourcery.com>
+
+       PR c++/5571
+       * stor-layout.c (layout_decl): Reset the RTL for the decl.
+
+2002-04-12  Richard Henderson  <rth@redhat.com>
+
+       * config.gcc (sparcv9-*-solaris2): Default to 32-bit code.
+       (sparc*-*-solaris): Clean up header files.
+       * configure.in (AS_SPARC64_FLAG): Error out if can't find it
+       and plan on generating 64-bit code.
+       * toplev.c (decode_g_option): Remove LINKER_DOES_NOT_WORK_WITH_DWARF2.
+       * config/sparc/sol2-64.h: Delete and reuse for default 64-bit code.
+       * config/sparc/sol2-sld-64.h: Rename ...
+       * config/sparc/sol2-bi.h: ... here.  Remove the bits that checked
+       for AS_SPARC64_FLAG not defined.
+       * config/sparc/sol2-gld-bi.h: New.
+       * config/sparc/sol2-sld.h: Remove.
+       * config/sparc/sol26-sld.h: New.
+       * config/sparc/sol2.h: Tidy comments.
+       * doc/install.texi: Document sparc-solaris configury changes.
+
+2002-04-12  Richard Henderson  <rth@redhat.com>
+
+       * recog.c (offsettable_address_p): Match the logic in adjust_address.
+
+       * config/sparc/sparc.h (LEGITIMIZE_RELOAD_ADDRESS): Handle TFmode
+       in 64-bit mode only.  Use only for 32-bit or MEDLOW.
+
+2002-04-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * config/alpha/osf.h (LINK_SPEC): Pass -S to silence ld warnings.
+
+Fri Apr 12 15:42:59 2002  Jeffrey A Law  (law@redhat.com)
+
+       * pa.c (pa_can_combine_p): Call extract_insn before calling
+       constrain_operands.
+
+2002-04-12  Douglas B Rupp  <rupp@gnat.com>
+
+       * config/i386/i386-interix.h (EH_FRAME_IN_DATA_SECTION): Define.
+       (TARGET_ASM_NAMED_SECTION, RETURN_IN_MEMORY) Define.
+       (DEFAULT_PCC_STRUCT_RETURN): Define as 0.
+       (CPP_PREDEFINES): Handle __declspec.
+       * config/i386/t-interix (USER_H): Remove.
+
+2002-04-12  DJ Delorie  <dj@redhat.com>
+
+       * integrate.c (compare_blocks): Make comparisons safe for when
+       sizeof(int) < sizeof(char *).
+       (find_block): Likewise.
+
+2002-04-12  Jan Hubicka  <jh@suse.cz>
+           David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.c (call_operand): Allow LINK and COUNT
+       registers.
+       (symbol_ref_operand): New.
+       * config/rs6000/rs6000.h (PREDICATE_CODES): Add symbol_ref_operand.
+       * config/rs6000/rs6000.md (call_nonlocal_aix): Use symbol_ref_operand.
+
+2002-04-12  Andreas Schwab  <schwab@suse.de>
+
+       * 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,
+       config/c4x/rtems.h, config/h8300/rtems.h, config/i386/rtems.h,
+       config/i386/rtemself.h, config/i960/rtems.h, config/m68k/rtems.h,
+       config/m68k/rtemself.h, config/mips/rtems.h, config/mips/rtems64.h,
+       config/pa/rtems.h, config/rs6000/rtems.h, config/sh/rtems.h,
+       config/sh/rtemself.h, config/sparc/rtems.h, config/sparc/rtemself.h,
+       config/v850/rtems.h (*-rtems*): Cleanup pass to move common
+       definitions to config/rtems.h and make the targets more similar.
+
+Fri Apr 12 08:06:54 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (expand_assigment): Remove duplicate conversions #ifdef
+       POINTERS_EXTEND_UNSIGNED.
+       (store_constructor, expand_expr, case COMPONENT_REF): Likewise.
+       (store_expr): Use TYPE_MODE (sizetype), not ptr_mode.
+
+       * emit-rtl.c (widen_memory_access): Don't do anything if MEMOFFSET
+       not specified.
+
+Fri Apr 12 12:11:26 2002  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * sh.c (calc_live_regs, sh_pr_n_sets): Use of PR_MEDIA_REG / PR_REG
+       depends on TARGET_SHMEDIA, not TARGET_SH5.
+
+2002-04-12  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * function.c (fixup_var_refs_1) <SET, handling VAR in SET_SRC>:
+       For paradoxical (subreg VAR), replace VAR, don't try the subreg.
+
+Fri Apr 12 10:51:38 2002  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * sh.c (broken_move): Constant 0. / 1. load is OK if there is
+       no r0 clobber.
+
+2002-04-12  Andreas Schwab  <schwab@suse.de>
+
+       * config/ia64/ia64.h (EXTRA_SPECS): Fix missing backslash.
+
+2002-04-12  Richard Henderson  <rth@redhat.com>
+
+       PR bootstrap/4191
+       * config/d30v/d30v.h (INIT_SECTION_ASM_OP): Don't undef.
+
+       * 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>
+
+       * pa.c (pa_output_function_prologue): Don't accumulate the total
+       number of code bytes when using TARGET_64BIT, or gas, SOM and not
+       the portable runtime.
+       (output_deferred_plabels): Handle 64bit plabels.
+       (output_cbranch): Use $PIC_pcrel$0 for pc relative relocations when
+       generating pic code using the GAS assembler for object formats that
+       are not SOM (ie., ELF32 and ELF64).
+       (output_millicode_call): Check attribute type if attribute length is 28.
+       Likewise use $PIC_pcrel$0.  Only call get_attr_length and
+       dbr_sequence_length once.
+       (output_call): Likewise use $PIC_pcrel$0, and call get_attr_length and
+       dbr_sequence_length once.
+       * pa.h (TARGET_SOM): Define if not defined.
+       * pa.md (pattern to load address of label): Likewise use $PIC_pcrel$0
+       with GAS and not SOM.
+       (jump, call_internal_reg, call_value_internal_reg): Likewise.
+       * som.h (OBJ_SOM): Rename to TARGET_SOM.  Undefine before defining.
+
+2002-04-11  David O'Brien  <obrien@FreeBSD.org>
+
+       * config/freebsd.h (NO_IMPLICIT_EXTERN_C, SCCS_DIRECTIVE): Give value.
+       (DEFAULT_PCC_STRUCT_RETURN) Do not redefine.
+       (USER_LABEL_PREFIX, HANDLE_SYSV_PRAGMA, IDENT_ASM_OP,
+       DWARF2_DEBUGGING_INFO, DBX_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE):
+       elfos.h and dbxelf.h values are fine now.
+       * config/i386/freebsd.h, config/alpha/freebsd.h
+       (DEFAULT_PCC_STRUCT_RETURN): Define to 0.
+
+2002-04-11  David O'Brien  <obrien@FreeBSD.org>
+
+       * config/ia64/aix.h (CPP_PREDEFINES): Do not define _LP64/__LP64__
+       or set Acpu or Amachine.  Reformat.
+       (ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
+       define.
+       (LINK_SPEC): Do not need to undef.
+       * config/ia64/elf.h (ASM_EXTRA_SPEC): Define.
+       * config/ia64/freebsd.h (LINK_SPEC): Do not need to undef.
+       (ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
+       define.
+       * config/ia64/hpux.h (ASM_EXTRA_SPEC): Define.
+       (ASM_SPEC): Do not define, use ASM_EXTRA_SPEC instead.
+       (LINK_SPEC): Do not need to undef.
+       (DONT_USE_BUILTIN_SETJMP): Do not define.
+       * config/ia64/ia64.h (ASM_SPEC, ASM_EXTRA_SPEC): Add.
+       (CPP_CPU_SPEC): Define _LP64, set Acpu and Amachine.  Remove -Dia64.
+       (DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Define.
+       Remove trailing spaces.
+       * config/ia64/linux.h (CPP_PREDEFINES): Do not define _LP64/__LP64__,
+       __ELF__, or set Acpu or Amachine.  Reformat.
+       (ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
+       define.
+
+2002-04-11  David O'Brien  <obrien@FreeBSD.org>
+
+       * config.gcc (ia64-*-freebsd*): Fix ordering of tm_files to match
+       all other *-*-freebsd* targets.
+
+2002-04-11  Richard Henderson  <rth@redhat.com>
+
+       * config.gcc (alpha*-*-linux*ecoff): Detect and reject.
+
+2002-04-11  David O'Brien  <obrien@FreeBSD.org>
+
+       * config.gcc (alpha*-*-openbsd, alpha64-dec-*vms,alpha*-dec-*vms):
+       Include {cpu}/{cpu}.h thru tm_file.
+       (alpha*-*-linux*ecoff): Remove target.
+       * config/alpha/elf.h (CPP_SUBTARGET_SPEC): Define __ELF__.
+       (LINK_SPEC): Remove, is not OS independent.
+       * config/alpha/freebsd.h (CPP_SPEC): Do not define __ELF__.
+       (LINK_SPEC): Do not need to #undef any longer.
+       * config/alpha/linux-ecoff.h (LINK_SPEC): Do not need to #undef
+       any longer.
+       * config/alpha/linux-elf.h (SUB_CPP_PREDEFINES): Do not define
+       __ELF__.
+       (LINK_SPEC): Moved here from alpha/elf.h.
+       * config/alpha/linux.h (CPP_PREDEFINES): No longer consumer of
+       SUB_CPP_PREDEFINES.
+       * config/alpha/linux-ecoff.h: Remove.
+       * config/alpha/netbsd.h (CPP_PREDEFINES): Do not define __ELF__.
+       (CPP_SPEC): Define _POSIX_SOURCE as needed.
+       (CPP_SUBTARGET_SPEC): Do not define.
+       (LINK_SPEC): Do not need to #undef any longer.
+       * config/alpha/openbsd.h: Do not directly include alpha/alpha.h.
+       * config/alpha/vms.h: Likewise.
+
+2002-04-11  Richard Sandiford  <rsandifo@redhat.com>
+
+       * doc/extend.texi: Remove old claim that typedefs cannot have
+       an alignment attribute.
+
+2002-04-11  Jakub Jelinek  <jakub@redhat.com>
+
+       PR optimization/6177
+       * expr.c (expand_expr) [COMPONENT_REF]: Handle op0 CONCAT if
+       bitpos is 0 and bitsize CONCAT size.
+
+2002-04-11  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/6223
+       * combine.c (if_then_else_cond): Use trunc_int_for_mode on nz.
+
+2002-04-10  David O'Brien  <obrien@FreeBSD.org>
+
+       * config/alpha/freebsd.h: Minor reformatting.
+       (CPP_SPEC): Define ELF and add cpp_subtarget.
+       (ASM_SPEC): No longer needed.
+
+2002-04-11  Richard Henderson  <rth@redhat.com>
+
+       * config/sparc/sparc.md (movdi_insn_sp32): Add o/J alternative.
+       (movdi_insn_sp32_v9): Likewise.  Only allow stx with aligned memory.
+       (dimode mem/zero splitter): New.
+
+2002-04-11  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/cris.c (cris_override_options): Tweak error message
+       for PIC not implemented.
+
+       * config/cris/cris.h: Tweak comments related to parameter-passing.
+
+       * t-cris (TARGET_LIBGCC2_CFLAGS): Don't -Dinhibit_libc here.
+
+2002-04-10  Richard Henderson  <rth@redhat.com>
+
+       * except.c (add_ehl_entry): Allow duplicates after landing pad
+       creation.
+
+2002-04-10  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/t-aix43 (SHLIB_NM_FLAGS): Add -X32_64.
+
+2002-04-10  Toon Moene  <toon@moene.indiv.nluug.nl>
+
+       * c-decl.c (c_init_decl_processing): Move generation of
+       decls for g77_integer_type_node and friends from here ...
+       * c-common.c (c_common_nodes_and_builtins): ... to here.
+
+2002-04-10  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * reload1.c (choose_reload_regs): HARD_FRAME_POINTER_REGNUM
+       is only used as frame pointer when frame_pointer_needed is true.
+
+2002-04-10  Richard Earnshaw  <rearnsha@arm.com>
+
+       PR target/817
+       * arm.md (arm_movdi): Adjust neg_pool_range attribute to allow
+       for the fact that the pool entry uses two words.
+       (movdf_hard_insn): Similarly.  Also, ADR instruction can span
+       1k bytes.
+       (movdf_soft_insn): Similarly.
+       (movxf_hard_insn): Adjust neg_pool_range attribute to allow
+       for the fact that the pool entry uses three words.
+
+2002-04-10  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips.c (mips_va_arg): When using the struct version
+       of the EABI va_list, allow arguments in the register save area to
+       take up less room than a stack argument.
+
+2002-04-10  Richard Henderson  <rth@redhat.com>
+
+       * expr.c (expand_expr) [INTEGER_CST]: Don't force into registers
+       if EXPAND_INITIALIZER.
+
+2002-04-09  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.md (movdi_er_maybe_g): New.
+       * config/alpha/alpha.c (alpha_expand_mov): Use it.
+
+2002-04-10  Alan Modra  <amodra@bigpond.net.au>
+
+       PR optimization/6233
+       * rtlanal.c (pure_call_p): New function.
+       * rtl.h (pure_call_p): Declare.
+       * loop.c (prescan_loop): Use it to set has_nonconst_call.
+       * gcse.c (store_killed_in_insn): Use pure_call_p here too.
+
+2002-04-09  Eric Christopher  <echristo@redhat.com>
+
+       * config/mips/mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Add additional
+       information to .comm directive.
+
+2002-04-09  Richard Henderson  <rth@redhat.com>
+
+       PR c/5078
+       * expr.c (expand_expr) [INTEGER_CST]: Force overflows into registers.
+
+2002-04-09  Richard Henderson  <rth@redhat.com>
+
+       * basic-block.h (flow_delete_block_noexpunge): Declare.
+       (expunge_block_nocompact): Declare.
+       * cfg.c (expunge_block_nocompact): Split out from ...
+       (expunge_block): ... here.
+       * cfgrtl.c (can_delete_label_p): Don't use exception_handler_labels.
+       (flow_delete_block_noexpunge): Split out from ...
+       (flow_delete_block): ... here.
+       * cfgcleanup.c (delete_unreachable_blocks): Compact while
+       removing dead blocks.
+       * except.c (exception_handler_labels): Remove.
+       (exception_handler_label_map): New.
+       (struct eh_region): Add aka member.
+       (mark_ehl_map_entry, mark_ehl_map, free_region): New.
+       (ehl_hash, ehl_eq, ehl_free, add_ehl_entry): New.
+       (for_each_eh_label, for_each_eh_label_1): New.
+       (init_eh): Register exception_handler_label_map.
+       (free_eh_status): Use free_region.
+       (find_exception_handler_labels): Use the map, not the list.
+       (remove_exception_handler_label): Likewise.
+       (maybe_remove_eh_handler): Likewise.
+       (remove_eh_handler): Use the region aka bitmap.
+       * except.h (exception_handler_labels): Remove.
+       (for_each_eh_label): Declare.
+       * jump.c (rebuild_jump_labels): Don't check exception_handler_labels.
+       * loop.c (invalidate_loops_containing_label): New.
+       (find_and_verify_loops): Use it.  Use for_each_eh_label.
+       * sched-rgn.c (is_cfg_nonregular): Use
+       current_function_has_exception_handlers.
+
+2002-04-09  Richard Henderson  <rth@redhat.com>
+
+       * sbitmap.c (sbitmap_union_of_diff, sbitmap_a_and_b, sbitmap_a_xor_b,
+       sbitmap_a_or_b, sbitmap_a_or_b_and_c, sbitmap_a_and_b_or_c):
+       Do not return changed status.
+       (sbitmap_union_of_diff_cg, sbitmap_a_and_b_cg, sbitmap_a_xor_b_cg,
+       sbitmap_a_or_b_cg, sbitmap_a_or_b_and_c_cg, sbitmap_a_and_b_or_c_cg):
+       New functions that do return changed status.
+       * sbitmap.h: Update decls.
+       * gcse.c, lcm.c: Use _cg functions as needed.
+
+Tue Apr  9 19:15:57 2002  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * config.gcc (sh-*-elf*): Use sh/embed-elf.h instead of sh/elf.h.
+       (sh64-*-elf*, sh-*-rtemself*): Likewise.
+       * config/sh/embed_bb.c: New file.
+       * config/sh/embed-elf.h: New file.
+       * sh.h (CPP_SPEC): Supply __SIZE_TYPE__ and __PTRDIFF_TYPE__
+       if -m[12345]* option is given.  Don't use subtarget_cpp_ptr_spec.
+       (CPP_DEFAULT_CPU_SPEC): Add settings for __SIZE_TYPE__ and
+       __PTRDIFF_TYPE__ .
+       (SUBTARGET_CPP_PTR_SPEC): Don't define.
+       (EXTRA_SPECS): Remove subtarget_cpp_ptr_spec.
+       Add subtarget_asm_endian_spec.
+       (ASM_SPEC): Use subtarget_asm_endian_spec.
+       (SUBTARGET_ASM_ENDIAN_SPEC): Define.
+       (RETURN_ADDR_RTX): Use PR_MEDIA_REG for TARGET_SH5.
+       (WCHAR_UNSIGNED): Define.
+       (SH_ELF_WCHAR_TYPE, SH_DBX_REGISTER_NUMBER): Define.
+       (DBX_REGISTER_NUMBER): Use SH_DBX_REGISTER_NUMBER.
+       (ALLOCATE_INITIAL_VALUE): Use PR_MEDIA_REG for TARGET_SH5.
+       Fix value.
+       * sh.c (calc_live_regs): Use PR_MEDIA_REG for TARGET_SH5.
+       (sh_adjust_cost): Likewise.
+       sh64.h (CPP_DEFAULT_CPU_SPEC): Add settings for __SIZE_TYPE__ and
+       __PTRDIFF_TYPE__ .
+       (SUBTARGET_CPP_PTR_SPEC, WCHAR_TYPE): Don't #undef/ #define.
+       (WCHAR_TYPE_SIZE): Likewise.
+       (ASM_SPEC): Use subtarget_asm_endian_spec.
+       (SH_ELF_WCHAR_TYPE): #undef/ #define.
+       (MAX_WCHAR_TYPE_SIZE): Don't #undef.
+       * config/sh/elf.h (WCHAR_UNSIGNED): #undef .
+       (MAX_WCHAR_TYPE_SIZE): Don't #define .
+       (WCHAR_TYPE, WCHAR_TYPE_SIZE): #undef / #define .
+       (USER_LABEL_PREFIX): Don't #undef /#define .
+       (DBX_REGISTER_NUMBER): Use SH_DBX_REGISTER_NUMBER.
+       * config/elf/linux.h (USER_LABEL_PREFIX): Don't #undef /#define .
+       (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE, WCHAR_TYPE_SIZE): Likewise.
+       (ASM_SPEC): Likewise.
+       (SUBTARGET_ASM_ENDIAN_SPEC): #undef / #define .
+       (CC1_SPEC): don't supply -m3 for -m4*, -m5*.
+       * t-sh: (LIB1ASMFUNCS): Use LIB1ASMFUNCS_CACHE.
+       (LIB2FUNCS_EXTRA): Define.
+       * t-sh64 (LIB2FUNCS_EXTRA): Define.
+       * config/sh/t-linux (LIB1ASMFUNCS): Don't redefine.
+       (LIB1ASMFUNCS_CACHE): Define.
+       (LIB2FUNCS_EXTRA): Redefine empty.
+
+2002-04-08  Richard Henderson  <rth@redhat.com>
+
+       * reorg.c (get_branch_condition): Use reversed_comparison_code.
+
+2002-04-09  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+       * config/m68hc11/larith.asm (__map_data_section): Fix condition
+       and optimize for size.
+       (__do_global_ctors): Fix pointer comparison.
+       (__do_global_dtors): Likewise.
+
+2002-04-09  David S. Miller  <davem@redhat.com>
+
+       * config/sparc/sparc.c (sparc_extra_constraint_check): New
+       function, implementing EXTRA_CONSTRAINTS.  For memory constraints,
+       allow reloading pseudos.
+       * config/sparc/sparc.h (EXTRA_CONSTRAINTS): Use it.
+       * config/sparc/sparc-protos.h: Declare it.
+
+       * config/sparc/sparc.c (const64_is_2insns): Kill signed vs.
+       unsigned comparison warning.
+       (output_restore_regs): Mark leaf_function as unused.
+
+Tue Apr  9 09:35:45 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (is_aligning_offset): New function.
+       (expand_expr, case COMPONENT_EXPR): Call it.
+
+2002-04-08  David S. Miller  <davem@redhat.com>
+
+       PR target/6082
+       * config/sparc/freebsd.h (SPARC_DEFAULT_CMODEL): Set to CM_MEDLOW
+
+       Make init_priority work on Sparc when using GNU ld.
+       * config/sparc/linux.h, config/sparc/linux64.h,
+       config/sparc/netbsd-elf.h, config/sparc/freebsd.h
+       (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Undefine.
+       * config/sparc/sol2-gld.h: New file to do the same.
+       * config.gcc (sparc*-*-solaris2*): If gnu_ld=yes add
+       sparc/sol2-gld.h to tm_file.
+
+       PR optimization/4328
+       * config/sparc/sparc.h (EXTRA_CONSTRAINT): Add new constraint 'W'.
+       * doc/md.texi: Document it.
+       * config/sparc/sparc.md (movdi_insn_sp64_novis,
+       movdi_insn_sp64_vis, movdf_insn_sp32, movdf_insn_v9only_novis,
+       movdf_insn_v9only_vis, movdf_insn_sp64_novis,
+       movdf_insn_sp64_vis): Use it as MEM constraing with 'e' registers.
+       * config/sparc/sparc.c (mem_min_alignment): Fix comment.
+
+2002-04-08  Andreas Jaeger  <aj@suse.de>
+
+       * stmt.c (expand_asm_operands): Revert last patch from Richard
+       Henderson.
+
+2002-04-08  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/contrib.texi (Contributors): Add John David Anglin and Loren
+       J. Rittle (the latter also to Testers).  Update David O'Brien's entry.
+
+2002-04-08  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/contrib.texi (Contributors): Add David O'Brien.
+
+2002-04-08  Alan Modra  <amodra@bigpond.net.au>
+
+       * configure.in (auto-build.h): Use target_alias and build_alias
+       when running configure.
+       (gcc_cv_as, gcc_cv_ld): Search install paths when build != host too.
+       (gcc_cv_nm, gcc_cv_objdump): Set for build != host too.
+       * configure: Regenerate.
+
+2002-04-07  David S. Miller  <davem@redhat.com>
+
+       * config.gcc (sparc64-*-linux*): Add t-crtfm to tmake_file.
+
+2002-04-07  John David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       PR 5933
+       * pa.h (ASM_OUTPUT_MI_THUNK): Use indirect jump to target function when
+       generating 32-bit pic code.
+
 2002-04-06  Jason Thorpe  <thorpej@wasabisystems.com>
 
        * cppinit.c (cpp_create_reader): Initialize
@@ -440,7 +1079,7 @@ objc:
        * protoize.c: Match include directory usage with cppdefault.c.
 
 2002-04-03  Jeffrey A Law  (law@redhat.com)
-            Hans-Peter Nilsson  <hp@bitrange.com>
+           Hans-Peter Nilsson  <hp@bitrange.com>
 
        * combine.c (simplify_comparison): Avoid narrowing a comparison
        with a paradoxical subreg when doing so would drop signficant bits.
@@ -518,7 +1157,7 @@ Tue Apr  2 06:47:40 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 2002-04-01  Vladimir Makarov  <vmakarov@redhat.com>
 
        * config/pa/pa-pro-end.h (ASM_OUTPUT_ALIGNED_COMMON,
-        ASM_OUTPUT_ALIGNED_LOCAL): Redefine them.
+       ASM_OUTPUT_ALIGNED_LOCAL): Redefine them.
 
 2002-04-01  Neil Booth  <neil@daikokuya.demon.co.uk>
 
@@ -539,8 +1178,8 @@ objc:
 
 2002-04-01  Bob Wilson  <bob.wilson@acm.org>
 
-        * config/xtensa/xtensa.c (xtensa_va_arg): Fix compiler warning
-        in previous change.
+       * config/xtensa/xtensa.c (xtensa_va_arg): Fix compiler warning
+       in previous change.
 
 2002-04-01  Bob Wilson  <bob.wilson@acm.org>
 
@@ -693,7 +1332,7 @@ Sun Mar 31 14:43:24 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
        * libgcc2.c (__bb_exit_func): Make static.
 
-        * config/alpha/alpha.md (trap): New.
+       * config/alpha/alpha.md (trap): New.
 
 2002-03-31  Richard Henderson  <rth@redhat.com>
 
@@ -710,7 +1349,7 @@ Sun Mar 31 14:43:24 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
        * gcc.c (LIBGCC_SPEC): Folded %L and duplicate %G here...
        (LINK_COMMAND_SPEC): ... from here.
-       (init_gcc_specs): Duplicate it here too, omitting 
+       (init_gcc_specs): Duplicate it here too, omitting
        shared_name in the second copy.
        (init_spec): Test for duplicate
        * config/i386/djgpp.h (LINK_COMMAND_SPEC): Remove `%L %G'.
@@ -721,11 +1360,11 @@ Sun Mar 31 14:43:24 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
        * config/sparc/linux64.h (HANDLE_PRAGMA_PACK_PUSH_POP): Likewise.
 
 2002-03-30  Roger Sayle <roger@eyesopen.com>
-            Richard Henderson  <rth@redhat.com>
+           Richard Henderson  <rth@redhat.com>
 
-        * regmove.c (combine_stack_adjustments_for_block): Avoid
-        emitting a stack adjustment of zero bytes.  Let delete_insn
-        update bb->head.
+       * regmove.c (combine_stack_adjustments_for_block): Avoid
+       emitting a stack adjustment of zero bytes.  Let delete_insn
+       update bb->head.
 
 2002-03-30  Richard Henderson  <rth@redhat.com>
 
@@ -750,7 +1389,7 @@ Sun Mar 31 14:43:24 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
        * dwarf2out.c (dwarf2out_define): Remove start_source_file call,
        CPP will start the file for us.
+
 2002-03-30  Richard Henderson  <rth@redhat.com>
 
        PR target/5446
@@ -1120,7 +1759,7 @@ objc:
        * gcc-common.c (lang_mark_false_label_stack): Remove.
        * ggc.h (lang_mark_false_label_stack): Similarly.
 
-2002-03-26  Vladimir Makarov  <vmakarov@redhat.com> 
+2002-03-26  Vladimir Makarov  <vmakarov@redhat.com>
 
        * pa/pa-pro-end.h (CPP_PREDEFINES): Add -D__pro__.
 
@@ -1204,7 +1843,7 @@ objc:
        * stmt.c (expand_end_case_type): When warn_switch_enum /
        -Wswitch-enum, perform switch checks.
        Fix PR c/5044.
-       
+
 2002-03-26  Richard Earnshaw  <rearnsha@arm.com>
 
        * arm.md (reload_mulsi3, reload_mulsi_compare0, reload_muladdsi)
@@ -1230,7 +1869,7 @@ objc:
 2002-03-26  Hartmut Penner  <hpenner@de.ibm.com>
 
        * config/s390/s390.c (s390_emit_epilogue): Change epilogue
-       code to not restoring global registers. 
+       code to not restoring global registers.
 
 2002-03-26  Neil Booth  <neil@daikokuya.demon.co.uk>