OSDN Git Service

* cpplib.c (do_line): Update line number after pop_buffer.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index c47536a..d8ff3e3 100644 (file)
+2001-08-06  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cpplib.c (do_line): Correct line number after pop_buffer.
+
+2001-08-05  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       PR preprocessor/3824
+       * line-map.c: Update comments.
+       * line-map.h: Update comments.
+       * tradcif.y: Don't consider large numbers unsigned.
+
+2001-08-05  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       PR preprocessor/3081
+       * c-lex.c (map): New.
+       (cb_file_change): Update map and use it.
+       (cb_def_pragma, cb_define, cb_undef): Use map and line.
+       (c_lex): Update to use map.
+       * cpperror.c (print_location): Move to using logical line numbers.
+       * cppfiles.c (stack_include_file): Update for new _cpp_do_file_change.
+       (cpp_make_system_header): Similarly.
+       (_cpp_execute_include): Stop line numbering hacks.  Store the
+       line we will return to.
+       * cpphash.h (CPP_BUF_LINE): Remove.
+       (struct cpp_buffer): Remove lineno and pseudo_newlines.
+       Add map and return_to_line.
+       (_cpp_do_file_change): Update.
+       * cppinit.c (cpp_start_read): Update line kludge.
+       * cpplex.c (handle_newline): Don't update lineno and pseudo_newlines.
+       (trigraph_ok): Use logical line numbers for diagnostics.
+       (skip_block_comment): Likewise.
+       (skip_whitespace): Likewise.
+       (skip_line_comment): Use pfile->line instead.
+       (_cpp_lex_token): Update to use logical line numbering exclusively.
+       Handle BOL locally.  Accept new lines in directives, but keep
+       pfile->line decremented.  Diagnostics use logical lines.  Update
+       directive handling.
+       * cpplib.c (SEEN_EOL): New.
+       (skip_rest_of_line, check_eol): Use it.
+       (end_directive): Increase line number when accepting the newline
+       at the end of a directive.
+       (run_directive): Simplify.
+       (do_line): Bad LC_LEAVEs become LC_RENAMEs.  Update.
+       (_cpp_do_file_change): Update to take buffer line number as an
+       argument, and store the current map in the cpp_reader.  Remove
+       line number kludges.
+       (_cpp_do__Pragma): Restore output position after a _Pragma.
+       (cpp_push_buffer): Don't set output line or lineno.
+       (_cpp_pop_buffer): Transfer more info from a faked buffer.
+       Remove line kludge.  Set output_line.
+       * cppmacro.c (builtin_macro): Update handling of __LINE__.
+       (parse_arg): Use logical lines.
+       (save_lookahead_token): Save EOFs too now.
+       * cppmain.c (struct printer): Fix comments.
+       (printer_init): Simplify, let caller do errors.
+       (scan_translation_unit, check_multiline_token, dump_macro): Update.
+       (maybe_print_line): Simplify.
+       (print_line): Don't print a linemarker if -P.
+       (cb_define, cb_undef, cb_def_pragma, cb_ident, cb_include): Update.
+       (cb_file_change): Simplify.
+       * line-map.h (LAST_SOURCE_LINE): Fix.
+       (CURRENT_LINE_MAP): New.
+
+2001-08-05  Bernd Schmidt  <bernds@redhat.com>
+
+       * doloop.c (doloop_modify_runtime): Properly compute number of
+       iterations if loop was unrolled.
+
+       * alias.c (rtx_equal_for_memref_p): VALUEs are only identical
+       if their CSELIB_VAL_PTRs are.
+
+       * config/ia64/ia64.c (struct spill_fill_data): New member prev_insn.
+       (setup_spill_pointers): Initialize it.
+       (spill_restore_mem): Set it.
+       (do_spill, do_restore): Use it to add REG_INC note.
+       * config/ia64/ia64.md (movti_internal): Add REG_INC notes as needed.
+
+       * config/ia64/ia64.c (ia64_sched_reorder): Defer scheduling of
+       asms if other insns are available.
+
+       * config/ia64/ia64.c (condop_operator): New predicate.
+       * config/ia64/ia64.h (PREDICATE_CODES): Add it.
+       * config/ia64/ia64.md (cond_opsi2_internal and splitters): New
+       patterns.
+
+       * expr.c (expand_expr, case COND_EXPR): Prefer working with a
+       temporary register than directly using a MEM.
+
+2001-08-04  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * config/sh/sh.c (sh_asm_named_section): Fix typo in align
+       parameter in last change.
+
+2001-08-04  Zack Weinberg  <zackw@panix.com>
+
+       * sparc.md: Don't use #if inside C test expression.
+
+2001-08-04  Richard Henderson  <rth@redhat.com>
+
+       * i386.c: Revert 07-30 ix86_output_main_function_alignment_hack.
+
+2001-08-04  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cpphash.h (struct cpp_reader): New member directive_line.
+       * cpplib.h (struct cpp_callbacks): Update prototypes of callbacks.
+       * cpplib.c (do_define, do_undef, do_ident, do_include_common,
+       do_pragma): Pass line to callbacks.
+       (start_directive): Record line of directive.
+       * cppmain.c (cb_ident, cb_define, cb_undef, cb_def_pragma,
+       cb_include): Similarly.
+       * c-lex.c (cb_ident, cb_define, cb_undef, cb_def_pragma):
+       Similarly.
+
+2001-08-04  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * config/d30v/d30v.h: Fix typo in start of UNIQUE_SECTION
+       comment.
+
+Sat Aug  4 13:51:36 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * loop.c (try_copy_prop); Kill invalidated REG_EQUAL notes.
+
+       * reload1.c (fixup_abnormal_edges): New static function.
+       (reload): Use it.
+
+       * flow.c (need_fake_edge_p): New function.
+       (flow_call_edges_add): Fix handling of noreturn and sibbling calls;
+       avoid call insn to be very last insn in the insn stream.
+
+       * profile.c (branch_prob): Call flow_call_edges_add instead of
+       doing that by hand; cleanup cfg to re-merge basic blocks once
+       we are done.
+
+2001-08-04  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
+
+       * Makefile.in (CPPLIB_H): New, so that dependencies on cpplib.h
+       are also on line-map.h.
+       * cppfiles.c (stack_include_file): Update.
+       * cpphash.h (struct cpp_buffer): New member return_at_eof.
+       (_cpp_pop_buffer): New.
+       * cppinit.c (cpp_destroy, cpp_finish): Update.
+       (do_includes): Mark each buffer to return at EOF.
+       * cpplex.c (_cpp_lex_token): Pop buffers at EOF.  Continue or
+       return as requested.
+       * cpplib.c (run_directive, do_line, cpp_push_buffer): Update.
+       (cpp_pop_buffer): Rename _cpp_pop_buffer.  Stop skipping.
+       * cpplib.h (cpp_pop_buffer): Remove.
+       (cpp_scan_buffer_nooutput): Rename cpp_scan_nooutput.
+       * cppmacro.c (cpp_scan_buffer_nooutput): Similarly.  No need to pop
+       buffers.
+       * cppmain.c (scan_buffer): Rename scan_translation_unit.  No need
+       to pop buffers.
+       (do_preprocessing): Update.
+       * fix-header.c (read_scan_file): Update.  No need to pop buffers.
+       * c-parse.in (_yylex): Similarly.
+       * scan-decls.c (scan_decls): Similarly.
+       * line-map.h: Update comments.
+
+       * objc/Make-lang.in (objc-act.o): Update dependencies.
+
+2001-08-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+       * config/m68hc11/m68hc11.md ("cmphi_1", "cmpqi_1"): Allow memory 
+       and soft register for operand 0.
+       ("cmphi_z_used", "cmpqi_z_used"): Allow memory for operand 0.
+
+2001-08-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+       * config/m68hc11/m68hc11.md ("bitcmpqi"): Allow memory and soft
+       register for operand 0.
+       ("bitcmpqi_z_used"): Allow memory for operand 0.
+       (split "bitcmpqi"): New split to handle address reg as operand 1.
+
+2001-08-04  Andreas Jaeger  <aj@suse.de>
+
+       * gcse.c: Revert Daniel's last patch.
+
+2001-08-03  Zack Weinberg  <zackw@stanford.edu>
+
+       * sparc-protos.h: Add prototypes for fp_zero_operand and 
+       reg_or_0_operand.
+       * sh-protos.h: Add prototype for fpul_operand.
+
+2001-08-04  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * doc/extend.texi (Other Builtins): Fix typo in last change.
+
+2001-08-03  Richard Henderson  <rth@redhat.com>
+
+       * target.h (gcc_target): Add asm_out.named_section, 
+       section_type_flags, have_named_sections.
+       * target-def.h (TARGET_ASM_NAMED_SECTION): New.
+       (TARGET_HAVE_NAMED_SECTIONS): New.
+       (TARGET_SECTION_TYPE_FLAGS): New.
+
+       * Makefile.in (toplev.o): Depend on TARGET_H.
+       (varasm.o, dbxout.o): Likewise.
+       * c-common.c (decl_attributes): Check targetm.have_named_sections
+       instead of ifdef ASM_OUTPUT_SECTION_NAME.
+       * dbxout.c (dbxout_function_decl): Likewise.
+       (dbxout_function_end): Likewise.
+       * toplev.c (compile_file): Likewise.
+       * varasm.c (exception_section): Likewise.
+       * cp/decl2.c (finish_objects): Likewise.
+
+       * defaults.h (EH_FRAME_SECTION): Remove.
+       (EH_FRAME_SECTION_ASM_OP): Remove.
+       (EH_FRAME_SECTION_NAME): New.
+       (UNIQUE_SECTION): Don't depend on ASM_OUTPUT_SECTION_NAME.
+       (UNIQUE_SECTION_P): Remove.
+       * dwarf2out.c (SECTION_FORMAT): Remove.
+       (ASM_OUTPUT_SECTION): Remove.
+       (output_call_frame_info): Use named_section_flags.
+       (output_comp_unit, dwarf2out_start_source_file): Likewise.
+       (dwarf2out_end_source_file, dwarf2out_define): Likewise.
+       (dwarf2out_undef, dwarf2out_init, dwarf2out_finish): Likewise.
+       * varasm.c (in_eh_frame, eh_frame_section): Remove.
+       (named_section_flags): New.
+       (named_section): Use it and targetm.section_type_flags.
+       (resolve_unique_section): New.
+       (assemble_start_function): Use it.
+       (asm_emit_uninitialised, assemble_variable): Likewise.
+       (default_section_type_flags): New.
+       (default_no_named_section, default_elf_asm_named_section): New.
+       (default_coff_asm_named_section, default_pe_asm_named_section): New.
+       * output.h: Update varasm.c decls.
+       (SECTION_*): New flags.
+
+       * crtstuff.c: Check EH_FRAME_SECTION_NAME not EH_FRAME_SECTION_ASM_OP.
+       (__EH_FRAME_BEGIN__, __FRAME_END__): Use attribute section.
+
+       * config/elfos.h (UNIQUE_SECTION_P): Remove.
+       * config/alpha/elf.h, config/arm/linux-elf.h: Likewise.
+       * config/arm/pe.h, config/arm/unknown-elf.h: Likewise.
+       * config/i386/cygwin.h, config/i386/djgpp.h: Likewise.
+       * config/i386/i386-interix.h, config/i386/win32.h: Likewise.
+       * config/ia64/sysv4.h, config/mcore/mcore-pe.h: Likewise.
+       * config/mips/elf.h, config/mips/elf64.h: Likewise.
+       * config/mips/iris6gld.h, config/mips/mips.h: Likewise.
+       * config/pa/pa64-hpux.h, 
+
+       * config/elfos.h (ASM_OUTPUT_SECTION_NAME): Remove.
+       (TARGET_ASM_NAMED_SECTION): New.
+       * config/psos.h, config/a29k/a29k.h, config/alpha/elf.h: Likewise.
+       * config/alpha/vms.h, config/arm/coff.h: Likewise.
+       * config/arm/conix-elf.h, config/arm/elf.h: Likewise.
+       * config/arm/linux-elf.h, config/arm/pe.h: Likewise.
+       * config/arm/unknown-elf.h, config/avr/avr.h: Likewise.
+       * config/c4x/c4x.h, config/h8300/h8300.h: Likewise.
+       * config/i386/cygwin.h, config/i386/djgpp.h: Likewise.
+       * config/i386/i386-interix.h, config/i386/i386elf.h : Likewise.
+       * config/i386/sco5.h, config/i386/win32.h: Likewise.
+       * config/m68k/coff.h, config/mcore/mcore-pe.h: Likewise.
+       * config/mcore/mcore.h, config/mips/elf.h: Likewise.
+       * config/mips/elf64.h, config/mips/iris6.h: Likewise.
+       * config/mips/netbsd.h, config/mips/openbsd.h: Likewise.
+       * config/pa/pa64-hpux.h, config/rs6000/sysv4.h: Likewise.
+       * config/rs6000/xcoff.h, config/sh/sh.h: Likewise.
+       * config/sparc/sysv4.h: Likewise.
+
+       * config/nextstep.h: Error until named sections implemented.
+
+       * config/a29k/a29k.c (a29k_asm_named_section): New.
+       * config/alpha/alpha.c (SECTION_VMS_OVERLAY): New.
+       (vms_section_type_flags, vms_asm_named_section): New.
+       * config/arm/arm.c (arm_elf_asm_named_section): New.
+       * config/avr/avr.c (asm_output_section_name): Remove.
+       * config/avr/avr-protos.h: Update.
+       * config/c4x/c4x.c (c4x_asm_named_section): New.
+       * config/h8300/h8300.c (h8300_asm_named_section): New.
+       * config/i386/i386.c (sco_asm_named_section): New.
+       * config/i386/winnt.c (SECTION_PE_SHARED): New.
+       (i386_pe_section_type_flags): New.
+       (i386_pe_asm_named_section): New.
+       * config/i386/i386-protos.h: Update.
+       * config/m68k/m68k.c (m68k_coff_asm_named_section): New.
+       * config/mcore/mcore.c (mcore_asm_named_section): New.
+       * config/mips/mips.c (iris6_asm_named_section): New.
+       * config/mips/mips.h (ENCODE_SECTION_INFO): Use DECL_ONE_ONLY
+       instead of UNIQUE_SECTION_P.
+       * config/rs6000/rs6000.c (rs6000_elf_section_type_flags): New.
+       (xcoff_asm_named_section): New.
+       * config/sh/sh.c (sh_asm_named_section): New.
+       * config/sparc/sparc.c (sparc_elf_asm_named_section): New.
+
+       * config/i386/djgpp.h (EH_FRAME_SECTION_ASM_OP): Remove.
+       * config/i386/sco5.h (EH_FRAME_SECTION_ASM_OP*): Remove.
+       (EH_FRAME_SECTION_NAME): New.
+       (EXCEPTION_SECTION): New.
+       * config/ia64/ia64.h (EH_FRAME_SECTION_ASM_OP): Remove.
+       (DEBUG_*_SECTION): Remove.
+       * config/m68k/rtemself.h (EH_FRAME_SECTION_ASM_OP): Remove.
+       * config/mips/iris6.h (DEBUG_*_SECTION): Remove.
+       (EH_FRAME_SECTION_ASM_OP): Remove.
+
+       * doc/tm.texi (UNIQUE_SECTION_P): Remove.
+       (ASM_OUTPUT_SECTION_NAME): Remove.
+       (TARGET_ASM_NAMED_SECTION): New.
+       (TARGET_HAVE_NAMED_SECTIONS): New.
+       (TARGET_SECTION_TYPE_FLAGS): New.
+       (EH_FRAME_SECTION_ASM_OP): Remove.
+       (EH_FRAME_SECTION_NAME): New.
+
+2001-08-03  Zack Weinberg  <zackw@stanford.edu>
+
+       * builtins.c (fold_builtin_constant_p): Return integer_zero_node
+       for complex expressions when cfun == 0.
+       * doc/extend.texi: Document that __builtin_constant_p can be
+       used in data initializers as well as functions.
+
+2001-08-03  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Declare
+       variable I locally, instead of expecting a declaration in the
+       calling context.
+
+2001-08-03  Richard Henderson  <rth@redhat.com>
+
+       * except.c (collect_one_action_chain): Add an explicit cleanup
+       action if regions surrounding a catch were encoded entirely
+       within the call-site entry.
+
+2001-08-03  Richard Henderson  <rth@redhat.com>
+
+       * dbxout.c (dbxout_symbol_location): Flatten subregs first;
+       don't take REGNO of a non-register.
+
+2001-08-03  John David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * gthr-dce.h (__GTHREAD_MUTEX_INIT_FUNCTION and
+       __GTHREAD_MUTEX_INIT_DEFAULT): New macros for mutex initialization.
+       (__gthread_key_delete): Remove code for __PTHREAD_LIBRARY_VERSION_1 >= 1
+       (__gthread_mutex_init_function): New function for mutex initialization.
+
+2001-08-03  Daniel Berlin  <dan@cgsoftware.com>
+        
+       * Makefile.in: Revert screwed up commit.
+
+2001-08-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+       * config/m68hc11/t-m68hc11-gas (T_CPPFLAGS): Add _ctor and _dtor.
+       * config/m68hc11/larith.asm (_exit): Split in several sub-sections
+       merged by linker script to get a final _exit().
+       (__do_global_dtors): New for destructor handling in specific exit
+       section.
+       (__do_global_ctors): New for constructors in specific install section.
+       (__map_data_section): Map data sections before running constructors.
+       * config/m68hc11/m68hc11.h (INT_ASM_OP): Define to use .word.
+       (CTORS_SECTION_ASM_OP): Define to put in readonly section.
+       (DTORS_SECTION_ASM_OP): Likewise.
+       (CTORS_SECTION_FUNCTION): Define to force a reference to
+       __do_global_ctors.
+       (DTORS_SECTION_FUNCTION): Likewise for __do_global_dtors.
+
+2001-08-03  Daniel Berlin  <dan@cgsoftware.com>
+        
+       * ChangeLog: Fix date on previous ChangeLog entry for GCSE.
+       
+       * Makefile.in: Add df.h to gcse.c dependencies.
+
+2001-08-03  John David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * varasm.c (output_constant_def_contents): Use for the length of a
+       string constant either its TREE_STRING_LENGTH or its int_size_in_bytes
+       depending on which is larger.
+
+2001-08-03  Daniel Berlin  <dan@cgsoftware.com>
+
+        * gcse.c: Include df.h for use as a dataflow analyzer.
+        Remove regvec.
+        Declaration of reg_set_info: gone.
+        New df_analyzer variable used by store motion.
+        (reg_set_info): Deleted.
+        (mark_mem_regs): New function, analyze regs used by a mem.
+        (store_ops_ok): Use dataflow analyzer results to determine if
+        necessary regs are changed in the block.
+        (find_moveable_store): Remove check for symbol ref, we can handle
+        much more complex expressions now.
+        (compute_store_table): Remove most of the code, it's unnecessary
+        now that the dataflow analyzer records the info for us.
+        (store_killed_after): Add parameter to say whether to do the
+        store_ops_okay test, used to speed up testing when we already know
+        the answer, and just want to know if the store itself was killed.
+        (build_store_vector): Largely rewritten to calculate the various
+        vectors properly, and somewhat optimized.
+        (store_motion): Init the df_analyzer, get REG_DEF chains. 
+        Also handle trapping expressions (since mems almost always trap)
+        (simple_mem): Redefine what a simple mem is.
+
+2001-08-03  DJ Delorie  <dj@redhat.com>
+
+       * ifcvt.c (noce_get_alt_condition): Don't make an auxiliary
+       set from a constant part of the condition.
+
+2001-08-01  Andrew Cagney  <ac131313@redhat.com>
+
+       * mkdeps.c (deps_add_default_target): Make local variable
+       ``start'' a const char pointer.
+       * dwarf2out.c (compute_section_prefix): Localize use of ``p''.
+
+2001-08-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * doc/install.texi (Configuration): Fix markup.
+       (Specific, i?86-*-udk): Likewise.
+       (Specific, alpha*-dec-osf*): Warn against --with-gnu-as,
+       --with-gnu-ld. 
+       Document --enable-threads and --enable-libgcj status.
+       (Specific, mips-sgi-irix*): Canonicalize triples.
+       (Specific, mips-sgi-irix5): Warn about problems with this config.
+       Mention required GNU as patch.
+       Native assembler problems are fixed.
+       (Specific, mips-sgi-irix6): Update O32 ABI support status.
+       Document --enable-threads and --enable-libgcj status.
+
+2001-08-02  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * Makefile.in, mklibgcc.in: Restore changes with fixed invocation
+       of mkinstalldirs.
+
+2001-08-03  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/sysv4.h (ASM_OUTPUT_LABELREF): Don't write to
+       constant data.
+
+2001-08-03  Richard Henderson  <rth@redhat.com>
+
+       * rtlanal.c (find_first_parameter_load): Stop if we
+       reach a CODE_LABEL at BOUNDARY.
+
+2001-08-03  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.md (force_movdi): New insn.
+       * config/alpha/alpha.c (alpha_expand_prologue): Use it.
+       Tweek FRP marking of VMS prologue insns.
+       * config/alpha/vms.h (EPILOGUE_USES): New.
+
+2001-08-02  Richard Henderson  <rth@redhat.com>
+
+       * Makefile.in, mklibgcc.in: Revert mkinstalldirs change.
+
+2001-08-02  Lars Brinkhoff  <lars@nocrew.org>
+
+       * combine.c, config.gcc, cse.c, defaults.h, real.c, reload.c,
+       simplify-rtx.c, config/alpha/alpha.h, config/avr/avr.h,
+       config/convex/convex.h, config/d30v/d30v.c,
+       config/d30v/d30v.h, config/dsp16xx/dsp16xx.h,
+       config/elxsi/elxsi.h, config/fr30/fr30.h, config/m88k/m88k.c,
+       config/mips/mips.h, config/mn10200/mn10200.h,
+       config/mn10300/mn10300.h, config/pdp11/pdp11.md,
+       config/v850/v850.h, config/vax/openbsd.h,
+       config/vax/openbsd1.h, config/vax/ultrix.h,
+       config/vax/vax-protos.h, config/vax/vax.c, config/vax/vax.h,
+       config/vax/vax.md, config/vax/vaxv.h, config/vax/xm-vms.h,
+       cp/decl2.c, doc/contrib.texi, doc/cpp.texi, doc/gcc.texi,
+       doc/install.texi, doc/invoke.texi, doc/md.texi, doc/rtl.texi,
+       doc/tm.texi: consistently use "VAX", "VAXen", and "MicroVAX"
+        in comments and documentation.
+
+2001-08-03  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
+
+       * line-map.c: New.
+       * line-map.h: New.
+       * Makefile.in (line-map.o): New.
+       (LIBCPP_OBJS, LIBCPP_DEPS): Update.
+       * c-lex.c (cb_file_change): Update for new cpp_file_change structure.
+       * cpperror.c (print_containing_files): Similarly.
+       (print_location): Update.  Don't output a space before _Pragma.
+       * cppfiles.c (stack_include_file): Set to line 1 immediately.
+       (stack_include_filee, cpp_make_system_header): Update.
+       (_cpp_execute_include): Get logical line number right for calling
+       as-yet-unterminated #include.
+       * cpphash.h (struct cpp_reader): Add line_maps.
+       (_cpp_do_file_change): Update.
+       * cppinit.c (cpp_create_reader): Initialize line maps.
+       (cpp_destroy): Destroy line maps.
+       (cpp_start_read): Get logical line number right.
+       * cpplex.c (parse_string): Only warn once for multi-line strings.
+       Use boolean variable for null warning.
+       * cpplib.c (_cpp_handle_directive): End the directive if it isn't
+       already.
+       (do_include_common): End the directive early.
+       (do_line): Don't warn about out-of-range lines in preprocessed
+       source.  Update.  Remove unused variables.
+       (_cpp_do_file_change): Update for new line mapping.
+       (pragma_cb): New typedef.
+       (cpp_register_pragma): Stop looking ahead before calling the
+       handler.  Clean up.
+       (do_pragma_system_header): End directive early.
+       (cpp_get_line_maps): New.
+       (cpp_pop_buffer): Fudge logical line.  Update.
+       * cpplib.h: Include line-map.h
+       (enum cpp_fc_reason): Remove.
+       (struct cpp_file_change): Update.
+       (cpp_get_line_maps): New.
+       * cppmain.c (struct_printer): New member map.
+       (cb_file_change): Update for new mappings.
+       * fix-header.c (cb_file_change): Similarly.
+
+2001-08-02  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * Makefile.in (libgcc.mk): Define mkinstalldirs.
+       * mklibgcc.in: Use mkinstalldirs instead of mkdir.
+
+2001-08-02  Lars Brinkhoff  <lars@nocrew.org>
+
+       * config/vax/vax.c: include expr.h.
+
+2001-08-02  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * Makefile.in ($(srcdir)/configure): Only rebuild in
+       maintainer mode.
+       ($(srcdir)/config.in): Only define in maintainer mode.
+       ($(srcdir)/cstamp-h.in): Only define in maintainer mode.
+
+2001-08-02  David Edelsohn  <edelsohn@gnu.org>
+
+       * doc/install.texi (Install GCC: Binaries): Update Bull info.
+
+2001-08-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * gcc.c (set_collect_gcc_options): New function, split out from
+       main.
+       Ignore elided switches.
+       (do_spec_1): Invoke before executing command.
+       (set_input): Export.
+       Move declaration ...
+       * gcc.h (set_input): ... here.
+       * config/alpha/osf.h (ASM_FINAL_SPEC): Use %U.s to refer to input
+       file.
+
+2001-08-02  Nathan Sidwell  <nathan@codesourcery.com>
+
+       Kill -fhonor-std.
+       * doc/c-tree.texi (Namespaces): Remove std & -fhonor-std
+       interaction.
+       * doc/invoke.texi (C++ Dialect Options): Remove -fno-honor-std.
+
+2001-08-02  Richard Sandiford  <rsandifo@redhat.com>
+
+       * mips.md (movdicc): Make conditional on TARGET_64BIT.  Likewise
+       for the unnamed instructions it expands to.
+
+2001-08-02  Richard Henderson  <rth@redhat.com>
+
+       * regclass.c (call_really_used_regs): Conditionally define.
+       (init_reg_sets_1): Don't use it if not defined.
+       (fix_register): Similarly, don't set it.
+
+2001-08-01  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * params.def (PARAM_MAX_INLINE_INSNS): Change default to 600.
+       Correct comment that had been missed in the previous change.
+
+2001-08-01  Stan Shebs  <shebs@apple.com>
+
+       * config/darwin.c (machopic_stub_name): Try matching by name.
+       (update_stubs): New function.
+       (darwin_encode_section_info):  Call it and update_non_lazy_ptrs
+       unconditionally.
+
+2001-08-01  Richard Henderson  <rth@redhat.com>
+
+       * except.c (output_function_exception_table): Use assemble_align.
+       * varasm.c (assemble_eh_label): Remove.
+       (assemble_eh_align, assemble_eh_integer): Remove.
+
+2001-08-01  Robert Lipe  <robertl@caldera.com>
+
+        * dwarfout.c: Remove reference to README.DWARF.
+
+2001-08-01  Andrew MacLeod  <amacleod@redhat.com>
+
+       * regclass.c (call_really_used_regs): New array for registers which
+       are actually used by a call.
+       (init_reg_sets_1): Initialize regs_invalidated_by_call with the
+       new array.
+       (fix_register): Set call_really_used too.
+       * config/ia64/ia64.h (CALL_REALLY_USED_REGISTERS): Initialize.
+       * doc/tm.texi (CALL_REALLY_USED_REGISTERS): Document.
+
+2001-08-01  Richard Henderson  <rth@redhat.com>
+
+       * read-rtl.c (read_name): Consider \r whitespace.
+
+2001-07-11  Andrew Cagney  <ac131313@redhat.com>
+
+       * config.gcc: Recognize powerpc-*-netbsd*.
+       
+       * doc/install.texi (Host/target specific installation notes for
+       GCC): Mention powerpc-*-netbsd*.
+
+       * config/rs6000/netbsd.h: New file.
+       (STANDARD_STARTFILE_PREFIX, LINK_SHLIB_SPEC): Redefine.
+       (LIB_DEFAULT_SPEC, STARTFILE_DEFAULT_SPEC): Redefine.
+       (ENDFILE_DEFAULT_SPEC, LINK_START_DEFAULT_SPEC): Redefine.
+       (LINK_OS_DEFAULT_SPEC, CPP_OS_DEFAULT_SPEC): Redefine.
+       (TARGET_VERSION): Redefine.
+
+       * config/rs6000/t-ppccomm (MULTILIB_MATCHES_SYSV): Recognize
+       mcall-netbsd as a match for mcall-sysv.
+       (EXTRA_MULTILIB_PARTS): Add ncrti$(objext) and ncrtn$(objext).
+       (ncrti.S, ncrtn.S): New targets.
+       ($(T)ncrti$(objext), $(T)ncrtn$(objext)): New targets.
+       
+       * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Recognize
+       "netbsd' as a V4 ABI.
+       (ASM_SPEC): Check for -mcall-netbsd.
+       (CC1_SPEC, CC1_SPEC, LINK_START_SPEC, LINK_OS_SPEC): Ditto.
+       (CPP_ENDIAN_SPEC, CPP_SPEC, STARTFILE_SPEC): Ditto.
+       (LIB_SPEC, ENDFILE_SPEC): Ditto.
+       (LIB_NETBSD_SPEC, STARTFILE_NETBSD_SPEC): Define.
+       (ENDFILE_NETBSD_SPEC, LINK_START_NETBSD_SPEC): Define.
+       (LINK_OS_NETBSD_SPEC, CPP_OS_NETBSD_SPEC): Define.
+       (SUBTARGET_EXTRA_SPECS): Add NetBSD specs.
+
+       * doc/invoke.texi (Option Summary): Add -mcall-netbsd.
+       (RS/6000 and PowerPC Options): Mention -mcall-netbsd.
+
+2001-08-01  Mark Kettenis  <kettenis@gnu.org>
+
+       * unwind-pe.h (base_of_encoded_value, read_encoded_value): Define
+       only if NO_BASE_OF_ENCODED_VALUE isn't defined.
+       * unwind-dw2-fde.c (NO_BASE_OF_ENCODED_VALUE): Define before
+       including "unwind-pe.h".
+
+Wed Aug  1 20:01:42 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * rs6000.md (define_splits): Kill unused constraints.
+
+Wed Aug  1 20:02:12 CEST 2001 Graham Stott  <grahams@redhat.com>
+                             Jan Hubicka  <jh@suse.cz>
+
+       * function.c (thread_prologue_and_epilogue_insns): Kill code
+       dealing with non-existent CFG.
+
+2001-08-01  Kazu Hirata  <kazu@hxi.com>
+
+       * alias.c: Fix comment formatting.
+       * bitmap.c: Likewise.
+       * builtins.c: Likewise.
+       * calls.c: Likewise.
+       * c-common.c: Likewise.
+       * c-decl.c: Likewise.
+       * c-dump.c: Likewise.
+       * c-lex.c: Likewise.
+       * collect2.c: Likewise.
+       * combine.c: Likewise.
+       * conflict.c: Likewise.
+       * cppfiles.c: Likewise.
+       * cppinit.c: Likewise.
+       * cpplex.c: Likewise.
+       * cpplib.c: Likewise.
+       * cppmacro.c: Likewise.
+       * cppspec.c: Likewise.
+       * c-pragma.c: Likewise.
+       * crtstuff.c: Likewise.
+       * cse.c: Likewise.
+       * cselib.c: Likewise.
+       * c-semantics.c: Likewise.
+       * c-typeck.c: Likewise.
+
+2001-08-01  H.J. Lu <hjl@gnu.org>
+
+       * config/mips/linux.h (ASM_OUTPUT_IDENT): Defined.
+
+2001-08-01  H.J. Lu <hjl@gnu.org>
+
+       * gcc/config/mips/linux.h (ASM_OUTPUT_SOURCE_LINE): Defined.
+
+2001-08-01  Ziemowit Laski  <zlaski@apple.com>
+
+        * c-parse.in (OBJC_NEED_RAW_IDENTIFIER): Define macro and flag for
+       contextualizing Objective-C class name lookup by the lexer.
+       (typespec_reserved_nonattr): Disable ObjC class name lookup after
+       seeing a TYPESPEC.
+       (protocoldef): Add support for forward @protocol declarations.
+       (yylexname): Suppress ObjC class name lookup in certain contexts;
+       re-enable after lookup is complete.
+       (_yylex): Re-enable ObjC class name lookup when certain
+       punctuation marks are seen.
+
+       * objc/objc-act.c (check_protocol_recursively): New function used
+       for finding circular dependencies in protocols.
+       (objc_declare_protocols): New function for handling forward
+       @protocol declarations.
+       (receiver_is_class_object): Detect the case when 'self' is used
+       inside of a class method.
+       (build_message_expr): Issue a warning if class method is desired
+       but instance method is found instead.
+       (conforms_to_protocol): Streamline.
+       (objc_comptypes): Detect the fact that 'Bar<Foo> foo' conforms to
+       protocol Foo, even if 'Bar foo' does not.
+       (check_protocols): Streamline.
+       (start_protocol): Add checks for circular and duplicate protocol
+       definitions.
+       (encode_aggregate_within): For typedefs of structs, encode the
+       underlying struct.
+       * objc/objc-act.h (PROTOCOL_DEFINED): New tree accessor.
+       (objc_declare_protocols): New prototype.
+
+2001-08-01  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
+
+       * cpphash.h (struct cpp_reader): New members line, pseudo_newlines.
+       * cpplex.c (handle_newline): Update prototype.  Maintain logical
+       line number.
+       (skip_escaped_newlines, skip_block_comment, parse_string):
+       Update accordingly.
+       (_cpp_lex_token): Update, and store token position within the token.
+       * cpplib.h (struct cpp_token): Add line and column entries.
+       * cppmacro.c (replace_args): Position stringified tokens correctly.
+
+2001-08-01  Andreas Jaeger  <aj@suse.de>
+
+       * basic-block.h: Add prototype for last_loop_beg_note.
+
+2001-07-31  Alexandre Petit-Bianco  <apbianco@redhat.com>
+
+       * expr.c (safe_from_p): Use WITH_CLEANUP_EXPR_RTL instead of
+       RTL_EXPR_RTL while handling WITH_CLEANUP_EXPR nodes. Fixed typo in
+       comment.
+       (expand_expr): Use WITH_CLEANUP_EXPR_RTL instead of RTL_EXPR_RTL
+       while handling WITH_CLEANUP_EXPR node. Use second operand calling
+       expand_decl_cleanup.
+       * tree.c (firt_rtl_op): The third operand of WITH_CLEANUP_EXPR is
+       the first RTX.
+       (simple_cst_equal): WITH_CLEANUP_EXPR node to use its second
+       operand while calling simple_cst_equal.
+       * tree.def (WITH_CLEANUP_EXPR): Switched operands: the second
+       operand is the cleanup expression, the third is the RTL_EXPR.
+       * tree.h (WITH_CLEANUP_EXPR_RTL): New macro.
+
+2001-07-31  Jeff Sturm  <jsturm@one-point.com>
+
+        * except.c (duplicate_eh_regions): Test n_array[i] for NULL.
+
+2001-07-31  matthew green  <mrg@eterna.com.au>
+
+       * config.gcc (i386-*-netbsdelf): New description.
+       * config/i386/netbsd-elf.h: New file.
+
+2001-07-30  Geoffrey Keating  <geoffk@redhat.com>
+
+       * loop.c (check_dbra_loop): Use single_set to compute
+       jump_label.
+
+2001-07-31  Daniel Berlin  <dan@cgsoftware.com>
+
+       PowerPC reorg and support for powerpc64-*-linux*.
+
+       Also fixes emitting of constants on 32 bit and 64 bit
+       platforms.
+
+       * config.gcc: powerpc64-*-linux* is a new target.
+       Things that needed aix.h now also include xcoff.h
+
+       * config/rs6000/rs6000.h: Split XCOFF specific stuff into
+       xcoff.h.
+       Move AIX specific stuff into aix.h.
+       (TARGET_AIX): Renamed to TARGET_XCOFF, since the AIX ABI is used
+       with more than just XCOFF now.
+       (SET_ASM_OP): Remove, now defined where needed.
+       (FUNCTION_PROLOGUE): New macro definition.
+       (FUNCTION_EPILOGUE): New macro definition.
+       (CONST_OK_FOR_LETTER_P): Change N to require that value is
+       positive, too.
+       (ASM_OPEN_PAREN, ASM_CLOSE_PAREN): New macro definition.
+
+       * config/rs6000/xcoff.h: New file.
+
+       * config/rs6000/linux64.h: New file.
+
+       * config/rs6000/darwin.h: Copy needed AIX alignment definitions.
+
+2001-07-31  Alan Modra  <amodra@bigpond.net.au>
+
+       * rs6000.c (print_operand_address): Handle ELF syntax.
+       (output_toc): Simplify.  Use DOUBLE_INT_ASM_OP.
+       * rs6000.md (load_toc_aix_di): Handle ELF syntax.
+       * rs6000.h (ASM_OUTPUT_DOUBLE_INT, ASM_LONG): Use DOUBLE_INT_ASM_OP.
+
+2001-07-31  David Edelsohn  <edelsohn@gnu.org>
+
+       * rs6000.c (rs6000_override_options): Only disable
+       flag_function_sections for XCOFF.
+       (exact_log2_cint_operand): New predicate.
+       (reg_or_{add,sub}_cint64_operand): New predicates.
+       (add_operand): Compare CONST_INT with fewer function calls.
+       (rs6000_emit_set_const, rs6000_emit_set_long_const): New functions.
+       (print_operand, case 'p'): Ensure positive operand.
+       (rs6000_emit_load_toc_table): No load_toc_v4_pic_di.
+       * rs6000.h (CONST_OK_FOR_LETTER_P, case 'N'): Ensure positive value.
+       (PREDICATE_CODES): Add new predicates.
+       * rs6000.md (addsi3): Split 32-bit constants more correctly.
+       (divsi3, modsi3): Ensure positive power-of-2.
+       (adddi3): Use new predicate.  Split 32-bit constants more
+       correctly.  Re-arrange splitter to handle any constant.
+       (subdi3): Use new predicate.
+       (divdi3, moddi3): Ensure positive power-of-2.
+       (movdi): Use rs6000_emit_set_const.
+       (load_toc_v4_pic_di): Delete.
+
+2001-07-31  Graham Stott <grahams@redhat.com>
+
+       * function.c (pad_below): Revert 2001-07-26 patch.
+
+Tue Jul 31 15:37:35 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * reg-stack (convert_regs_1): Fix best edge condition.
+
+Tue Jul 31 15:33:27 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * jump.c (duplicate_loop_exit_test): Better test for jumps
+       entering the loop; create loop pre_header.
+
+2001-07-31 Hartmut Penner <hpenner@de.ibm.com>
+
+        * doc/install.texi: Add s390 and s390x as new targets.
+        * doc/invoke.texi: Add documantation of S/390 and zSeries
+        target options.
+        * doc/md.texi: Add documantation of S/390 and zSeries constraints.
+
+2001-07-30  Roman Zippel  <zippel@linux-m68k.org>
+
+       * config/m68k/m68k.md: Replace all general_operand with
+       nonimmediate_operand for all destinations.
+       * config/m68k/m68k.c (not_sp_operand): Likewise.
+
+Mon Jul 30 23:20:34 EDT 2001  John Wehle  (john@feith.com)
+
+        * flow.c (merge_blocks): Return 1 if an extra jump is inserted.
+
+2001-07-30  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/ia64.h (DEBUG_RANGES_SECTION): New.
+       * config/mips/iris6.h (DEBUG_RANGES_SECTION): New.
+
+2001-07-30  Roman Zippel  <zippel@linux-m68k.org>
+
+       * config/m68k/m68k.h (TARGET_SWITCHES/TARGET_OPTIONS):
+       Add missing doc strings
+       * config/m68k/linux-aout.h (SUBTARGET_SWITCHES): Likewise
+       * config/m68k/linux.h (SUBTARGET_SWITCHES): Likewise
+
+Mon Jul 30 22:16:08 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (ix86_output_main_function_alignment_hack): New function.
+       (TARGET_ASM_FUNCTION_PROLOGUE): Default to it.
+
+       * flow.c (mark_dfs_back_edges): Move from loop_p ; mark back
+       edges by EDGE_DFS_BACK flag.
+       (dump_edge_info): Add dfs_back flag.
+       * basic-block.h (EDGE_DFS_BACK): New constant.
+       (mark_dfs_back_edges): Declare.
+       * alias.c (loop_p): Remove.
+       (mark_constant_function): Use mark_dfs_back_edges.
+
+       * reg-stack.c (block_info_def): Add predecesors counter and stack_out.
+       (reg_to_stack): Call mark_dfs_back_edges; count the predecesors.
+       (compensate_edge): Break out from ...
+       (convert_regs_1): ... here; do smart choosing of stack_out to copy.
+       (convert_regs_2): Set block_done once block is really done;
+       Do updating of the predecesors counts.
+
+       * toplev.c (rest_of_compilation): Recompute block_for_insn
+       before post-reload cfg_cleanup.
+       * function.c (thread_prologue_epilogue_insns):
+       Call set_block_for_new_insns when emitting prologue directly.
+
+2001-07-30  Andreas Jaeger  <aj@suse.de>
+
+        * jump.c: Add prototype for mark_modified_reg.
+
+        * cse.c (set_live_p): Add unused attribute.
+
+        * gcov.c (calculate_branch_probs): Use gcov_type to avoid
+        overflow.
+        (scan_for_source_files): Use long for count to avoid overflow.
+        (output_data): Likewise.
+        (output_data): Don't use string concatatenation to silence gcc
+        -traditional.
+
+        * predict.c: Fix typos and grammar.
+
+       * gcse.c (insert_insn_end_bb): Remove unused variables.
+
+Mon Jul 30 21:54:53 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * flow.c (mark_set_1): Use REG_FREQ_FROM_BB.
+       (attempt_auto_inc): LIkewise.
+       (mark_used_reg): Likewise.
+       (try_pre_increment_1): Likewise.
+       * regclass.c (regclass): Likewise.
+       * global.c (allocno_compare): Update comment; change scaling factor.
+       * local-alloc.c (QTY_CMP_PRI): Likewise.
+       * regs.h (REG_FREQ_FROM_BB): New.
+       (REG_FREQ_MAX): Likewise.
+
+2001-07-30  H.J. Lu <hjl@gnu.org>
+
+       * config/mips/linux.h (CPLUSPLUS_CPP_SPEC): Add
+       -D_GNU_SOURCE.
+
+2001-07-30  H.J. Lu  (hjl@gnu.org)
+
+       * config/mips/linux.h (ASM_DECLARE_FUNCTION_NAME): Defined.
+       (ASM_DECLARE_FUNCTION_SIZE): Likewise.
+       (FUNCTION_NAME_ALREADY_DECLARED): Likewise.
+
+2001-07-30  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * config/arm/t-arm-elf (MULTILIB_EXCEPTIONS): Skip -mthumb as well
+       as -mthumb-interwork when -mcpu=arm7 is specified.
+
+Mon Jul 30 17:44:43 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * predict.def (noreturn, loop branch, loop exit): Mark as first
+       match heuristics.
+
+Mon Jul 30 12:52:11 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * combine.c (try_combine): Avoid barrier after noop jumps.
+
+2001-07-29  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
+
+       * cpphash.h (struct cpp_reader): Remove import_warning.
+       * cpplib.c (skip_rest_of_line): Don't bother turning off
+       macro expansion.
+       (parse_include): Move include handling to...
+       (do_include_common): ... here.  Move import warning from...
+       (do_import): ... here.
+       (do_pragma_poison): Don't do a callback for poison identifiers.
+       * cpplib.h (struct cpp_callbacks): Don't do poison callbacks.
+       * cppmain.c (setup_callbacks): Similarly.
+
+Sun Jul 29 23:26:50 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * rtlanal.c (parms_set, find_first_parameter_load): Break out from...;
+       handle multiple sets.
+       * except.c (sjlj_mark_call_sites): .... here.
+       * gcse.c (insert_insn_end_bb): Use find_first_parameter_load.
+
+Sun Jul 29 21:38:45 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       Suggested by Richard Henderson and Richard Kenner:
+       * combine.c (recog_for_combine): Use the fake recog
+       only if instruction does not match.
+       * rtl.h (NOOP_MOVE_INSN_CODE): New.
+       * rtlanal.c (noop_move_p): Always return 1 for NOOP_MOVE_INSN_CODE.
+
+       * combine.c (try_combine): Discover noop jump as direct jump.
+
+2001-07-29  Daniel Berlin  <dan@cgsoftware.com>
+
+       * df.c (df_rd_global_compute): Add successors to worklist, not
+       current item.
+       (df_ru_global_compute): Ditto.
+
+2001-07-27  Daniel Berlin  <dan@cgsoftware.com>
+
+       * regclass.c (reg_scan_mark_refs): Increment REG_N_REFS when we
+       increment REG_N_SETS.
+
+2001-07-26  Daniel Berlin  <dan@cgsoftware.com>
+
+       * sbitmap.h: New prototype for sbitmap_a_xor_b.
+
+       * sbitmap.c (sbitmap_a_xor_b): New function.
+       ifdef the basic block stuff on IN_GCC.
+
+2001-07-29  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
+
+       * cppexp.c (parse_defined): Always record the macro name.
+       (lex): Don't worry about identifiers, or special-case
+       CPP_NOT here.
+       (_cpp_parse_expr): Figure out at the end of the routine
+       whether we saw a valid !defined() expression.
+       * cppfiles.c (stack_include_file): Update for mi_valid.
+       (_cpp_pop_file_buffer): Similarly.
+       * cpplex.c (_cpp_lex_token): Similarly.
+       * cpphash.h (enum mi_state, enum mi_ind, mi_state,
+       mi_if_not_defined, mi_lexed): Remove.
+       (mi_valid): New.
+       * cpplib.c (do_if): Simplify.
+       (do_endif, push_conditional, _cpp_handle_directive): Update
+       for renaming of mi_state to mi_valid.
+doc:
+       * cpp.texi: Add index entries for digraphs, and add comment
+       that C++ refers to them as alternative tokens.
+
+Sun Jul 29 18:59:13 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * basic-block.h (CLEANUP_PRE_LOOP): New.
+       * except.c (finish_eh_generation): Update call of cleanup_cfg.
+       * sibcall.c (optimize_sibling_calls): Likewise.
+       * toplev.c (rest_of_compilation): Likewise.
+       * flow.c (try_forward_edges): Take argument MODE;
+       do not forward over loop pre-headers if CLEANUP_PRE_LOOP.
+       (try_optimize_cfg): Update call of try_forward_edges.
+
+Sun Jul 29 18:59:56 CEST 2001  Roman Zippel  <zippel@linux-m68k.org>
+                              Jan Hubicka  <jh@suse.cz>
+
+       * (validate_replace_rtx_1): Fix simplification of MINUS.
+
+2001-07-29  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       PR preprocessor/3669
+       * cppinit.c (init_dependency_output): Turn off dump requests
+       if sending dependencies to stdout.
+
+2001-07-28  Richard Henderson  <rth@redhat.com>
+
+       * flow.c (life_analysis): Elide PROP_ALLOW_CFG_CHANGES if
+       not optimizing.
+
+2001-07-28  Golubev I. N.  <gin@mo.msk.ru>
+
+       * config/i386/sco5.h (DWARF2_DEBUGGING_INFO): Define.
+
+2001-07-28  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300.h (ENCODE_SECTION_INFO): Check to see if DECL
+       is VAR_DECL first to prevent an ICE.
+
 2001-07-28  Richard Henderson  <rth@redhat.com>
 
        * varasm.c (immed_real_const_1): Don't elide special cases for
