OSDN Git Service

2000-10-02 David O'Brien <obrien@dragon.nuxi.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index f6de40a..0c964c3 100644 (file)
@@ -1,5 +1,907 @@
+2000-10-02  David O'Brien  <obrien@dragon.nuxi.com>
+
+       * config/i386/freebsd.h (NO_PROFILE_COUNTERS): Define.
+
+2000-10-01  Mark Mitchell  <mark@codesourcery.com>
+
+       * config/ns32k/genix.h: Remove.
+       * config/ns32k/x-genix: Likewise.
+       * config/ns32k/xm-genix.h: Likewise.
+       * config/fx80: Remove all filee in directory.
+       * config/pyr: Likewise.
+       * config/tahoe: Likewise.
+       * config/gmicro: Likewise.
+       * config/spur: Likewise.
+       * configure.in: Remove configury bits for above targets.
+       * configure: Regenerated.
+       
+       * configure.in: Don't configure chill by default.
+       * configure: Regenerated.
+       
+       * c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only.
+       (lang_mark_false_label_stack): Remove.
+       * c-lex.c (init_c_lex): Add file_info_tree as GC root.  Allocate
+       <top level> string in GC area.
+       (mark_splay_tree_node): New function.
+       (mark_splay_tree): Likewise.
+       * except.c (mark_eh_status): Only call lang_mark_false_label_stack
+       if it exists.
+       * ggc-callbacks.c (lang_mark_false_label_stack): Remove.
+       * ggc-common.c (lang_mark_false_label_stack): Change type.
+       * ggc.h (ggc_alloc_string): Add comment.
+       (ggc_strdup): New function.
+       
+Sat Sep 23 19:10:20 2000  Denis Chertykov  <denisc@overta.ru>
+
+       * config/avr/avr.h (BRANCH_COST): Define as 0.
+
+       * config/pdp11/pdp11.c: #include "tree.h" added.
+
+2000-09-30  Marek Michalkiewicz  <marekm@linux.org.pl>
+
+       * config/avr/avr.c (ashlhi3_out, ashlsi3_out, ashrhi3_out,
+       ashrsi3_out, lshrhi3_out, lshrsi3_out): Optimize more cases
+       with known shift count.
+       * config/avr/avr.md (ashlsi3, ashrsi3, lshrsi3):
+       New alternative for shift count 2 with no scratch register.
+       (ashlhi3, ashlsi3): Change "cc" attribute from "clobber" to
+       "set_n" for shift counts 1 and 2.
+
+2000-09-30  Geoff Keating  <geoffk@cygnus.com>
+
+       * config/rs6000/rs6000.md (movsi_to_cr): Remove the USE.  Calculate
+       the mask value from the individual SET operations.
+       (return_internal_si): Move the USE after the RETURN.
+       (return_internal_di): Likewise.
+       (return_and_restore_fpregs_si): Likewise.
+       (return_and_restore_fpregs_di): Likewise.
+       (return_eh_si): Likewise.
+       (return_eh_di): Likewise.
+       * config/rs6000/rs6000.c (mtcrf_operation): Don't look for,
+       or check, the USE.
+       (rs6000_emit_prologue): Don't emit the USE for movsi_to_cr.
+       Don't generate a PARALLEL around a single operation movsi_to_cr.
+       Generate the RETURN first in any PARALLELs.
+
+       * rtlanal.c (single_set_1): Use fatal_insn to display the
+       invalid insn.  Check for more cases when a USE or CLOBBER occurs
+       before a SET.
+       * Makefile.in: Update dependencies for rtlanal.o.
+
+2000-09-30  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * i386.c: Move include of "config.h" to before that of <setjmp.h>.
+
+2000-09-30  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * c-tree.texi, contrib.texi, gcc.texi, install.texi, invoke.texi:
+       Consistently use @email for formatting email addresses.
+
+2000-09-29  Richard Henderson  <rth@cygnus.com>
+
+       * cse.c (notreg_cost): New argument outer.
+       (COST): Pass in SET to notreg_cost
+       (COST_IN): New.
+       (fold_rtx): Use COST_IN.  Prefer constants when costs
+       are the same.
+
+2000-09-29  David Edelsohn  <edelsohn@gnu.org>
+
+       * fixinc/inclhack.def (broken_cabs): Generalize regex.
+       * fixinc/fixincl.x: Regenerate.
+
+2000-09-29  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
+
+       * loop.c (check_final_value): A GIV is not replaceable if used
+       before set.
+
+Fri Sep 29 10:04:12 2000  Jeffrey A Law  (law@cygnus.com)
+
+       * version.c: Bump to gcc-2.97.
+
+Frs Sep 29 13:37:59 MET DST 2000  Jan Hubicka  <jh@suse.cz>
+
+       * final.c (final_scan_insn): Remove extra extract_insn call;
+       Use caching for constrain_operands.
+       (cleanup_subreg_operands): Use caching for extract_insn.
+       * recog.c (constrain_operands_cached): New.
+       * recog.h (constrain_operands_cached): Declare.
+       * i386.c (ix86_attr_length_immediate_default,
+       ix86_attr_length_address_default, ix86_agi_dependant): Cache
+       extract_insn call.
+
+       * recog.c (asm_noperands): Tweak.
+       (extract_insn): Do not call asm_noperads for non-asm instructions.
+
+Fri Sep 29 13:20:42 MET DST 2000  Jan Hubicka  <jh@suse.cz>
+
+       * recog.c (recog_memoized): Rename to recog_memoized_1.
+       * recog.h (recog_memoized): Rename to recog_memoized_1.
+       (recog_memoized): New macro.
+       * rtl.h (single_set): Rename to single_set_1
+       (single_set): New macro.
+       * rtlanal.c (single_set): Rename to single_set_1;  expect clobbers
+       to be last.
+
+       * i386.md (strmovsi_1, strmovhi_1 strmovqi_1):
+       Do not use match_dup of input operands at outputs.
+       Use register_operand for memory expression.
+       (rep_movsi): Put use last, canonicalize.
+       Use register_operand for memory expression.
+       (rep_movqi): Put use last.
+       Use register_operand for memory expression.
+       (strsetsi_1, strset_hi_1, strsetqi_1): Do not use match_dup
+       of input operands at outputs.  Use register_operand for memory
+       expression.
+       (rep_stossi): Put use last; canonicalize; fix match_dup in
+       the address expression
+       (rep_stosqi): Likewise.
+       (memcmp expander): Update calls.
+       (cmpstrsi_nz_1, cmpstrsi_1, strlensi_1): Avoid match_dups in
+       the clobbers.
+
+       * i386.md (fp_jcc_3, fp_jcc_4, jp_fcc_5): if_then_else operand is
+       VOIDmode.
+       (fp_jcc_4, fp_jcc_3): Refuse unordered comparisons.
+
+2000-09-28  David O'Brien  <obrien@FreeBSD.org>
+
+       * config/i386/freebsd-aout.h: New, FreeBSD a.out config file.
+       Contains the old contents of config/i386/freebsd.h
+       * config/i386/freebsd.h: Now the ELF rather than a.out config file.
+       Contains the old contents of config/i386/freebsd-elf.h
+       * config/i386/freebsd-elf.h: Retire this file -- contents moved to
+       config/i386/freebsd.h.
+       * configure.in: Adjust for above changes.
+       * po/POTFILES.in: Likewise.
+       * po/en_GB.po: Likewise.
+       * po/gcc.pot: Likewise.
+       * configure: Rebuilt.
+
+2000-09-28  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
+
+       * doloop.c (doloop_modify): Prevent delete_insn() from
+       deleting too much.  Prefer loop->top over loop->start as
+       target for the new JUMP insn.
+       (doloop_valid_p): Ignore loop with exit_count != 0.
+
+2000-09-28  Philipp Thomas  <pthomas@suse.de>
+
+       * invoke.texi (i386 Options): Add athlon to table of possible
+       choices for -mcpu=.
+
+2000-09-28  Gabriel Dos Reis  <gdr@codesourcery.com>
+
+       * diagnostic.h (output_clear_message_text): New function.
+       (output_message_text): New macro.
+
+       * diagnostic.c (clear_text_info): Rename to
+       output_clear_message_text. 
+       (output_clear): Adjust.
+       (output_finish): Rename to output_finalize_message.  Tweek.
+       (output_to_stream): Adjust. 
+
+2000-09-28  Neil Booth  <neilb@earthling.net>
+
+       * cpperror.c (_cpp_begin_message):  Do the test for suppression
+        of warnings and pedantic warnings before the "is a warning an
+        error" tests.
+       * cppinit.c (cpp_handle_option): Remove surplus \n.
+       * cpplex.c (ON_REST_ARG): Delete.
+       (skip_block_comment): Initialise prevc.
+       (parse_args): Improve error messages.
+       (maybe_paste_with_next): Use CONTEXT_VARARGS rather
+       than ON_REST_ARG.
+       * cpplib.c (cpp_push_buffer): Fix grammar in message.
+       * cppmain.c (main): Set callbacks for #ident and #pragma
+       only if no_output option is false.
+       (do_pragma_implementation): Only call the #pragma handler
+       if it is set in the cpp_reader structure.
+
+Wed Sep 27 14:00:07 2000  Donald Lindsay  <dlindsay@cygnus.com>
+
+       * integrate.c (copy_insn_list): if an ignored return value
+       is being clobbered, skip cloning that into the inline copy.
+
+2000-09-27  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * extend.texi, invoke.texi, gcc.texi, install.texi: Consistently
+       use @uref for formatting URLs.
+
+2000-09-27  Mark Elbrecht  <snowball3@bigfoot.com>
+
+       * config/i386/djgpp.h (UNIQUE_SECTION): Constify the variables
+       name and prefix.
+
+Tue 26-Sep-2000 18:25:38 BST  Neil Booth  <neilb@earthling.net>
+
+       * gcc.c (cpp_options): Add spec for -ftabstop=.
+       (invoke_as): New spec that handles invoking as.
+       Update specs to handle -save-temps and -traditional.
+       * ch/lang-specs.h, f/lang-specs.h, java/lang-specs.h:
+       Use invoke_as.
+       * cp/lang-specs.h, objc/lang-specs.h: Update to use
+       invoke_as, and handle -save-temps and -traditional (if
+       appropriate).
+
+2000-09-26  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/sparc/sparc.c (sparc_emit_set_const64): Don't abort when
+       op0 is a SUBREG.
+       (function_arg_slotno): Accept TImode/CTImode.
+       * config/sparc/sparc.h (MIN_UNITS_PER_WORD): If IN_LIBGCC2 define
+       to UNITS_PER_WORD.
+
+2000-09-26  Michael Hayes  <mhayes@cygnus.com>
+
+       * flow.c (flow_loop_pre_header_scan): Punt if loop enters
+       from entry block.
+
+2000-09-25  Jim Wilson  <wilson@cygnus.com>
+
+       * config/ia64/ia64.h (INDEX_REG_CLASS): Define to GENERAL_REGS.
+       (REGNO_OK_FOR_INDEX_P): Define to REGNO_OK_FOR_BASE_P.
+       (LEGITIMATE_ADDRESS_DISP): Use LEGITIMATE_ADDRESS_REG.
+       (REG_OK_FOR_INDEX): Define to REG_OK_FOR_BASE_P.
+
+Tue 26-Sep-2000 00:16:22 BST  Neil Booth  <neilb@earthling.net>
+
+        * cpplex.c (parse_args): Don't set VOID_REST flag.
+       (CONTEXT_VARARGS): New flag.
+       (maybe_paste_with_next): Set context earlier in loop.  Use
+       it.  Do varargs test with CONTEXT_VARARGS flag.
+       (push_arg_context): Set CONTEXT_VARARGS flag if we're
+       pushing an argument context for a varargs argument.
+       * cpplib.h (VOID_REST): Delete.
+       * gcc.dg/cpp/vararg1.c: Add test case.   
+
+2000-09-25  Branko Cibej  <branko.cibej@hermes.si>
+
+        * flags.h:  Declare warning flag warn_system_headers.
+        * toplev.c:  Define it.
+        (W_options): Add option -Wsystem-headers.
+        * diagnostic.c (count_error): Test warn_system_headers.
+        * invoke.texi:  Add description for -Wsystem-headers.
+       * cpplib.h (cpp_options): New member warn_system_headers.
+       * cpphash.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Don't test
+       CPP_IN_SYSTEM_HEADER.
+       * cpplib.c (do_import, do_pragma_once): Likewise.
+       * cpperror.c (_cpp_begin_message): Test warn_system_headers
+       and CPP_IN_SYSTEM_HEADER.
+       * cppinit.c (handle_option): Recognize -Wsystem_headers.
+       (print_help): Describe -Wsystem_headers.
+       * cpplex.c (lex_line): Reorganize condition so that warnings
+       about C++ comments in system headers can be enabled. Remove
+       label do_line_comment.
+
+Mon 25-Sep-2000 23:38:27 BST  Neil Booth  <neilb@earthling.net>
+
+       * cpplex.c (save_comment): Only store the initial '/'
+       now.
+       (lex_token): Combine handling of the two comment types.
+       Pass everything but the initial '/' to save_comment.    
+
+Mon 25-Sep-2000 23:31:45 BST  Neil Booth  <neilb@earthling.net>
+
+       * cpphash.h (_cpp_digraph_spellings, _cpp_process_directive,
+       _cpp_can_paste): New library-internal prototypes.
+       * cpplex.c (dump_param_spelling, output_line_command,
+       output_token, cpp_scan_buffer, cpp_scan_buffer_nooutput,
+       cpp_printf, cpp_output_list): Move to cppoutput.c.
+       (process_directive, can_paste, digraph_spellings): Add _cpp_ prefix.
+       * cppmacro.c (dump_macro_args, cpp_dump_definition) Move to
+       cppoutput.c.
+       * cppoutput.c (dump_macro_args, cpp_dump_definition, output_token,
+       dump_param_spelling, output_line_command, cpp_scan_buffer,
+       cpp_scan_buffer_nooutput, cpp_printf, cpp_output_list): Moved
+       from elsewhere.
+       * Makefile.in: Add cppoutput.c.
+       * po/POTFILES.in: Add cppoutput.c.
+
+2000-09-25  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/ia64.c (ia64_print_operand): Define 'e' as 64-n.
+       * config/ia64/ia64.md (rotrsi3): Allow variable rotates; don't
+       split until after reload.
+       (rotlsi3, rotldi3): New.
+
+2000-09-25  Gabriel Dos Reis  <gdr@codesourcery.com>
+
+       * diagnostic.c (output_last_position): Define.
+       (set_real_maximum_length): Tweek.
+       * diagnostic.h (output_last_position): Declare.
+
+2000-09-25  Kazu Hirata  <kazu@hxi.com>
+
+       * config/i386/i386.c: Fix formatting.
+
+2000-09-24  Alan Lehotsky  <alehotsky@cygnus.com>
+
+       * emit-rtl-c (gen_lowpart_common): Accept non-paradoxical SUBREG when
+       UNITS_PER_WORD is small.
+
+2000-09-25  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * c-common.c (format_char_info): Add flags2; update comments.
+       (print_char_table, scan_char_table, time_char_table): Split some
+       flags out into flags2.
+       (check_format_info): Use flags2 for those flags, for identifying
+       the initial character of a scanf scanset, and for identifying
+       printf formats where the '0' flag is ignored with precision.
+
+2000-09-25  Hans-Peter Nilsson  <hp@axis.com>
+
+       Changes below marked "here" add TABs on either or both sides,
+       covering start of line, up to any operand for all noted .*ASM.*_OP
+       definitions.  All callers changed.
+       * tm.texi: Make documented *_ASM.*_OP:s include spacing
+       (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, SHARED_SECTION_ASM_OP,
+       BSS_SECTION_ASM_OP, SHARED_BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
+       ASM_BYTE_OP, FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP,
+       ASM_STABS_OP, ASM_STABD_OP, ASM_STABN_OP).
+       Fix typos in description for LONG_LONG_TYPE_SIZE and
+       FINI_SECTION_ASM_OP.
+       * crtstuff.c (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Explain
+       why these defaults don't have leading spacing.
+       * dbxout.c (ASM_STABS_OP, ASM_STABN_OP): Here.
+       * dwarf2out.c (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
+       UNALIGNED_DOUBLE_INT_ASM_OP, SECTION_ASM_OP, ASM_BYTE_OP): Here.
+       * dwarfout.c (FILE_ASM_OP, VERSION_ASM_OP,
+       UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, ASM_BYTE_OP,
+       PUSHSECTION_ASM_OP, POPSECTION_ASM_OP): Here.
+       * defaults.h (ASM_STABD_OP, EH_FRAME_SECTION_ASM_OP): Here.
+       * varasm.c (ASM_STABS_OP): Here.
+       * xcoffout.h (ASM_STABS_OP): Here.
+       * config/elfos.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP,
+       SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP,
+       INT_ASM_OP, ASCII_DATA_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP,
+       STRING_ASM_OP): Here.
+       * config/freebsd.h (IDENT_ASM_OP): Here.
+       * config/linux-aout.h (SET_ASM_OP): Here.
+       * config/linux.h (SET_ASM_OP): Here.
+       * config/lynx.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+       INT_ASM_OP): Here.
+       * config/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here.
+       * config/nextstep.h (EH_FRAME_SECTION_ASM_OP, ALIGN_ASM_OP): Here.
+       * config/openbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here.
+       * config/psos.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+       INT_ASM_OP): Here.
+       * config/ptx4.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP,
+       SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP,
+       INT_ASM_OP, ASCII_DATA_ASM_OP, CONST_SECTION_ASM_OP,
+       CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
+       FINI_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP STRING_ASM_OP): Here.
+       * config/svr3.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+       CONST_SECTION_ASM_OP, ASM_BYTE_OP): Here.
+       * config/a29k/udi.h (INT_ASM_OP): Here.
+       * config/alpha/alpha-interix.h (CONST_SECTION_ASM_OP,
+       CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP,
+       SET_ASM_OP): Here.
+       * config/alpha/alpha.h (TEXT_SECTION_ASM_OP,
+       READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
+       UNALIGNED_DOUBLE_INT_ASM_OP, ASM_STABS_OP, ASM_STABN_OP,
+       ASM_STABD_OP): Here.
+       * config/alpha/elf.h (IDENT_ASM_OP, SKIP_ASM_OP, ALIGN_ASM_OP,
+       COMMON_ASM_OP, INT_ASM_OP, ASCII_DATA_ASM_OP,
+       CONST_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+       BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP,
+       INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, TYPE_ASM_OP,
+       SIZE_ASM_OP, STRING_ASM_OP): Here.
+       * config/alpha/vms.h (LINK_SECTION_ASM_OP,
+       READONLY_SECTION_ASM_OP, LITERALS_SECTION_ASM_OP,
+       CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, COMMON_ASM_OP): Here.
+       * config/arc/arc.h (ASM_BYTE_OP, SET_ASM_OP): Here.
+       (PUSHSECTION_ASM_OP): Define this, not PUSHSECTION_FORMAT.
+       * config/arm/aof.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP):
+       Here.
+       * config/arm/aout.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       BSS_SECTION_ASM_OP, SET_ASM_OP): Here.
+       * config/arm/coff.h (INT_ASM_OP): Here.
+       * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Here.
+       * config/arm/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): Here.
+       * config/arm/linux-elf.h (IDENT_ASM_OP, CONST_SECTION_ASM_OP,
+       INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Here.
+       * config/arm/unknown-elf.h (UNALIGNED_WORD_ASM_OP): Here.
+       * config/avr/avr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       ASM_BYTE_OP, TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP,
+       STRING_ASM_OP): Here.  Update documentation copy in comments.
+       * config/c4x/c4x.h (ASM_STABS_OP, BSS_SECTION_ASM_OP): Here.
+       * config/clipper/clipper.h (TEXT_SECTION_ASM_OP,
+       DATA_SECTION_ASM_OP): Here.
+       * config/clipper/clix.h (BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP):
+       Here.
+       * config/convex/convex.h (TEXT_SECTION_ASM_OP,
+       DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here.
+       * config/d30v/d30v.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       BSS_SECTION_ASM_OP): Here.
+       * config/fr30/fr30.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       BSS_SECTION_ASM_OP): Here.
+       * config/fx80/fx80.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+       Here.
+       * config/gmicro/gmicro.h (TEXT_SECTION_ASM_OP,
+       DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here.
+       * config/h8300/h8300.h (ASM_WORD_OP): Here.
+       * config/i370/i370.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       BSS_SECTION_ASM_OP): Here.
+       * config/i386/aix386.h (INIT_SECTION_ASM_OP): Here.
+       * config/i386/bsd.h (ASM_BYTE_OP): Here.
+       * config/i386/cygwin.h (SET_ASM_OP, INT_ASM_OP): Here.
+       * config/i386/dgux.h (CONST_SECTION_ASM_OP): Here.
+       * config/i386/djgpp.h (IDENT_ASM_OP, INT_ASM_OP, SET_ASM_OP):
+       Here.
+       * config/i386/freebsd-elf.h (SET_ASM_OP): Here.
+       * config/i386/freebsd.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP):
+       Here.
+       * config/i386/i386-coff.h (CTORS_SECTION_ASM_OP,
+       DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
+       * config/i386/i386-interix.h (STRING_ASM_OP, CONST_SECTION_ASM_OP,
+       CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP,
+       SET_ASM_OP): Here.
+       * config/i386/i386elf.h (BSS_SECTION_ASM_OP): Here.
+       * config/i386/netbsd.h (INT_ASM_OP): Here.
+       * config/i386/openbsd.h (INT_ASM_OP): Here.
+       * config/i386/osfrose.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP,
+       IDENT_ASM_OP): Here.
+       * config/i386/sco5.h (ALIGN_ASM_OP, ASCII_DATA_ASM_OP,
+       ASM_BYTE_OP, IDENT_ASM_OP, COMMON_ASM_OP, SET_ASM_OP,
+       LOCAL_ASM_OP, INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, STRING_ASM_OP,
+       SKIP_ASM_OP, GLOBAL_ASM_OP): Here.
+       * config/i386/seq-sysv3.h (SHARED_SECTION_ASM_OP,
+       SHARED_BSS_SECTION_ASM_OP): Here.
+       * config/i386/sequent.h (SHARED_SECTION_ASM_OP): Here.
+       * config/i386/sun386.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP,
+       DATA_SECTION_ASM_OP): Here.
+       * config/i386/svr3gas.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+       CONST_SECTION_ASM_OP): Here.
+       * config/i386/sysv3.h (INIT_SECTION_ASM_OP): Here.
+       * config/i386/unix.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       BSS_SECTION_ASM_OP): Here.
+       * config/i860/bsd-gas.h (ASCII_DATA_ASM_OP): Here.
+       * config/i860/bsd.h (ASCII_DATA_ASM_OP): Here.
+       * config/i860/fx2800.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP,
+       BSS_ASM_OP): Here, but use trailing spaces.
+       * config/i860/i860.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP,
+       DATA_SECTION_ASM_OP): Here.
+       * config/i860/paragon.h (ASCII_DATA_ASM_OP, BSS_SECTION_ASM_OP):
+       Here.
+       * config/i860/sysv3.h (ASCII_DATA_ASM_OP, CTORS_SECTION_ASM_OP,
+       DTORS_SECTION_ASM_OP, TDESC_SECTION_ASM_OP): Here.
+       * config/i860/sysv4.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+       TDESC_SECTION_ASM_OP): Here.
+       * config/i960/i960-coff.h (CTORS_SECTION_ASM_OP,
+       DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
+       * config/i960/i960.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+       Here.
+       * config/ia64/ia64.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       BSS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP,
+       UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
+       UNALIGNED_DOUBLE_INT_ASM_OP): Here.
+       * config/ia64/sysv4.h (ASM_BYTE_OP, STRING_ASM_OP, SKIP_ASM_OP,
+       COMMON_ASM_OP, ASCII_DATA_ASM_OP, INIT_SECTION_ASM_OP,
+       FINI_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+       SDATA_SECTION_ASM_OP, SBSS_SECTION_ASM_OP): Here.
+       * config/m32r/m32r.h (SCOMMON_ASM_OP): Here.
+       * config/m68hc11/m68hc11.h (GLOBAL_ASM_OP): Here.
+       * config/m68k/auxas.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP,
+       SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP,
+       SET_ASM_OP): Here.
+       * config/m68k/coff.h (BSS_SECTION_ASM_OP, CTORS_SECTION_ASM_OP,
+       DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
+       * config/m68k/crds.h (BSS_SECTION_ASM_OP): Here.
+       * config/m68k/dpx2.h (ASM_BYTE_OP, GLOBAL_ASM_OP): Here.
+       * config/m68k/hp320.h (ASCII_DATA_ASM_OP, GLOBAL_ASM_OP): Here.
+       * config/m68k/linux.h (BSS_SECTION_ASM_OP): Here.
+       * config/m68k/lynx.h (BSS_SECTION_ASM_OP): Here.
+       * config/m68k/m68k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       GLOBAL_ASM_OP): Here.
+       * config/m68k/m68kelf.h (SWBEG_ASM_OP, BSS_ASM_OP,
+       BSS_SECTION_ASM_OP): Here.
+       * config/m68k/m68kv4.h (BSS_ASM_OP): Here.
+       * config/m68k/mot3300.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       ASCII_DATA_ASM_OP, SET_ASM_OP, CTORS_SECTION_ASM_OP,
+       DTORS_SECTION_ASM_OP, GLOBAL_ASM_OP, ASM_BYTE_OP, ALIGN_ASM_OP,
+       SKIP_ASM_OP): Here.
+       * config/m68k/newsgas.h (SET_ASM_OP): Here.
+       * config/m68k/rtemself.h (INIT_SECTION_ASM_OP,
+       FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here.
+       * config/m68k/sgs.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP,
+       SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP,
+       SET_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here,
+       but use trailing spaces.
+       * config/m68k/tower-as.h (TEXT_SECTION_ASM_OP,
+       DATA_SECTION_ASM_OP, GLOBAL_ASM_OP, INIT_SECTION_ASM_OP,
+       FINI_SECTION_ASM_OP, CONST_SECTION_ASM_OP, BSS_SECTION_ASM_OP):
+       Here.
+       * config/m88k/dgux.h (FINI_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
+       CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here.
+       * config/m88k/m88k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       CONST_SECTION_ASM_OP, TDESC_SECTION_ASM_OP, CTORS_SECTION_ASM_OP,
+       DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+       IDENT_ASM_OP, FILE_ASM_OP, SECTION_ASM_OP, SET_ASM_OP,
+       GLOBAL_ASM_OP, ALIGN_ASM_OP, SKIP_ASM_OP, COMMON_ASM_OP,
+       BSS_ASM_OP, FLOAT_ASM_OP, DOUBLE_ASM_OP, INT_ASM_OP, SHORT_ASM_OP,
+       CHAR_ASM_OP, ASCII_DATA_ASM_OP, SBSS_ASM_OP, SCOMM_ASM_OP,
+       SDATA_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, INTERNAL_ASM_OP,
+       VERSION_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
+       PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, REQUIRES_88110_ASM_OP,
+       ASM_BYTE_OP): Here.
+       * config/m88k/openbsd.h (SET_ASM_OP): Here.
+       * config/m88k/sysv4.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+       CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here.
+       * config/mcore/mcore-elf.h (UNALIGNED_INT_ASM_OP,
+       UNALIGNED_SHORT_ASM_OP, CTORS_SECTION_ASM_OP,
+       DTORS_SECTION_ASM_OP): Here.
+       * config/mcore/mcore-pe.h (CTORS_SECTION_ASM_OP,
+       DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
+       * config/mips/elf.h (TYPE_ASM_OP, SIZE_ASM_OP,
+       BSS_SECTION_ASM_OP): Here.
+       * config/mips/elf64.h (TYPE_ASM_OP, SIZE_ASM_OP): Here.
+       * config/mips/iris5.h (ABICALLS_ASM_OP): Here.
+       * config/mips/iris6.h (TYPE_ASM_OP, SIZE_ASM_OP,
+       POPSECTION_ASM_OP, BSS_SECTION_ASM_OP, CONST_SECTION_ASM_OP_32,
+       CONST_SECTION_ASM_OP_64, CTORS_SECTION_ASM_OP,
+       DTORS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here.
+       * config/mips/mips.c (ABICALLS_ASM_OP): Here.
+       * config/mips/mips.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP):
+       Here.
+       * config/mips/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP):
+       Here.
+       * config/mips/osfrose.h (SET_ASM_OP): Here.
+       * config/mips/sni-svr4.h (ABICALLS_ASM_OP): Here.
+       * config/ns32k/encore.h (SHARED_SECTION_ASM_OP): Here.
+       * config/ns32k/merlin.h (SHARED_SECTION_ASM_OP): Here.
+       * config/ns32k/ns32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+       Here.
+       * config/ns32k/sequent.h (SHARED_SECTION_ASM_OP): Here.
+       * config/ns32k/tek6000.h (SHARED_SECTION_ASM_OP): Here.
+       * config/pa/pa-64.h (INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP): Here.
+       * config/pa/pa.h (ASM_STABS_OP, ASM_STABN_OP): Here.
+       * config/pj/pj.h (SET_ASM_OP, BSS_SECTION_ASM_OP): Here.
+       * config/pyr/pyr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+       Here.
+       * config/romp/romp.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+       Here.
+       * config/rs6000/rs6000.h (SET_ASM_OP): Here.
+       * config/rs6000/sol2.h (ASM_STABN_OP): Here.
+       * config/rs6000/sysv4.h (SKIP_ASM_OP, LOCAL_ASM_OP, LCOMM_ASM_OP):
+       Here.
+       * config/sh/sh.h (SET_ASM_OP, BSS_SECTION_ASM_OP,
+       UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here.
+       * config/sparc/linux.h (COMMON_ASM_OP): Here.
+       * config/sparc/linux64.h (COMMON_ASM_OP,
+       UNALIGNED_DOUBLE_INT_ASM_OP): Here.
+       * config/sparc/litecoff.h (BSS_SECTION_ASM_OP,
+       CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
+       * config/sparc/lynx.h (BSS_SECTION_ASM_OP): Here.
+       * config/sparc/pbd.h (ASM_INT_OP): Here.
+       * config/sparc/sp64-elf.h (UNALIGNED_LONGLONG_ASM_OP): Here.
+       * config/sparc/sparc.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP,
+       DATA_SECTION_ASM_OP, IDENT_ASM_OP): Here.
+       * config/sparc/sun4gas.h (UNALIGNED_DOUBLE_INT_ASM_OP,
+       UNALIGNED_INT_ASM_OP, UNALIGNED_SHORT_ASM_OP): Here.
+       * config/sparc/sysv4.h (STRING_ASM_OP, COMMON_ASM_OP, SKIP_ASM_OP,
+       UNALIGNED_DOUBLE_INT_ASM_OP, UNALIGNED_INT_ASM_OP,
+       UNALIGNED_SHORT_ASM_OP, PUSHSECTION_ASM_OP, POPSECTION_ASM_OP,
+       TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
+       CONST_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+       CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+       EH_FRAME_SECTION_ASM_OP): Here.
+       * config/sparc/vxsim.h (COMMON_ASM_OP): Here.
+       * config/spur/spur.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+       Here.
+       * config/tahoe/tahoe.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+       Here.
+       * config/v850/v850.h (SCOMMON_ASM_OP, ZCOMMON_ASM_OP,
+       TCOMMON_ASM_OP): Here.
+       * config/vax/vax.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+       Here.
+       * config/we32k/we32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+       ASM_BYTE_OP): Here.
+
+2000-09-25  Richard Henderson  <rth@cygnus.com>
+
+       * expmed.c (store_bit_field): Adjust last change to not consider
+       any word-sized field naturally aligned.
+
+2000-09-24  Richard Henderson  <rth@cygnus.com>
+
+       * config/alpha/alpha.c (alpha_emit_conditional_branch): Handle
+       TFmode unordered compares properly.  Revalidate integer compare
+       operands.
+       (alpha_emit_setcc): New.
+       (alpha_emit_conditional_move): Revalidate integer compare operands.
+       * config/alpha/alpha-protos.h: Update.
+       * config/alpha/alpha.md (cmpdi): Allow general operands.
+       (sne): Use alpha_emit_setcc.
+       (seq, slt, sle, sgt, sge, sltu, sleu, sgtu, sgeu): Likewise.
+       (sunordered, sordered): New.
+
+2000-09-24  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/ia64-protos.h: Update.
+       * config/ia64/ia64.c (call_multiple_values_operation): Remove.
+       (ia64_expand_call): New.
+       (ia64_expand_prologue): Emit an alloc if we need extra input
+       registers.
+       (ia64_expand_epilogue): New arg sibcall_p; don't emit the return
+       instruction if true.
+       (struct reg_flags): Add is_sibcall.
+       (rtx_needs_barrier): A sibcall does not use CFM et al.  Ignore USEs.
+       (emit_insn_group_barriers): Set flags.is_sibcall.  Remove hacks
+       for CODE_FOR_gr_spill_internal/CODE_FOR_gr_restore_internal.
+       * config/ia64/ia64.h (PREDICATE_CODES): Update.
+       * config/ia64/ia64.md (call): Use ia64_expand_call.
+       (call_value): Likewise.
+       (sibcall, sibcall_value): New.
+       (call patterns): Remove extra expanders; tidy.
+       (sibcall_epilogue): New.
+       (set_bsp): Remove the extra USE.  Put the operand inside the UNSPEC.
+
+2000-09-24  Richard Henderson  <rth@cygnus.com>
+
+       * emit-rtl.c (gen_lowpart_common): Use trunc_int_for_mode.
+
+       * sibcall.c (skip_pic_restore): New.
+       (identify_call_return_value): Use it.
+
+2000-09-24  Mark Mitchell  <mark@codesourcery.com>
+
+       * c-tree.texi: Moved here from cp/ir.texi.  Documented nested
+       functions.  Generalize to handle both C and C++.
+       * Makefile.in (c-tree.info): New target.
+       (info): Add c-tree.info.
+       
+Sun Sep 24 09:15:48 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (store_field): If BITSIZE is negative, use size of type.
+       (expand_expr, case COMPONENT_EXPR): Likewise.
+
+Sun 24-Sep-2000 11:40:23 BST  Neil Booth  <NeilB@earthling.net>
+
+       * cpplex.c: Update TODO comment.
+       * cpplib.c (do_error, do_warning): Merge common code of
+       do_error and do_warning into do_diagnostic.  Use it.
+       (do_diagnostic): New function.
+       * cpplib.h: Fix comment typo.
+
+2000-09-24  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * c-common.c (check_format_info): Warn for a wide character string
+       used as a non-wide format argument.
+
+2000-09-24  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * builtins.def (BUILT_IN_LLABS): Add.
+       * builtins.c (expand_builtin): Also abort on BUILT_IN_LLABS.
+       * c-common.c (c_common_nodes_builtins): Create builtin functions
+       __builtin_llabs, and plain llabs unless no_nonansi_builtins
+       outside of C99 mode.
+       (expand_tree_builtin): Handle BUILT_IN_LLABS.
+
+Sat 23-Sep-2000 22:39:18 BST  Neil Booth  <NeilB@earthling.net>
+
+       * cpphash.h (CPP_RESERVE, CPP_PUTS_Q, CPP_PUTS, CPP_PUTC_Q,
+       CPP_PUTC, DUMMY_TOKEN, NO_DUMMY_TOKEN): Delete.
+       * cpplex.c (_cpp_expand_token_space, _cpp_init_toklist,
+       _cpp_free_toklist): No need to worry about extra dummy token
+       at the start of token lists any more.
+       (trigraph_ok): Only warn outside comments.
+       (skip_block_comment): Set and clear lexing_comment.
+       (skip_line_comment): Take a cpp_reader not cpp_buffer.
+       Set and clear lexing_comment.
+       (parse_number): Handle leading '.' indicated by pfile->seen_dot.
+       (check_long_token): Delete.
+       (lex_percent, lex_dot): New subroutines of lex_token to
+       handle lexing of '.' and '%' without lookback.
+       (lex_token): Use lex_dot and lex_percent.
+       (lex_line): Don't check for LIST_OFFSET.
+       (_cpp_init_input_buffer): Update for new _cpp_init_toklist.
+       * cpplib.c (_cpp_parse_assertion): Similarly.
+       (cpp_push_buffer): Initialize extra_char.
+       * cpplib.h (LIST_OFFSET): Delete.
+       (struct cpp_buffer): New member extra_char.
+       (struct lexer_state): New members lexing_comment and seen_dot.
+
+2000-09-23  Jason Merrill  <jason@redhat.com>
+
+       * config/rs6000/x-aix41 (CLIB): Define here.
+       * config/rs6000/t-aix43: Not here.
+       * config/rs6000/t-aix41: Or here.  Remove.
+       * configure.in: Don't use it.
+
+2000-09-22  Jason Merrill  <jason@redhat.com>
+
+       * configure.in: Add test for HAVE_LD_DWARF_LINKONCE.
+       * toplev.c: Use it to initialize flag_eliminate_dwarf2dups.
+       * config.in: Regenerate.
+
+       * configure.in: Fix checks for assembler features when using a
+       one-tree assembler that has not yet been built.
+       Fix --disable-threads.
+
+2000-09-19  Geoff Keating  <geoffk@cygnus.com>
+
+       * stmt.c (expand_asm_operands): Allow # in constraints.
+
+2000-09-22  Jason Merrill  <jason@redhat.com>
+
+       * c-lex.c (skip_white_space): Just treat CRs as horizontal whitespace.
+
+       * dbxout.c (dbxout_symbol_name): Just use DECL_NAME for
+       function-local names.
+
+2000-09-22  Brad Lucier <lucier@math.purdue.edu>
+           Mark Mitchell  <mark@codesourcery.com>
+
+        * toplev.c (warn_disabled_optimization): Declare new warning flag.
+        * flags.h (warn_disabled_optimization): Add it here.
+        * gcse.c (gcse_main): Add warning when disabled.
+        * invoke.texi: Document -Wdisabled-optimization.
+
+2000-09-21  Jason Merrill  <jason@redhat.com>
+
+       * dwarf2out.c (add_const_value_attribute): Multiply by length, not 4.
+
+       * dwarf2out.c (tree_add_const_value_attribute): New fn.
+       (gen_variable_die): Call it for non-definitions.
+
+       * dwarf2out.c (die_struct): Add die_mark field.
+       (mark_dies, unmark_dies): New fns.
+       (clear_die_sizes): Remove.
+       (print_die): Check die_symbol rather than die_offset.
+       (build_abbrev_table, output_pubnames, output_aranges): Check
+       die_mark rather than die_offset.
+       (output_comp_unit): Move calc_die_sizes after build_abbrev_table.
+       Call mark_dies.
+
+Thu 21-Sep-2000 18:19:05 BST  Neil Booth  <NeilB@earthling.net>
+
+       * cppfiles.c (lookup_include_file): Rename to open_file.
+       Always create a splay tree value, even on syscall failures.
+       Negative entries indicated by fd == -2.
+       Re-open files closed in the meantime.
+       (_cpp_fake_include): Create a negative splay tree entry.
+       (find_include_file, cpp_read_file): Update for function name
+       change.
+       * gcc.gd/cpp/mi4.c: Testcase.
+
+2000-09-21  Nick Clifton  <nickc@redhat.com>
+
+       * config/arm/t-arm-elf (MULTILIB_DIRNAMES): Enable multilibs for
+       ARM and THUMB modes.
+
+       * config/mcore/mcore.c: Fix compile time warnings.
+       * config/mcore/mcore-protos.h: Fix compile time warnings. 
+
+2000-09-20  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * configure.in: Correct test of gcc_cv_glibc.
+       * configure: Rebuilt.
+       * config.in: Rebuilt.
+
+2000-09-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtins.c (expand_builtin_fputs): Also expand when length!=1.
+       (expand_builtin): Handle BUILT_IN_FWRITE.
+
+       * builtins.def (BUILT_IN_FWRITE): New entry.
+
+       * c-common.c (c_common_nodes_and_builtins): Declare __builtin_fwrite.
+
+Wed Sep 20 15:39:14 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * gcc.c (modify_target): New variable and struct.
+       (process_command): Handle MODIFY_TARGET_NAME.
+       * tm.texi (MODIFY_TARGET_NAME): Add documentation for new macro.
+       * config/pa/pa.h (MODIFY_TARGET_NAME): New macro.
+
+       * c-decl.c (finish_decl): Add else's to avoid referencing
+       TYPE_DOMAIN of an ERROR_MARK.
+
+Wed Sep 20 21:44:31 2000  Denis Chertykov  <denisc@overta.ru>
+
+       * config/avr/avr.c (adjust_insn_length): Adjust lengths of
+       `reload_in*' insns.
+
+2000-09-19  Marek Michalkiewicz  <marekm@linux.org.pl>
+
+       * config/avr/avr.md (neghi2): Add alternative for input and output
+       operands in different registers, as in negsi2.
+       (*negsi2): Remove '*' from the name.  Use "movw" if available.
+
+2000-09-19  Jim Wilson  <wilson@cygnus.com>
+
+       * config/ia64/crtbegin.asm (__dso_handle): Delete use of
+       HAVE_GAS_HIDDEN macro.
+
+Tue 19-Sep-2000 22:38:57 BST  Neil Booth  <NeilB@earthling.net>
+
+       * cpplex.c (lex_line): Drop the EOF token for unknown
+       directives in assembler.
+
+2000-09-19  David Edelsohn  <edelsohn@gnu.org>
+
+       * configure.in: Allow enable_threads_flag value of "aix".  Define
+       thread_file as "aix" for AIX 4.3 and above.
+       * configure: Regenerated.
+
+       * gthr-aix.h: New file.
+
+       * rs6000/t-aix43: Replace soft-float multilib with pthread.
+       Remove 403 processor multilib match.  Fix rios2 processor multilib
+       match.
+
+       * rs6000/aix.h (ASM_DECLARE_FUNCTION_NAME): Use function_section
+       to return to appropriate csect.
+
+2000-09-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtins.c (is_valid_printf_arglist, expand_builtin_printf): New
+       functions.
+       (expand_builtin_fputs): Set `target' parameter for `expand_expr'.
+       (expand_builtin): Handle BUILT_IN_PUTCHAR, BUILT_IN_PUTS and
+       BUILT_IN_PRINTF.
+
+       * builtins.def (BUILT_IN_PUTCHAR, BUILT_IN_PUTS, BUILT_IN_PRINTF):
+       New entries.
+
+       * c-common.c (init_function_format_info): Handle __builtin_printf.
+       Set `check_function_format_ptr'.
+       (c_common_nodes_and_builtins): Set `puts_ftype' and
+       `printf_ftype'.  Declare __builtin_putchar, __builtin_puts,
+       __builtin_printf and printf.
+
+       * tree.c, tree.h (check_function_format_ptr): Declare.
+
+Tue 19-Sep-2000 18:26:57 BST  Neil Booth  <NeilB@earthling.net>
+
+        * cppfiles.c (read_include_file): Take no special action for
+       zero-length files.
+
+2000-09-19  Bernd Schmidt  <bernds@redhat.co.uk>
+
+       * final.c (insn_current_reference_address): Use INSN_SHUID of seq
+       rather than that of branch.
+       (shorten_branches): Don't increment insn_current_address twice.
+
+       Undo most of the Wed Jan 27 23:39:53 1999 patch:
+       * loop.h (struct induction): Delete members derived, ix and last_use.
+       (struct loop_ivs): Delete members first_increment_giv and
+       last_increment_giv.
+       * loop.c (verify_dominator, find_life_end, cmp_recombine_givs_stats,
+       recombine_givs): Delete functions.
+       (find_and_verify_loops): Don't initialize cont_dominator.
+       (strength_reduce): Lose code to try to find bivs that can be
+       expressed as givs of another biv, and to convert biv increments
+       into givs.
+       Lose loop_scan_start variable, always use loop->scan_start.
+       Don't call recombine_givs.  Don't handle derived givs.
+       (record_giv): Don't initialize derived and last_use fields.
+       (biv_eliminiation_giv_has_0_offset): Lose code to handle derived
+       givs.
+       * unroll.c (derived_regs): Delete static variable.
+       (unroll_loop): Don't initialize it.
+       (copy_loop_body): Lose code to handle derived givs.
+       (find_splittable_givs): Don't check for givs made from biv
+       increments.
+       Don't set derived_regs.
+
+       Fix misapplied earlier patch:
+       * config/sh/sh.md (floatsisf_ie): Reenable.  Remove explicit reference
+       to fpul.
+       (floatsisf2): Generate floatsisf_ie by default.
+       (floatsisf_i4): Conditional on TARGET_SH4.
+
+       (floatsisf2, floatsidf2, extendsfdf2): Also use reg_no_subreg_operand
+       predicate for the expanders.
+
 2000-09-19  Richard Henderson  <rth@cygnus.com>
 
+       * config/i386/i386.h (CPP_CPU_SPEC): Define i586 and i686 symbols
+       in addition to pentium and pentiumpro symbols.
+       (CPP_CPU_DEFAULT_SPEC): Likewise.
+
        * c-typeck.c (c_expand_asm_operands): Restore the output tree
        after expanding.
 
 
 Mon 18-Sep-2000 22:12:44 BST  Neil Booth  <NeilB@earthling.net>
 
-        * cpp.texi: Update documentation, including some clarifications,
+       * cpp.texi: Update documentation, including some clarifications,
        the treatment of various newline combinations, and space between
        backslash and newline.
 
@@ -79,7 +981,7 @@ Mon Sep 18 20:26:50 2000  J"orn Rennecke <amylaar@redhat.co.uk>
 
        * toplev.c (rest_of_compilation): Call purge_hard_subreg_sets to
        remove all SETs of SUBREGs of hard registers.
-       * function.c (purge_hard_subreg_sets): New function.
+       * function.c (purge_hard_subreg_sets): New function.
        (purge_single_hard_subreg_set): New function.
        * rtl.h: (purge_hard_subreg_sets): New function.
 
@@ -476,7 +1378,7 @@ Sun Sep 17 10:46:17 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
        (finish_method_def): Use it.
        (init_objc): Initialize more language-specific hooks.
        * objc/Make-lang.in: Update dependencies.
-       
+
 2000-09-16  Geoffrey Keating  <geoffk@cygnus.com>
 
        * configure.in: Define macros that affect features before
@@ -499,7 +1401,7 @@ Sat Sep 16 14:35:55 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
        no_debugging_symbols.
        * toplev.c (rest_of_compilation): Call save_for_inline.
        * tree.h: Update comment.
-       
+
        * stor-layout.c (place_field): Don't do anything if field or
        its type are ERROR_MARK.