OSDN Git Service

Wed Dec 23 00:10:01 1998 Jeffrey A Law (law@cygnus.com)
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 4963d59..0384fbc 100644 (file)
@@ -1,3 +1,720 @@
+Wed Dec 23 00:10:01 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * toplev.c (rest_of_compilation): Do not set reload_completed.
+       * reload1.c (reload): Set reload_completed before calling
+       cleanup_subreg_operands.
+
+Tue Dec 22 23:58:31 1998  Richard Henderson  <rth@cygnus.com>
+
+       * reload1.c (emit_reload_insns): Check `set' not null before use.
+
+Tue Dec 22 15:15:45 1998  Nick Clifton  <nickc@cygnus.com>
+
+       * rtlanal.c (multiple_sets): Change type of 'found' from 'rtx' to
+       'int'. 
+
+Tue Dec 22 13:55:44 1998  Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+
+       * halfpic.c (half_pic_encode): Delete redundant code.
+
+Tue Dec 22 13:02:22 1998  Michael Meissner  <meissner@cygnus.com>
+
+       * toplev.c (main): Delete handling of -dM as a preprocessor
+       option.
+
+Mon Dec 21 17:39:38 1998  Michael Meissner  <meissner@cygnus.com>
+
+       * toplev.c (main): Don't emit any warnings when using -dD, -dM, or
+       -dI, which are handled by the preprocessor.
+
+Sun Dec 20 16:13:44 1998  John F. Carr  <jfc@mit.edu>
+
+       * configure.in: Handle Digital UNIX 5.x the same as 4.x.
+       * i386/sol2.h: Define LOCAL_LABEL_PREFIX as ".".
+
+Sun Dec 20 07:39:52 PST 1998 Jeff Law  (law@cygnus.com)
+
+       * version.c: Bump for snapshot.
+
+Sat Dec 19 22:24:22 PST 1998 Jeff Law  (law@cygnus.com)
+
+       * version.c: Bump for snapshot.
+
+Sat Dec 19 21:41:32 PST 1998 Jeff Law  (law@cygnus.com)
+
+       * version.c: Bump for snapshot.
+
+Sat Dec 19 09:52:27 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * genattr.c (fatal): Qualify a char* with the `const' keyword.
+       
+       * genattrtab.c (fatal, attr_printf, attr_string, write_attr_set,
+       write_unit_name, write_eligible_delay, expand_units,
+       make_length_attrs, write_attr_case, find_attr,
+       make_internal_attr): Likewise.
+       * gencheck.c (tree_codes): Likewise.
+       * gencodes.c (fatal): Likewise.
+       * genconfig.c (fatal): Likewise.
+       * genemit.c (fatal): Likewise.
+       * genextract.c (fatal, walk_rtx, copystr): Likewise.
+       * genflags.c (fatal): Likewise.
+       * genopinit.c (fatal, optabs, gen_insn): Likewise.
+       * genoutput.c (fatal, error, predicates): Likewise.
+       * genpeep.c (fatal): Likewise.
+       * genrecog.c (fatal, decision, pred_table, add_to_sequence,
+       write_tree_1, write_tree, change_state, copystr, indents): Likewise.
+
+Thu Dec 17 18:21:49 1998  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * configure.in (with-fast-fixincludes): Fix whitespace.
+       * configure: Rebuilt.
+
+       * fixincludes (c_asm.h): Wrap Digital UNIX V4.0B DEC C specific
+       asm() etc. function declarations in __DECC.
+
+Thu Dec 17 13:57:23 1998  Nick Clifton  <nickc@cygnus.com>
+
+       * expr.c (emit_move_insn_1): Only emit a clobber if the target
+       is a pseudo register.
+
+Thu Dec 17 13:50:29 1998  Nick Clifton  <nickc@cygnus.com>
+
+       * gcse.c: Include expr.h in order to get the prototype for
+       get_condition() which is used in delete_null_pointer_checks(). 
+
+Thu Dec 17 15:58:26 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * hwint.h: New file to consolidate HOST_WIDE_INT (etc) macros.
+
+Thu Dec 17 12:31:12 1998  Jim Wilson  <wilson@cygnus.com>
+
+       * Makefile.in (INTERNAL_CFLAGS): Add SCHED_CFLAGS.
+       (ALL_CFLAGS): Delete SCHED_CFLAGS.
+
+1998-12-17  Vladimir N. Makarov  <vmakarov@cygnus.com>
+
+       * config/i60/i960.md (extendqihi2): Fix typo (usage ',' instead of
+       ';').
+
+1998-12-17  Michael Tiemann  <tiemann@axon.cygnus.com>
+
+       * i960.md (extend*, zero_extend*): Don't generate rtl that looks
+       like (subreg:SI (reg:SI N) 0), because it's wrong, and it hides
+       optimizations from the combiner.
+
+Thu Dec 17 08:27:03 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * loop.c (combine_givs_used_by_other): Don't depend on n_times_set.
+
+Wed Dec 16 17:30:35 1998  Nick Clifton  <nickc@cygnus.com>
+
+       * toplev.c (main): Disable optimize_size if a specific
+       optimization level is requested.  Always set optimization
+       level to 2 if -Os is specified.
+
+Wed Dec 16 16:33:04 1998  Dave Brolley  <brolley@cygnus.com>
+
+       * objc/lang-specs.h: Pass -MD, -MMD and -MG to cc1obj if configured with
+       cpplib.
+       * cpplib.c (cpp_start_read): If in_fname is not initialized, try to
+       initialize it using fname.
+
+1998-12-16  Zack Weinberg  <zack@rabi.phys.columbia.edu>
+
+       * cpplib.c (do_include): Treat #include_next in the
+       primary source file as #include plus warning.  Treat
+       #include_next in a file included by absolute path as an
+       error.  fp == CPP_NULL_BUFFER is a fatal inconsistency.
+
+Wed Dec 16 12:28:54 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * cccp.c: Don't define MIN/MAX anymore.
+       * cpplib.c: Likewise.
+       * machmode.h: Likewise.
+       * system.h: Provide definitions for MIN/MAX.
+
+Tue Dec 15 23:47:42 1998  Zack Weinberg  <zack@rabi.phys.columbia.edu>  
+
+       * fix-header.c: Don't define xstrdup here.
+
+Wed Dec 16 05:11:04 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * loop.c (consec_sets_giv): New argument last_consec_insn.
+       (strength_reduce): Provide / use it.
+
+Wed Dec 16 17:24:07 1998  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
+
+       * loop.h (loop_info): New field 'vtop'.
+       * loop.c (check_dbra_loop):  Use loop_info->vtop rather than
+       scanning loop for vtop.
+       * unroll.c (subtract_reg_term, find_common_reg_term): New functions.
+       (loop_iterations): Use them to determine if loop has a constant
+       number of iterations.  Set loop_info->vtop.  Don't subtract
+       common reg term from initial_value and final_value if have a
+       do-while loop.
+
+Tue Dec 15 13:49:55 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * mn10200.md (addsi3 expander): Use "nonmemory_operand" for operand 2.
+
+       * mn10300.md (bset, bclr): Operand 0 is a read/write operand.
+
+       * mn10200.md (abssf2, negsf2): New expanders.
+
+       * mn10300.md (absdf2, abssf2, negdf2, negsf2): New expanders.
+
+Tue Dec 15 11:55:30 1998  Nick Clifton  <nickc@cygnus.com>
+
+       * integrate.c (copy_rtx_and_substitute): If a SUBREG is
+       replaced by a CONCAT whoes components do not have the same
+       mode as the original SUBREG, use a new SUBREG to restore the
+       mode. 
+
+       * emit-rtl.c (subreg_realpart_p): Cope with subregs containing
+       multiword complex values.
+
+1998-12-15  Zack Weinberg  <zack@rabi.phys.columbia.edu>
+
+       * cppalloc.c: Add xstrdup here.
+       * cpplib.h: Remove savestring prototype.
+       * cpplib.c: Remove savestring function. s/savestring/xstrdup/
+         throughout. 
+       * cppfiles.c: s/savestring/xstrdup/ throughout.
+
+1998-12-15  Zack Weinberg  <zack@rabi.phys.columbia.edu>
+
+       * cpplib.c: Make all directive handlers read their own
+          arguments.
+         (struct directive): Remove last two arguments from FUNC
+          member prototype. Remove `command_reads_line' member
+          entirely.
+         (directive_table): Remove initializations of
+          command_reads_line flag.  Pretty-print.
+         (eval_if_expression, do_define, do_line, do_include,
+          do_undef, do_error, do_pragma, do_ident, do_if, do_xifdef,
+          do_else, do_elif, do_sccs, do_assert, do_unassert,
+          do_warning): Take only two args.
+
+         (cpp_define): Call do_define with two args and the text to
+         define stuffed into a buffer.
+         (make_assertion): Call do_assert with two args.
+         (handle_directive): Call do_line with two args. Call
+         kt->func with two args.  Remove command_reads_line
+         processing.
+         (do_define, do_undef, do_error, do_warning, do_pragma,
+         do_sccs): Read the rest of the line here.
+         (do_ident): Gobble rest of line, as cccp does.
+         (cpp_undef): New function.
+         (cpp_start_read): Call cpp_undef instead of do_undef.
+
+1998-12-15  Zack Weinberg  <zack@rabi.phys.columbia.edu>
+
+       * cpphash.h (union hash_value): Remove `keydef' member, add a
+          `struct hashnode *aschain' member for #assert.  
+
+         * cpplib.c (struct tokenlist_list, struct
+          assertion_hashnode): Delete structure definitions.
+          (assertion_install, assertion_lookup, delete_assertion,
+          check_assertion, compare_token_lists, reverse_token_list,
+          read_token_list, free_token_list): Delete functions.
+          (parse_assertion): New function.  
+         (cpp_cleanup): Don't destroy the assertion_hashtable.
+
+          (do_assert): Gut and rewrite.  #assert foo (bar) places
+          entries for `#foo' and `#foo(bar)' in the macro hash table,
+          type T_ASSERT.  The value union's `aschain' member is used
+          to chain all answers for a given predicate together.
+          (do_unassert): Also rewritten.  Take an un-asserted
+          answer off the chain from its predicate and call
+          delete_macro on the hashnode, or walk a predicate chain
+          calling delete_macro on all the entries.
+          (cpp_read_check_assertion): Simply call parse_assertion to
+          get the canonical assertion name, and look that up in the
+          hash table.
+
+       * cpplib.h (ASSERTION_HASHNODE,ASSERTION_HASHSIZE,assertion_hashtab):
+       Removed.
+
+       * cpphash.c (install): Use bcopy instead of an explicit loop
+          to copy the macro name.
+
+       * cppexp.c (cpp_lex): Convert the result of
+          cpp_read_check_assertion to a `struct operation' directly;
+          don't go through parse_number.
+
+Tue Dec 15 18:27:39 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * loop.h (struct induction): Delete times_used member.
+       * loop.c (n_times_set): Rename to set_in_loop.  Changed all users.
+       (n_times_used): Rename to n_times_set.  Changed all users.
+       (scan_loop): Free reg_single_usage before strength reduction.
+       (record_giv, combine_givs): Remove handling of times_used member.
+       (combine_givs_used_once): Rename to:
+       (combine_givs_used_by_other) .  Changed all callers.
+
+Tue Dec 15 01:45:26 1998  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * dwarf2out.c (gen_struct_or_union_type_die): Check AGGREGATE_TYPE_P
+       instead of TREE_CODE_CLASS == 't'.
+       (gen_type_die): Likewise.
+       (scope_die_for): Ignore FUNCTION_TYPE "scopes".
+
+Mon Dec 14 16:23:27 1998  Jim Wilson  <wilson@cygnus.com>
+
+       * real.c (endian): Disable last change unless
+       HOST_BITS_PER_WIDE_INT is greater than 32.
+
+Mon Dec 14 17:13:36 EST 1998  Andrew MacLeod  <amacleod@cygnus.com>
+
+       * output.h (force_data_section): New prototype.
+       * varasm.c (force_data_section): New function to force the
+       data section, regardless of what in_section thinks.
+       * dwarf2out.c (output_call_frame_info): Call force_data_section
+       since varasm may not realize we've changes sections.
+
+Mon Dec 14 14:09:34 1998  Nick Clifton  <nickc@cygnus.com>
+
+       * reload1.c (reload): Delete REG_RETVAL and REG_LIBCALL notes
+          after completeing reload.
+
+       * rtl.texi: Document that REG_RETVAL and REG_LIBCALL are
+          deleted after reload.
+
+Mon Dec 14 01:39:28 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * rtl.h (multiple_sets): Fix prototype.
+       * rtlanal.c (multiple_sets): Fix return type.
+
+Sun Dec 13 12:43:58 PST 1998 Jeff Law  (law@cygnus.com)
+
+       * version.c: Bump for snapshot.
+
+Sun Dec 13 01:05:22 PST 1998 Jeff Law  (law@cygnus.com)
+
+       * version.c: Bump for snapshot.
+
+1998-12-13  Manfred Hollstein  <manfred@s-direktnet.de>
+
+       * protoize.c (fputs): Wrap extern declaration in #ifndef fputs.
+
+Sun Dec 13 00:24:14 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * rtl.h (recompute_reg_usage): Add second argument.
+       * flow.c (recompute_reg_usage): Likewise.
+       * toplev.c (rest_of_compilation): Supply second argument to
+       recompute_reg_usage.
+
+       * reload1.c (compute_use_by_pseudos): Allow reg_renumber[regno] < 0
+       after reload.
+
+Sat Dec 12 23:39:10 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * m68k/t-m68kelf (MULTILIB_OPTIONS): Add mcpu32.
+       (MULTILIB_MATCHES): -m68332 now uses mcpu32 libraries, not m68000.
+       (MULTILIB_EXCEPTIONS): Don't build 68881 libraries for m68000,
+       mcpu32 or m5200.
+
+       * i386/next.h (ASM_OUTPUT_ALIGN): Use 0x90 for fill character.
+
+       * rtlanal.c (multiple_sets): New function.
+       * rtl.h (multiple_sets): Declare it.
+       * local-alloc.c (wipe_dead_reg): Use it.
+       * global.c (global_conflicts): Likewise.
+
+Sat Dec 12 22:13:02 1998  Mark Mitchell  <mark@markmitchell.com>
+
+       * global.c (record_conflicts): Don't use an array of shorts to
+        store an array of ints.
+       (global_conflicts): Likewise.
+
+Sat Dec 12 16:49:24 1998  Richard Henderson  <rth@cygnus.com>
+
+       * alpha.c (alpha_expand_block_move): mode_for_size expects
+       bits, not bytes.  Infer extra alignment from addressof.
+
+1998-12-11  Michael Meissner  <meissner@cygnus.com>
+
+       * rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_LOCAL): Put small data in the
+       .sbss section, not .sdata.
+
+1998-12-11  Manfred Hollstein  <manfred@s-direktnet.de>
+
+       * cccp.c: Do not #include <sys/stat.h> here; this is already done
+       by "system.h".
+       * collect2.c: Likewise.
+       * cpplib.h: Likewise.
+       * gcc.c: Likewise.
+       * gcov.c: Likewise.
+       * getpwd.c: Likewise.
+       * protoize.c: Likewise.
+       * toplev.c: Likewise.
+
+       * cpplib.h (HOST_WIDE_INT): Get definition from "machmode.h"
+       and don't try to define it here.
+       * Makefile.in (cppmain.o): Depend on machmode.h.
+       (cpplib.o): Likewise.
+       (cpperror.o): Likewise.
+       (cppexp.o): Likewise.
+       (cppfiles.o): Likewise.
+       (cpphash.o): Likewise.
+       (cppalloc.o): Likewise.
+       (fix-header.o): Likewise.
+       (scan-decls.o): Likewise.
+
+Fri Dec 11 11:02:49 1998  Stan Cox  <scox@cygnus.com>
+
+       * sh.c (print_operand): lookup interrupt_handler attribute instead
+       of relying on static variable. 
+       * (calc_live_regs): Likewise.
+       * (sh_pragma_insert_attributes): Create interrupt_handler
+       attribute if a pragma was specified
+       * (sh_valid_machine_decl_attribute): Don't set static flag.
+       * sh.h (PRAGMA_INSERT_ATTRIBUTES): New.
+
+Fri Dec 11 12:56:07 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * reload1.c (reload_combine): Use BASIC_BLOCK_LIVE_AT_START
+       to determine if a register is live at a jump destination.
+       Everything is dead at a BARRIER.
+
+Thu Dec 10 16:02:06 1998  Jim Wilson  <wilson@cygnus.com>
+
+       * cse.c (simplify_unary_operation): Sign-extend constants when
+       they have the most significant bit set for the target.
+       * real.c (endian): Sign-extend 32 bit output values on a 64 bit
+       host.
+       * m32r/m32r.c (m32r_expand_prologue): Store pretend_size in
+       HOST_WIDE_INT temporary before negating it.
+       * m32r/m32r.md (movsi_insn+1): Use ~0xffff instead of 0xffff0000.
+
+Thu Dec 10 15:05:59 1998  Dave Brolley  <brolley@cygnus.com>
+
+       * objc/objc-act.c (lang_init_options): Enclose cpplib related code in
+       #if USE_CPPLIB.
+
+Thu Dec 10 13:39:46 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * collect2.h: New header file for prototypes.
+
+       * Makefile.in (collect2.o, tlink.o): Depend on collect2.h.
+
+       * collect2.c: Include collect2.h.
+       * tlink.c: Likewise.
+
+Wed Dec  9 23:55:11 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * flow.c: Update some comments.
+
+Wed Dec  9 15:29:26 1998  Dave Brolley  <brolley@cygnus.com>
+
+       * objc/objc-act.c (cpp_initialized): Removed.
+       (lang_init_options): Initialize cpplib.
+       (lang_decode_option): Move initialization of cpplib to
+       lang_init_options.
+       * c-lang.c: (parse_options,parse_in): Added.
+       (lang_init_options): Initialized cpplib here.
+       * c-decl.c (parse_options,cpp_initialized): Removed.
+       (c_decode_option): Move initialization of cpplib to
+       lang_init_options.
+
+Wed Dec  9 19:36:57 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * reload1.c (reload_combine, reload_combine_note_store):
+       Make STORE_RUID always valid.
+       (reload_combine): Check if BASE is clobbered too early.
+
+Wed Dec  9 09:53:58 1998  Nick Clifton  <nickc@cygnus.com>
+
+       * reload.c (find_reloads): Display the insn that cannot be
+       reloaded. 
+
+Wed Dec  9 12:15:26 1998  Dave Brolley  <brolley@cygnus.com>
+
+       * cccp.c (create_definition): Fix end of bufer logic.
+
+Wed Dec  9 10:15:45 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * except.c (duplicate_eh_handlers, rethrow_symbol_map): Function
+       pointer parameters changed to use the PARAMS() macro.
+
+Wed Dec  9 09:12:40 EST 1998  Andrew MacLeod  <amacleod@cygnus.com>
+
+       * except.h (struct handler_info): Add handler_number field.
+       * except.c (gen_exception_label): EH labels no longer need to be
+       on the permanent obstack.
+       (get_new_handler): Set the label number field.
+       (output_exception_table_entry): Regenerate handler label reference 
+       from the label number field.
+       (init_eh): Remove a blank line.
+       * integrate.c (get_label_from_map): Labels no longer need to be
+       on the permanent obstack.
+
+Tue Dec  8 22:04:33 1998  Jim Wilson  <wilson@cygnus.com>
+
+       * i960/i960.h (CONST_COSTS, case CONST_INT): Accept power2_operand
+       only when OUTER_CODE is SET.
+
+Tue Dec  8 22:47:15 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * loop.c (strength_reduce): If scan_start points to the loop exit
+       test, be wary of subversive use of gotos inside expression statements.
+       Don't set maybe_multiple for a backward jump that does not
+       include the label under consideration into its range.
+       * unroll.c (biv_total_increment): Make use of maybe_multiple field.
+
+Tue Dec  8 22:33:18 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * explow.c (plus_constant_wide): Don't immediately return with
+       result of recursive call.
+
+Tue Dec  8 15:32:56 EST 1998  Andrew MacLeod  <amacleod@cygnus.com>
+
+       * eh-common.h (struct eh_context): Add table_index for rethrows.
+
+       * rtl.h (enum reg_note): Add REG_EH_REGION and REG_EH_RETHROW reg notes.
+       (SYMBOL_REF_NEED_ADJUST): New flag indicating symbol needs to be
+       processed when inlined or unrolled (ie duplicated in some way).
+
+       * rtl.c (reg_note_name): Add strings for new reg_note enums.
+
+       * expr.h (rethrow_libfunc): New library decl.
+
+       * optabs.c (rethrow_libfunc): Initialize.
+
+       * except.h (struct eh_entry): Add new field 'rethrow_label'.
+       (new_eh_region_entry): No longer exported from except.c.
+       (duplicate_handlers): Renamed to duplicate_eh_handlers and 
+       different prototype.
+       (rethrow_symbol_map, rethrow_used): New exported functions.
+       (eh_region_from_symbol): New exported function.
+
+       * except.c (create_rethrow_ref): New function to create a single
+       SYMBOL_REF for a rethrow region.  
+       (push_eh_entry): Initialize a rethrow ref.
+       (func_eh_entry): Add a rethrow_label field.
+       (new_eh_region_entry): Make static, and initialize the rethrow entry.
+       (duplicate_eh_handlers): Create a new region, and remap labels/symbols.
+       (eh_region_from_symbol): Find an EH region based on its rethrow symbol.
+       (rethrow_symbol_map): Given a label map, maps a rethrow symbol for 
+       a region into an appropriate new symbol.
+       (rethrow_used): Indicate whether a rethrow symbol has been referenced.
+       (expand_eh_region_end): Don't issue jump around code for new-exceptions.
+       (end_catch_handler): Emit a barrier for new-exceptions since 
+       control can never drop through the end of a catch block.
+       (expand_end_all_catch): new-exceptions never fall through a catch 
+       block.
+       (expand_rethrow): use __rethrow routine for new exceptions.
+       (output_exception_table_entry): Generate rethrow labels, if needed.
+       (output_exception_table): Generate start and end rethrow labels.
+       (init_eh): Create rethrow symbols for beginning and end of table.
+       (scan_region): Don't eliminate EH regions which are the targets of
+       rethrows.
+
+       * flow.c (make_edges): Add different edges for rethrow calls, 
+       identified by having the REG_EH_RETHROW reg label.
+       (delete_unreachable_blocks): Don't delete regions markers which are 
+       the target of a rethrow.
+
+       * integrate.c (save_for_inline_eh_labelmap): New callback routine to 
+       allow save_for_inline_copying to call duplicate_eh_handlers.
+       (save_for_inline_copying): Call duplicate_eh_handlers instead of
+       exposing internal details of exception regions.
+       (copy_for_inline): Check if SYMBOL_REFs need adjustment.
+       (expand_inline_function_eh_labelmap):  New callback routine to 
+       allow expand_inline_function to call duplicate_eh_handlers.
+       (expand_inline_function): Call duplicate_eh_handlers instead of
+       exposing internal details of exception regions.
+       (copy_rtx_and_substitute): Adjust SYMBOL_REFS if SYMBOL_REF_NEED_ADJUST
+       flag is set.
+
+       * libgcc2.c (find_exception_handler): Generalize to enable it to
+       pick up processing where it left off last time for a rethrow.
+       (__unwinding_cleanup): New function. debug hook which is called before
+       unwinding when __throw finds there is nothing but cleanups left.
+       (throw_helper): Common parts of __throw extracted out for reuse.
+       (__throw): Common parts moved to throw_helper.
+       (__rethrow): New function for performing rethrows.
+
+Tue Dec  8 13:11:04 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * reload1.c (current_function_decl): Tweak declaration.
+
+Tue Dec  8 10:23:52 1998  Richard Henderson  <rth@cygnus.com>
+
+       * c-decl.c (flag_isoc9x): Default off.
+       (c_decode_option): Kill -std=gnu, add -std=gnu89 and -std=gnu9x.
+       * cccp.c (print_help, main): Likewise.
+       * gcc.c (default_compilers): Update for -std=gnu*.
+
+Tue Dec  8 01:14:46 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * Makefile.in (DEMANGLE_H): Change location to shared demangle.h.
+       * demangle.h: Deleted.
+
+       * reload1.c (current_function_decl): Declare.
+
+Tue Dec  8 11:58:51 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * cpplib.c (convert_string): Use `0x00ff', not `0x00ffU'.
+
+Tue Dec  8 09:28:36 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * dbxout.c: If USG is defined use gstab.h, even if HAVE_STAB_H is set.
+
+1998-12-08  Ulrich Drepper  <drepper@cygnus.com>
+
+       * configure.in: Test for availability of putc_unlocked, fputc_unlocked,
+       and fputs_unlocked.
+       * configure: Rebuilt.
+       * system.h: If the *_unlocked functions are available use them
+       instead of the locked counterparts by defining macros.
+       * config.in: Regenerated.
+
+Tue Dec  8 00:34:05 1998  Mike Stump  <mrs@wrs.com>
+
+       * i386/bsd.h (ASM_FILE_START): Don't use dump_base_name, it is
+       wrong and should only be used for dump related things, not
+       debugging information, instead main_input_filename should be used.
+       Also, reuse output_file_directive if possible.
+       * i386/aix386ng.h (ASM_FILE_START): Likewise.
+       * i386/isc.h (ASM_FILE_START): Likewise.
+       * i386/win-nt.h (ASM_FILE_START): Likewise.
+       * i386/sun386.h (ASM_FILE_START): Likewise.
+
+Mon Dec  7 23:56:28 1998   Robert Lipe  <robertl@dgii.com>
+
+       * configure.in (mips*-*-linux*): Handle big and little endian
+       systems.
+       * configure: Rebuilt.
+
+Mon Dec  7 23:14:51 1998  Mike Stump <mrs@wrs.com>
+
+       * emit-rtl.c: Fix typo.
+
+Mon Dec  7 23:07:38 1998  Nathan Sidwell  <nathan@acm.org>
+
+       * reload1.c (eliminate_regs): Don't do anything, if we're not
+       generating code.
+
+Mon Dec  7 15:27:09 1998  DJ Delorie  <dj@cygnus.com>
+
+       * mips/mips.h (ENCODE_SECTION_INFO): Handle TARGET_EMBEDDED_DATA.
+       Add comment.
+       * mips/mips.c (mips_select_section): Add comment.
+
+Mon Dec  7 17:55:06 1998  Mike Stump  <mrs@wrs.com>
+
+       * cccp.c (ignore_escape_flag): Add support for \ as `natural'
+       characters in file names in #line to be consistent with #include
+       handling.  We support escape prcessing in the # 1 "..." version of
+       the command.  See also support in cp/lex.c.
+       (handle_directive): Likewise.
+       (do_line): Likewise.
+       
+1998-12-07  Zack Weinberg  <zack@rabi.phys.columbia.edu>
+
+       * cpplib.c (initialize_char_syntax): Use ISALPHA and ISALNUM
+          so it'll work on non-ASCII platforms.  Always consider $ an
+          identifier character.  Take no arguments.
+         (cpp_reader_init): Call initialize_char_syntax with no
+          arguments.
+         (cpp_start_read): Don't call initialize_char_syntax again.
+          Clear is_idchar['$'] and is_idstart['$'] if not
+          opts->dollars_in_ident.
+
+       * cpplib.h (struct cpp_reader): Replace void *data element by
+          cpp_options *opts.  Rearrange elements to make gdb printout
+          less annoying (put buffer stack at end).
+         (CPP_OPTIONS): Get rid of now-unnecessary cast.
+
+       * cppmain.c: s/data/opts/ when initializing cpp_reader
+          structure.
+       * c-decl.c: Likewise.
+       * objc/objc-act.c: Likewise.
+       * fix-header.c: Likewise.
+
+1998-12-07  Zack Weinberg  <zack@rabi.phys.columbia.edu>
+
+       * cpplib.h (struct cpp_buffer): Replace dir and dlen members
+       with a struct file_name_list pointer.
+       (struct cpp_reader): Add pointer to chain of `actual
+       directory' include searchpath entries.
+       (struct file_name_list): Add *alloc pointer for the sake of
+       the actual-directory chain.
+
+       Move definition of HOST_WIDE_INT here.
+       (cpp_parse_escape): Change prototype to match changes in
+       cppexp.c.
+
+       * cppfiles.c (actual_directory): New function.
+       (finclude): Use it to initialize the buffer's actual_dir
+       entry.
+       (find_include_file): We don't need to fix up max_include_len
+       here.
+
+       * cpplib.c (do_include): Don't allocate a file_name_list on
+       the fly for current directory "" includes, use the one that's
+       been preallocated in pfile->buffer->actual_dir.  Hoist out
+       duplicate code from the search_start selection logic.
+       (cpp_reader_init): Initialize pfile->actual_dirs.
+
+       Remove definition of HOST_WIDE_INT.  Change calls
+       to cpp_parse_escape to match changes in cppexp.c (note
+       hardcoded MASK, which is safe since this is the source
+       character set).
+
+       * cppexp.c: Bring over changes to cpp_parse_escape from cccp.c
+       to handle wide character constants in #if directives.  The
+       function now returns a HOST_WIDE_INT, and takes a third
+       argument which is a binary mask for all legal values (0x00ff
+       for 8-bit `char', 0xffff for 16-bit `wchar_t', etc.)  Define
+       MAX_CHAR_TYPE_MASK and MAX_WCHAR_TYPE_MASK.  Change callers of
+       cpp_parse_escape to match.  [Fixes c-torture/execute/widechar-1.c]
+
+Mon Dec  7 15:38:25 1998  Dave Brolley  <brolley@cygnus.com>
+
+       * gcc.c (default_compilers): Fix typo in USE_CPPLIB spec for cc1.
+
+Mon Dec  7 15:38:25 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+        * c-aux-info.c (concat): Wrap function definition in !USE_CPPLIB.
+        * cppalloc.c: Move function `xcalloc' from cpplib.c to here.
+        * cpplib.c: Move function `xcalloc' from here to cppalloc.c.
+
+Mon Dec  7 11:30:49 1998  Nick Clifton  <nickc@cygnus.com>
+
+       * final.c (output_asm_name): Use tabs to seperate comments from
+       assembly text.
+       
+       Include instruction lengths (if defined) in output.
+
+Mon Dec  7 10:53:38 1998  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
+
+       * loop.c (check_dbra_loop): Fix initial_value and initial_equiv_value
+       in the loop_info structure.
+       
+Mon Dec  7 11:04:40 1998  Catherine Moore  <clm@cygnus.com>
+        * configure.in:  (arm*-*-ecos-elf):  New target.
+        * configure:  Regenerated.
+        * config/arm/elf.h (ASM_WEAKEN_LABEL):  Define.
+        * config/arm/ecos-elf.h:  New file.
+        * config/arm/unknown-elf.h (TARGET_VERSION):  Check
+        for redefinition.
+Mon Dec  7 16:15:51 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * sh.c (output_far_jump): Emit braf only for TARGET_SH2.
+
+Sun Dec 6 04:19:45 PST 1998 Jeff Law  (law@cygnus.com)
+
+       * version.c: Bump for snapshot.
+
+Sun Dec  6 05:16:16 1998  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
+
+       * loop.c (check_dbra_loop): New argument loop_info.  Update fields
+       as needed.
+
 Sun Dec 6 03:40:13 PST 1998 Jeff Law  (law@cygnus.com)
 
        * version.c: Bump for snapshot.
@@ -92,6 +809,11 @@ Fri Dec  4 02:23:24 1998  Jeffrey A Law  (law@cygnus.com)
 
        * except.c (set_exception_version_code): Argument is an "int".
 
+Fri Dec  4 01:29:28 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * configure.in (hppa2*-*-*): Handle like hppa1.1-*-* for now.
+       * configure: Rebuilt.
+
 Fri Dec  4 01:29:28 1998  Robert Lipe  <robertl@dgii.com>
 
        * configure.in (mipsel-*-linux*): New target.