@@ -154,7 +1178,7 @@ Thu Jul 26 14:04:03 EDT 2001  John Wehle  (john@feith.com)
 
 2001-07-26  Andrew MacLeod  <amacleod@redhat.com>
 
-       * params.def (PARAM_MAX_PENDING_LIST_LENGTH): Add parameter to 
+       * params.def (PARAM_MAX_PENDING_LIST_LENGTH): Add parameter to
        limit length of dependancy flush list.
        * params.h (MAX_PENDING_LIST_LENGTH): Define.
        * sched-int.h  (struct deps): Add pending_flush_length field.
@@ -214,7 +1238,7 @@ Wed Jul 25 18:00:05 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
        * config/alpha/alpha.c (print_operand, case '/'): Don't write '/'.
 
        * dbxout.c: Consistently use putc instead of fputc.
-       (print_wide_int): New function; call instead of direct fprintf.
+       (print_wide_int): New function; call instead of direct fprintf.
        (dbxout_type_index): Adjust calls of CHARS to be more accurate.
        (dbxout_type_fields, dbxout_type_method_1): Likewise.
        (dbxout_type_methods, dbxout_range_type, dbxout_type): Likewise.
@@ -251,7 +1275,7 @@ Wed Jul 25 22:48:59 CEST 2001  Jan Hubicka  <jh@suse.cz>
 
 Wed Jul 25 08:25:01 2001  Jeffrey A Law  (law@cygnus.com)
 
-       * ssa.c (rename_insn_1): Do not wrap an assignment to a 
+       * ssa.c (rename_insn_1): Do not wrap an assignment to a
        paradoxical SUBREG inside a SEQUENCE.  Fix minor formatting
        glitch.
 
@@ -293,8 +1317,8 @@ Wed Jul 25 08:25:01 2001  Jeffrey A Law  (law@cygnus.com)
         * config/sparc/rtems.h (CPP_PREDEFINES): Remove redundant
        -Acpu and -Amachine.h.
         * config/sparc/rtemself.h (CPP_PREDEFINES): Likewise.
-        Corrected header to say ELF not a.out. 
-        * config/sparc/sparc.h (CPP_CPU_SPEC): Define _SOFT_FLOAT 
+        Corrected header to say ELF not a.out.
+        * config/sparc/sparc.h (CPP_CPU_SPEC): Define _SOFT_FLOAT
        when given -msoft-float.
 
 2001-07-24  Joel Sherrill <joel@OARcorp.com>
@@ -414,7 +1438,7 @@ Tue Jul 24 10:49:40 CEST 2001  Jan Hubicka  <jh@suse.cz>
 
        * config/h8300/h8300-protos.h: Add a prototype for
        general_operand_dst_push.
-       * config/h8300/h8300.c (general_operand_dst_push): New.
+       * config/h8300/h8300.c (general_operand_dst_push): New.
        * config/h8300/h8300.h (OK_FOR_T): New.
        (EXTRA_CONSTRAINT): Use it.
        * config/h8300/h8300.md (movqi_push): Remove and integrate into
@@ -514,7 +1538,7 @@ Mon Jul 23 16:03:19 CEST 2001  Jan Hubicka  <jh@suse.cz>
        (flow_find_cross_jump): Likewise.
        (outgoing_edges_match): Allow match if neither branch has
        probability data.  Loosen probability match to 5%.
-       (try_crossjump_to_edge): Hoist repeated indirection into 
+       (try_crossjump_to_edge): Hoist repeated indirection into
        local variables.
        (try_crossjump_bb): Don't check complex edges.  Eliminate
        redundant crossjump tests.
@@ -659,7 +1683,7 @@ Sun Jul 22 21:31:04 CEST 2001  Jan Hubicka  <jh@suse.cz>
        ("*addhi3"): Fix constraint to avoid reloading in a soft register.
        ("*subhi3_sp): Likewise.
        ("*subhi3"): Likewise.
-       ("extendhisi2"): Accept D, X and Y as source operand to avoid 
+       ("extendhisi2"): Accept D, X and Y as source operand to avoid
        reload problems.
 
 2001-07-21  Nathan Sidwell  <nathan@codesourcery.com>
@@ -712,7 +1736,7 @@ Fri Jul 20 21:59:42 CEST 2001  Jan Hubicka  <jh@suse.cz>
 2001-07-20  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
 
        * config/m68hc11/m68hc11.md ("movdi", "movdi_internal"): Use an
-       expand to emit the pattern; put a REG_INC note for push/pop 
+       expand to emit the pattern; put a REG_INC note for push/pop
        instructions.
        ("movdf", "movdf_internal"): Likewise.
        ("movsi", "movsi_internal"): Likewise.
@@ -799,7 +1823,7 @@ Fri Jul 20 13:24:16 CEST 2001  Jan Hubicka  <jh@suse.cz>
        pointer extension instruction.
        * combine.c (nonzero_bits,num_sign_bit_copies) Likewise.
        * simplify-rtx.c (simplify_unary_operation) Likewise.
-       * explow.c (convert_memory_address) Check value of 
+       * explow.c (convert_memory_address) Check value of
        POINTERS_EXTEND_UNSIGNED to avoid some conversions when
        less than zero.
        * config/ia64/t-hpux (LIBGCC, INSTALL_LIBGCC, MULTILIB_OPTIONS,
@@ -860,7 +1884,7 @@ Fri Jul 20 13:24:16 CEST 2001  Jan Hubicka  <jh@suse.cz>
 
 2001-07-19  Catherine Moore  <clm@cygnus.com>
 
-       * config/v850/v850.h (ASM_OUTPUT_LABELREF): Restore. 
+       * config/v850/v850.h (ASM_OUTPUT_LABELREF): Restore.
 
 2001-07-19  Geoffrey Keating  <geoffk@redhat.com>
 
@@ -998,7 +2022,7 @@ Wed Jul 18 12:05:29 2001  Nicola Pero  <n.pero@mi.flashnet.it>
        pthread_mutex_trylock because it returns a positive number on
        error, while we must return -1 on error.
        (__gthread_objc_mutex_lock, __gthread_objc_mutex_unlock): Similar
-       fixes.  
+       fixes.
        Reported by Stephen Brandon <stephen@brandonitconsulting.co.uk>.
 
 2001-07-18  Andreas Jaeger  <aj@suse.de>