OSDN Git Service

many applications of c_fix=format + tests
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index a8cdab9..b1e00d1 100644 (file)
@@ -1,3 +1,693 @@
+2000-05-20  Alexandre Oliva  <aoliva@cygnus.com>
+
+       * ifcvt.c (if_convert): Scan and kill dead code.
+
+       * emit-rtl.c (unshare_all_rtl): Store the copied rtx.
+
+2000-05-20  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * diagnostic.c: Eliminate implicit int.
+       * except.c, gcc.c: Add static prototypes.
+       * final.c (final_end_function): Mark file arg ATTRIBUTE_UNUSED.
+       * gensupport.c (process_rtx): Use XVEC to initialize vector
+       slot of 'split'.
+
+       * print-rtl.c: If DEBUG_REGISTER_NAMES, define static 
+       debug_reg_names instead of static reg_names.  If not, define
+       global reg_names.
+       * regclass.c: Don't define global reg_names unless
+       DEBUG_REGISTER_NAMES is defined.
+
+       * reload1.c (order_regs_for_reload): Remove unused variable.
+       * varasm.c: Include output.h after defaults.h.  Define
+       eh_frame_section as function of no args, not of unspecified args.
+
+       * gcc.c: Constify argbuf; arguments to store_arg,
+       process_command, main; elements of struct command and struct
+       switchstr; local variables in execute, process_command, main.
+
+2000-05-20  Bruce Korb  <bkorb@gnu.org>
+
+       * fixinc/inclhack.def:  many applications of c_fix=format + tests
+       * fixinc/check.diff:  regenerated
+       * fixinc/fixincl.x:  regenerated
+
+Sat May 20 09:30:55 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * alias.c: Clarify some comments.
+       (record_base_value): REGNO is unsigned.
+       * rtl.h (record_base_value): Likewise.
+
+       * alias.c (aliases_everything_p): Don't special-case QImode here.
+       * c-common.c (c_get_alias_set): Do it here.
+       Handle BIT_FIELD_REF by getting alias info for arg.
+       Use POINTER_TYPE_P.
+
+2000-05-20  Alexandre Oliva  <aoliva@cygnus.com>
+
+       * mklibgcc.in: Restore rule to create ${dir}.
+
+Sat May 20 08:45:41 2000  H.J. Lu  <hjl@gnu.org>
+
+       * Makefile.in (libgcc.mk): Depend on xgcc$(exeext) for
+       GCC_FOR_TARGET used by MULTILIBS.
+       * mklibgcc.in: Make sure each .o file depends on the
+       directory it will be in.
+       Make the multilib directory depends libgcc.
+
+Sat May 20 08:29:28 2000  H.J. Lu  <hjl@gnu.org>
+
+       * Makefile.in (bootstrap): Unset LANG_LIB2FUNCS for stage 1.
+
+Sat May 20 07:27:35 2000  Alexandre Oliva  <aoliva@cygnus.com>
+
+       * fold-const.c (make_range): Handle degenerated intervals.
+       Fixes c-torture/execute/991221-1.c
+
+Fri May 19 18:16:31 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * cse.c (cse_basic_block): Only call find_reg_note if REG_NOTES not 0.
+       * reload.c (find_equiv_reg): Likewise.
+       * alias.c (init_alias_analysis): Likewise.
+       Only call prologue_epilogue_contains on insns.
+       * basic-block.h (REG_SET_TO_HARD_REG_SET): Call new function.
+       * bb-reorder.c (hard-reg-set.h): Include earlier.
+       * haifa-sched.c (hard-reg-set.h): Likewise.
+       * ifcvt.c (hard-reg-set.h): Likewise.
+       * local-alloc.c (hard-reg-set.h): Likewise.
+       * loop.c (hard-reg-set.h): Likewise.
+       * predict.c (hard-reg-set.h): Likewise.
+       * regrename.c (hard-reg-set.h): Likewise.
+       * flow.c (hard-reg-set.h): Likewise.
+       (reg_set_to_hard_reg_set): New function.
+       * bitmap.c (regs.h, basic-block.h): No longer include.
+       (bitmap.h): Now include.
+       * conflict.c (hard-reg-set.h): Include.
+       * profile.c (hard-reg-set.h): Likewise.
+       * print-rtl.c (hard-reg-set.h): Likewise.
+       * sbitmap.c (hard-reg-set.h): Likewise.
+       * toplev.c (hard-reg-set.h): Likewise.
+       * unroll.c (hard-reg-set.h, basic-block.h): Likewise.
+       * hard-reg-set.h (reg_names): Now constant.
+       * regs.h (reg_names): Likewise.
+       * regclass.c (reg_names): Likewise.
+       * loop.h (basic-block.h): No longer include.
+       (bitmap.h): Now include.
+       * reload1.c (order_regs_for_reload): Avoid loop over reg sets.
+       * Makefile.in (LOOP_H, sbitmap.o, profile.o): Reflect above changes.
+       (toplev.o, print-rtl.o, conflict.o, unroll.o, bitmap.o): Likewise.
+
+2000-05-19  Jan Hubicka  <jh@suse.cz>
+           Richard Henderson  <rth@cygnus.com>
+
+       * basic-block.h (struct edge_def): New field "count".
+       (struct basic_block_def): Likewise.
+       * flow.c (entry_exit_blocks): Add count fileds.
+       (split_edge): Keep count information up-to-date.
+       (dump_edge_info, dump_flow_info): Dump count fields.
+
+       * final.c (count_instrumented_edges): Rename to edge from arc.
+       (end_final): Update users.
+       * profile.c: Include expr.h, basic-block.h.
+       (struct adj_list, ARC_TARGET, ARC_SOURCE, ARC_COUNT): Kill.
+       (struct bb_info, label_to_bb, label_to_bb_size, bb_graph): Kill.
+       (ignore_next_note, return_label_execution_count): Kill.
+       (bbg_file_name, da_file_name): Kill.
+       (edge_info, bb_info): New structures.
+       (EDGE_INFO, BB_INFO, GCOV_INDEX_TO_BB, BB_TO_GCOV_INDEX): New macros.
+       (count_instrumented_edges, total_num_edges): Rename to edge from arc.
+       (total_num_edges_instrumented): Likewise.
+       (init_arc, expand_spanning_tree): Kill.
+       (fill_spanning_tree, tablejump_entry_p): Kill.
+       (instrument_edges):  Rewrite from instrument_arcs to use
+       commit_edge_insertions infrastructure.
+       (compute_branch_probabilities): Remove arguments; rewrite for
+       CFG infrastructure; use rtl_dump_file directly.
+       (branch_prob, find_spanning_tree): Likewise.
+       (union_groups, find_group): New.
+       (init_branch_prob): Make bbg_file_name and da_file_name local.
+       (end_branch_prob): Use rtl_dump_file directly.
+       (init_edge_profiler): Rename to edge from arc.
+       (output_arc_profiler): Kill.
+       (gen_edge_profiler): New.
+       (output_func_start_profiler): Turn off profiling.  Make the
+       constructor static when we can.
+       * rtl.h (branch_prob, end_branch_prob): Update prototypes.
+
+       * toplev.c (DFI_flow): Remove.
+       (DFI_cfg, DFI_life): New.
+       (dump_file): Update accordingly.
+       (compile_file): Call end_branch_prob if profile_arc_flag too.
+       (rest_of_compilation): Move flow1 cfg creation to DFI_cfg.  Do edge
+       profiling after the CFG is built.  Move flow1 life analysis to
+       DFI_life.  Always estimate remaining probabilities.
+
+2000-05-19  Richard Henderson  <rth@cygnus.com>
+
+       * ifcvt.c (find_if_case_2): Don't allow THEN to be EXIT.
+
+       * flow.c (make_edges): The sibling call edge to exit is abnormal.
+
+2000-05-19  Richard Henderson  <rth@cygnus.com>
+
+       * jump.c (redirect_jump): Add delete_unused argument.  Don't
+       remove labels and code following when LABEL_NUSES goes to zero.
+       (invert_jump): Likewise.
+       (jump_optimize_1): Fix redirect/invert arguments.
+       (do_cross_jump, thread_jumps): Likewise.
+       * flow.c (split_edge): Likewise.
+       * reorg.c (optimize_skip): Likewise.
+       (reorg_redirect_jump, relax_delay_slots, dbr_schedule): Likewise.
+       * profile.c (instrument_arcs): Likewise.
+       * loop.c (find_and_verify_loops): Likewise.  Fix indentation.
+       * rtl.h: Update prototypes.
+
+Fri May 19 12:05:13 2000  Clinton Popetz  <cpopetz@cygnus.com>
+
+       * ssa.c (convert_from_ssa): Tell life_analysis we need death 
+       notes.
+       (make_regs_equivalent_over_bad_edges): Only look at abnormal
+       critical edges.
+
+2000-05-19  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * cpphash.c (funlike_macroexpand): Make sure not to walk p1
+       past l1 when deleting whitespace and markers.              
+
+       * cpplex.c (_cpp_scan_until): Clear AUX field of tokens.
+       * cpplib.c (do_unassert): Put the list to compare against on
+       the stack.
+
+2000-05-19  Bruce Korb  <bkorb@gnu.org>
+
+       * fixinc/README:  cleaned up old documentation
+       * fixinc/check.diff: regenerated & verified on OSR5 on ix86
+       * fixinc/check.tpl: compute the list of needed directories
+       emit "#if defined(name)" because of conflict
+       omit machine name differences from output differences
+       * fixinc/inclhack.def( m88k_multi_incl ):  Use `wrap' function
+       (machine_name): change test text to use `sed' markers
+       * fixinc/fixincl.x: regen
+
+Fri May 19 06:49:35 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * config/elfos.h (SELECT_SECTION): Don't access DECL_INITIAL of
+       a CONSTRUCTOR.
+
+2000-05-18  Chris Demetriou  <cgd@sibyte.com>
+
+       * gcc.texi (MULTILIB_EXCEPTIONS): Correct example and update
+       it to match the current practice.
+
+2000-05-18  Mark Mitchell  <mark@codesourcery.com>
+
+       * Makefile.in (STAGESTUFF): Fix typo in spelling of s-under.
+
+2000-05-18  Richard Henderson  <rth@cygnus.com>
+
+       * rtlanal.c (insn_dependant_p, insn_dependant_p_1): New.
+       * rtl.h (insn_dependant_p): Declare it.
+       * loop.c (strength_reduce): Use it.
+
+2000-05-18  Alexandre Oliva  <aoliva@cygnus.com>
+
+       * config/mn10300/mn10300.c (expand_prologue, expand_epilogue):
+       16-bit and 64-bit clean-up.
+
+2000-05-18 Mark Elbrecht <snowball3@bigfoot.com>
+
+       * configure.in (*-pc-msdosdjgpp): Set float_format to none.
+       * configure: Rebuilt.
+
+2000-05-18  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * genopinit.c: Use $ for escape sequences in optab patterns.
+       Remove backslashes from optab patterns.  Change $A, $B, $C to
+       expand to (int) whatever instead of just whatever; remove
+       explicit (int) from all optab patterns.
+
+       * gensupport.c (xmalloc, xrealloc, xstrdup): Provide.
+       * genattr.c, genattrtab.c, gencodes.c, genconfig.c, genemit.c,
+       genextract.c, genflags.c, genopinit.c, genoutput.c, genpeep.c,
+       genrecog.c: Remove private copies of xmalloc, xrealloc, and
+       xstrdup.
+
+2000-05-18  Richard Henderson  <rth@cygnus.com>
+
+       * jump.c (jump_optimize_1): Base minimum insn count during
+       find_cross_jump on BRANCH_COST.
+
+2000-05-18  Jakub Jelinek  <jakub@redhat.com>
+
+       * print-rtl.c (print_rtx): Only print note line number as string
+       if between NOTE_INSN_BIAS and NOTE_INSN_MAX.
+       * final.c (final_scan_insn): Do nothing for note line number 0.
+
+2000-05-18  Jakub Jelinek  <jakub@redhat.com>
+
+       * gcc-common.c (ggc_mark_rtx_children): Mark NOTE_EXPECTED_VALUE
+       from NOTE_INSN_EXPECTED_VALUE notes and NOTE_SOURCE_FILE from
+       NOTE_INSN_DELETED_LABEL.
+
+2000-05-18  Nick Clifton  <nickc@cygnus.com>
+
+       * config/arm/unknown-elf.h (UNIQUE_SECTION): Place constant,
+       uninitialised data in .rodata not .bss, and do not interpret an
+       error in the initialisation value as meaning that the variable
+       should be placed in the .bss section.
+
+Thu May 18 12:10:18 2000  Philippe De Muyter  <phdm@macqel.be>
+
+       * configure.in (NO_MINUS_C_MINUS_O): Test `$ac_cv_prog_cc_${ac_cc}_c_o',
+       not `$ac_cv_prog_cc_cc_c_o'.
+       * configure: Regenerated.
+
+2000-05-18  Chris Demetriou  <cgd@sibyte.com>
+           Richard Henderson  <rth@cygnus.com>
+
+       * c-common.h (enum c_tree_index): Add g77 type entries.
+       (g77_integer_type_node, g77_uinteger_type_node): New.
+       (g77_longint_type_node, g77_ulongint_type_node): New.
+       * c-decl.c (init_decl_processing): Initialize them.
+
+2000-05-18  Richard Henderson  <rth@cygnus.com>
+
+       * config/h8300/h8300.md (subs patterns): Use %G to negate.
+
+       * config/h8300/h8300.c (ok_for_bclr): Take a HOST_WIDE_INT.
+       (small_power_of_two): Likewise; use exact_log2.
+       (adds_subs_operand, one_insn_adds_subs_operand): Remove.
+       (output_adds_subs): Remove.
+       (two_insn_adds_subs_operand): New.
+       (split_adds_subs): New.
+       * config/h8300/h8300-protos.h: Update.
+       * config/h8300/h8300.h (CONST_OK_FOR_J): Cast to uns HOST_WIDE_INT.
+       (CONST_OK_FOR_L): Match strict adds operands.
+       (CONST_OK_FOR_N): Match struct subs operands.
+       * config/h8300/h8300.md (adds_subs insns): Remove.
+       (addhi patterns): Output adds/subs directly.
+       (addsi_h8300h): Likewise.
+       (addhi/addsi splitters): New.  Decompose two_insn_adds_subs_operand.
+
+2000-05-18  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * cppexp.c (parse_assertion): New.
+       (lex): Call it for CPP_HASH.  Remove CPP_ASSERTION case.
+       (_cpp_parse_expr): Remove case '#'.  Don't set
+       parsing_if_directive.
+       * cpphash.c (collect_objlike_expansion,
+       collect_funlike_expansion, collect_params,
+       _cpp_create_definition): The list no longer has a trailing
+       VSPACE token.
+       * cpphash.h (enum node_type): Add T_ASSERTION.
+       (struct hashnode): Remove aschain, add pred.
+       (struct predicate): New.
+       Update prototypes.
+
+       * cpplex.c (expand_token_space): Handle both offset and
+       nonoffset lists.
+       (init_token_list, _cpp_free_token_list, _cpp_parse_assertion): Delete.
+       (_cpp_init_toklist, _cpp_clear_toklist, _cpp_free_toklist,
+       _cpp_slice_toklist, _cpp_squeeze_toklist, _cpp_equiv_tokens,
+       _cpp_equiv_toklists): New.
+       (_cpp_scan_line): Rename to _cpp_scan_until; add ability to
+       stop at any single-character token, not just newline.
+       (_cpp_lex_token): Remove special cases for #define and #if.
+       (cpp_get_token): Expect # as a separate token type.  Remove
+       DIRECTIVE case.
+       (_cpp_get_directive_token): Remove DIRECTIVE case.
+       (_cpp_lex_line, _cpp_lex_file, _cpp_init_input_buffer): Update.
+
+       * cpplib.c (_cpp_check_directive): Set dirno and
+       SYNTAX_INCLUDE bit of flags, not dir_handler and dir_flags.
+       (_cpp_handle_directive): Run # <number> through the same logic
+       as normal directives.
+       (do_define): Don't set parsing_define_directive.  Use
+       _cpp_scan_until.  The list does not have a VSPACE at the end.
+       (do_if): Save, clear, and restore only_seen_white around 
+       _cpp_parse_expr.
+       (skip_if_group): s/CPP_DIRECTIVE/CPP_HASH/
+       (do_assert, do_unassert): Rewrite.
+
+       * cpplib.h (TTYPE_TABLE): Remove CPP_ASSERTION.
+       (LIST_OFFSET): New flag.
+       (struct cpp_toklist): Replace dir_handler and dir_flags with
+       dirno and flags.
+       (struct cpp_reader): Remove parsing_if_directive and
+       parsing_define_directive.
+
+2000-05-18  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * fixinc/inclhack.def (broken_cabs): Update fix to handle comments
+       following the cabs decl which terminate on the following line.
+       Add the corresponding test_text case.
+
+2000-05-18  Neil Booth  <NeilB@earthling.net>
+
+       * cppinit.c (cpp_reader_init): Initialise col_adjust and
+       default tab stop size.
+       (no_num, OPT_ftabstop): New.
+       (handle_option): Handle "ftabstop=" command-line option.
+       (print_help): Document it.
+       * cpplex.c (COLUMN): Remove.
+       (handle_newline): Reset col_adjust.
+       (skip_whitespace): Update col_adjust as tabs encountered.
+       (_cpp_lex_line): Update to use col_adjust.  Call
+       skip_whitespace for all whitespace.
+       * cpplib.h (struct cpp_options): New member tabstop.
+       (struct cpp_reader): New member col_adjust.
+       (CPP_BUF_COL): Update.
+       (CPP_BUF_COLUMN): New.
+       * cpp.texi: Document "-ftabstop=" command line option.
+
+Wed May 17 18:19:41 2000  Philippe De Muyter  <phdm@macqel.be>
+
+       * configure.in (NO_MINUS_C_MINUS_O): Macro made availabe for AC_OUTPUT
+       files.
+       * configure: Rebuilt.
+
+Wed May 17 18:06:12 2000  John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+       * mklibgcc.in Add missing -DL$name when compiling modules in libgcc1.c.
+
+       * tree.c (build_common_tree_nodes): Do not build TI nodes unless
+       HOST_BITS_PER_WIDE_INT is >= 64.
+
+2000-05-17  Richard Henderson  <rth@cygnus.com>
+
+       * jump.c (jump_optimize_1): Remove inactive but real insns
+       in jump-to-next-insn optimization.
+
+2000-05-17  Richard Henderson  <rth@cygnus.com>
+
+       * toplev.c (rest_of_compilation): Don't call optimize_mode_switching
+       unless OPTIMIZE_MODE_SWITCHING.  Conditionally set no_new_pseudos.
+       Don't call recompute_reg_usage if no_new_pseudos is true.
+       * lcm.c (optimize_mode_switching): Move ifdefs outside function.
+       Return true if we did work; update global life information.
+       * basic-block.h (optimize_mode_switching): Update decl.
+
+2000-05-17  Neil Booth  <neilb@earthling.net>
+
+       * cpplex.c (expand_name_space): Don't use ptrdiff_t.
+
+2000-05-17  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * cpplib.c: New feature, #pragma system_header.
+       * cpp.texi: Document special treatment of system headers, and
+       the various mechanisms to get a header that special treatment.
+
+2000-05-17  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * system.h (offsetof): Define at the very end, to ensure we prefer
+       the platform's definition if available.
+
+2000-05-16  Bruce Korb  <bkorb@gnu.org>
+
+       * fixinc/fixincl.c: improve the debug displays, ignore SIGPIPE
+       * fixinc/server.c: likewise
+       * fixinc/fixfixes.c( char_macro_def_fix ): fix regex
+       + #ifdef debugging code + use #def constant for
+       sub-pattern count
+       * fixinc/inclhack.def( hpux11_fabsf ): Keep HP-UX 11 from stomping
+       on C++ math namespace
+
+2000-05-17  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * fixinc/fixfixes.c (char_macro_use_fix, char_macro_def_fix):
+       Don't check the return value of sprintf.  Use asprintf to avoid
+       buffer overflows.
+
+Wed May 17 17:27:44 2000  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * flags.h (warn_unused_function, warn_unused_label,
+       warn_unused_parameter, warn_unused_variable, warn_unused_value):
+       Replace ``warn_unused''.
+       (set_Wunused): Add declaration.
+       * toplev.c (set_Wunused): New function.
+       (warn_unused_function, warn_unused_label, warn_unused_parameter,
+       warn_unused_variable, warn_unused_value): New variables.
+       (W_options): Add -Wunused-function, -Wunused-function,
+       -Wunused-label, -Wunused-parameter, -Wunused-variable and
+       -Wunused-value.  Delete -Wunused.  Handled in decode_W_option.
+
+       * toplev.c (decode_W_option): Update -Wunused flags by calling
+       set_Wunused.
+       * c-decl.c (c_decode_option): Ditto for -Wall.
+
+       * stmt.c (expand_expr_stmt, expand_expr_stmt,
+       warn_about_unused_variables): Replace warn_unused with more
+       explicit warn_unused_value et.al.
+       * function.c (expand_function_end): Ditto.
+       * c-typeck.c (internal_build_compound_expr,
+       internal_build_compound_expr): Ditto.
+       * c-decl.c (poplevel, pop_label_level): Ditto.
+       * toplev.c (check_global_declarations): Replace warn_unused with
+       check for either warn_unused_function or warn_unused_variable.
+
+       * gcc.1, invoke.texi (Warning Options): Document
+       -Wunused-function, -Wunused-function, -Wunused-label,
+       -Wunused-parameter, -Wunused-variable and -Wunused-value options.
+
+Wed May 17 10:28:12 2000  Philippe De Muyter  <phdm@macqel.be>
+
+       * mklibgcc.in (building libgcc1) [Xlibgcc1.a]: Find libgcc1.c in
+       $(srcdir), not in the current directory.
+
+2000-05-16  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/crtbegin.asm (__dso_handle): Mark hidden if the
+       assembler supports it.
+       (.fini, .init): Use a gp-relative indirect call.
+       (__do_global_dtors_aux): Preserve the gp; rebundle.
+       (__do_frame_setup): Likewise.
+       * config/ia64/crtend.asm (.IA_64.unwind): Don't terminate with -1.
+       (.init): Use a gp-relative indirect call.
+       (__do_global_ctors_aux): Preserve the gp.
+
+2000-05-16  Richard Henderson  <rth@cygnus.com>
+
+       * flow.c (commit_one_edge_insertion): Be prepared for a return
+       insn to be inserted on the edge with a normal jump.
+       * jump.c (jump_optimize_1): Don't look to create return isns.
+
+       * flow.c (flow_delete_insn): Don't adjust reference count of notes.
+       * jump.c (jump_optimize_1): Likewise.
+       (returnjump_p): Verify the argument is a JUMP_INSN.
+       * rtl.def (NOTE): Add 5th element for NOTE_INSN_DELETED_LABEL.
+
+2000-05-16  Nick Clifton  <nickc@cygnus.com>
+
+       * config/m32r/m32r.c (small_insn_p): Use INSN_P() to replace
+       GET_RTX_CLASS (GET_CODE ()) == 'i'.
+       (large_insn_p): Ditto.
+       (m32r_is_insn): New function: Return true if the insn contains
+       an executable instruction.
+       (m32r_adjust_insn): Use m32r_is_insn.
+       (m32r_sched_reorder): Use m32r_is_insn.
+       (m32r_sched_variable_issue): Use m32r_is_insn.
+
+2000-05-16  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
+
+       * rs6000/rs6000.c (rs6000_select_section): Treat CONSTRUCTOR like
+       VAR_DECL.
+
+       * rs6000/sysv4.h (ASM_OUTPUT_DWARF_ADDR): Delete unused variable.
+
+       * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Define __unix and __linux
+       according to given options.
+
+Tue May 16 12:17:31 2000  Jeffrey A Law  (law@cygnus.com)
+
+       * mn10200.h (PREFERRED_RELOAD_CLASS): Do not prefer DATA_REGS
+       if X has VOIDmode either.
+       (LIMIT_RELOAD_CLASS): Similarly.
+
+       * mn10200.md (indirect_jump, tablejump): Use "register_operand",
+       not "general_operand" to match the processor's capabilities.
+
+2000-05-16  Bruce Korb  <bkorb@gnu.org>
+
+       * fixinc/README:  corrected return address
+       * fixinc/check.diff:  regenerate, now that test works
+       * fixinc/fixfixes.c(format_fix,format_write): reformatted
+       (char_macro_def_fix,char_macro_use_fix): corrected and
+       rewrote to use regex to parse the text
+       * fixinc/inclhack.def: more testing
+       * fixinc/fixincl.x:  regenerated
+
+       * fixinc/inclhack.def: added several "test_text" attributes
+       changed several fixes to use `c_fix = format'
+       re-alphabetized the fixes
+
+       * fixinc/check.diff: regenerate
+       * fixinc/fixincl.x: regenerate
+       * fixinc/check.tpl: added `sparc' and `netinet' to the list
+       of created dirs
+
+
+2000-05-16  Alexandre Oliva  <aoliva@cygnus.com>
+
+       * config/mn10300/mn10300.h (ASM_OUTPUT_DWARF2_ADDR_CONST): Remove.
+
+2000-05-15  Richard Henderson  <rth@cygnus.com>
+
+       * toplev.c (rest_of_compilation): Run full jump pass before
+       find_basic_blocks of flow2.
+
+2000-05-15  Richard Henderson  <rth@cygnus.com>
+
+       * jump.c: Fix typos and clarify commentary from last change.
+       (any_condjump_p): Verify SET_SRC is an IF_THEN_ELSE.
+       (safe_to_remove_jump_p): Remove.
+       (condjump_label): Use pc_set.
+
+2000-05-15  Richard Henderson  <rth@cygnus.com>
+
+       * ifcvt.c (cond_exec_process_insns): Drop USE and CLOBBER insns
+       that get in the way after reload.
+       (cond_exec_process_if_block): Skip a label heading THEN block.
+
+2000-05-15  Richard Henderson  <rth@cygnus.com>
+
+       * varasm.c (output_constant_pool): Abort instead of converting
+       (improperly) deleted labels to zero.
+
+2000-05-16  Neil Booth  <NeilB@earthling.net>
+
+       * cpplex.c (parse_string2): Update comment.
+       (cpp_lex_line): No special assertion treatment for '('.
+       * cpplib.c (DIRECTIVE_TABLE): Remove SYNTAX_ASSERT.
+       * cpplib.h (SYNTAX_ASSERT): Remove.
+
+Mon May 15 21:45:36 MET DST 2000  Jan Hubicka  <jh@suse.cz>
+
+       * jump.c (condjump_p):  Mark as depreached.
+       (any_condump_p): New.
+       (any_uncondump_p): New.
+       (pc_set): New.
+       (safe_to_remove_jump_p): New.
+       * rtl.h (any_condump_p, any_uncondjump_p, pc_set
+       safe_to_remove_jump_p): Declare.
+
+Mon May 15 21:07:20 MET DST 2000  Jan Hubicka  <jh@suse.cz>
+
+       * calls.c: Re-install both patches reverted by last patch.
+       (struct arg_data): New field tail_call_reg.
+       (initialize_argument_information): Initialize tail_call_reg
+       (load_register_parameters): New argument flags, use
+       tail_call_reg when emiting tail call sequence.
+       (expand_call): Update call of load_register_parameters;
+       copy unadjusted_args_size to adjusted_args_size.
+
+Mon May 15 19:01:42 MET DST 2000  Jan Hubicka  <jh@suse.cz>
+
+       * loop.c (scan_loop, strength_reduce, loop_optimize): Change unroll_p
+       and bct_p parameters to flags.
+       * loop.h (LOOP_UNROLL, LOOP_BCT): New constants.
+       * rtl.h (loop_optimize): Update prototype.
+       * toplev.c (rest_of_compilation): Update call of loop_optimize.
+
+2000-05-15  Jakub Jelinek  <jakub@redhat.com>
+
+       * calls.c (expand_call): Move expand_start_target_temps call after
+       start_sequence().
+
+2000-05-15  Neil Booth  <NeilB@earthling.net>
+
+       * cpphash.c (trad_stringify, warn_trad_stringify,
+       collect_params): Make some pointers pointers to const.
+       * cpplex.c (auto_expand_name_space) Guaranteed to always
+       expand by at least one character.
+       (SPELL_CHAR, SPELL_NONE): Temporarily reverse order.
+       (struct token_spelling): Use const U_CHAR * rather than PTR.
+       (expand_name_space): Fix up token pointers if name space
+       is moved when expanding.
+       (INIT_NAME, cpp_scan_line, parse_name, parse_number,
+       parse_string2, save_comment, spell_token, cpp_output_list):
+       Update so the routines handle tokens with a direct pointer to
+       their text, rather than an offset into the token's list's namebuf.
+       (_cpp_lex_line): Rearrange for clarity.
+
+       * cpplib.c (_cpp_check_directive): Similarly.
+       (do_define): Make SYM a pointer to const.
+       * cpplib.h (struct cpp_name): Replace offset with direct pointer.
+       (CPP_INT, CPP_FLOAT): Spelling type should be SPELL_IDENT.
+       (TOK_OFFSET): Delete.
+       (TOK_NAME): Update.
+
+2000-05-14  Geoffrey Keating  <geoffk@cygnus.com>
+
+       * config/rs6000/rs6000.h (RETURN_ADDRESS_OFFSET): Correct for
+       64-bit ABI.
+
+       * config/rs6000/rs6000.c (logical_operand): Rewrite to take MODE 
+       into account.
+       (logical_u_operand): Delete.
+       (non_logical_cint_operand): Rewrite to take MODE into account.
+       (non_logical_u_cint_operand): Delete.
+       (boolean_operator): New function.
+       (print_operand): Add new %q operand.
+       * config/rs6000/rs6000.h (PREDICATE_CODES): Add boolean_operator,
+       remove logical_u_operand and non_logical_u_cint_operand,
+       update logical_operand and non_logical_cint_operand.
+       * config/rs6000/rs6000.md: Rewrite the patterns for performing
+       logical operations to use %q.
+
+       * config/rs6000/rs6000.md (movsi): Don't modify RTL in-place.
+       (movdi): Make similar to movsi.
+       * config/rs6000/rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): There
+       is no such thing as a DImode CONST_DOUBLE.
+       * config/rs6000/rs6000.c (output_toc): Likewise.
+       
+       * config/rs6000/rs6000.c (output_cbranch): Don't output prediction
+       codes when old mnemonics are in use.  Print register names
+       for cc registers when requested.
+
+       * optabs.c (expand_float): Don't allow mode widening that causes
+       double rounding.
+
+       * invoke.texi (RS/6000 and PowerPC Options): Update -m64/-m32
+       flags to their current names -maix64 and -maix32.
+
+2000-05-14  Bruce Korb  <bkorb@gnu.org>
+
+       * fixinc/fixfixes.c(wrap_fix): new fix - inserts text before
+       and/or after current text of file
+       * fixinc/fixlib.c(must_malloc):
+       * fixinc/fixlib.h(must_malloc): + reformatting
+       * fixinc/inclhack.def: replace the "1i" and "$a" sed commands
+       with usages of ``c_fix = wrap;''
+       Add several tests and use the ``c_fix = format'' fixer more.
+       * fixinc/fixincl.x: regen
+       * fixinc/check.diff: regen
+       * fixinc/check.tpl: emit the associated header with the missing
+       test message
+
+Sun May 14 17:58:59 2000  Hans-Peter Nilsson  <hp@axis.com>
+
+       * mklibgcc.in (building libgcc1) [Xlibgcc1.a]: Do not use unset
+       variables $src and $dst.
+       
+2000-05-13  Gabriel Dos Reis <gdr@codesourcery.com>
+
+       * diagnostic.h (DIAGNOSTICS_SHOW_PREFIX_ONCE): New macro.
+       (DIAGNOSTICS_SHOW_PREFIX_NEVER): Likewise.
+       (DIAGNOSTICS_SHOW_PREFIX_EVERY_LINE): Likewise.
+       (struct output_buffer: emitted_prefix_p, prefixing_rule): New
+       fields. 
+       (set_message_prefixing_rule): Declare.
+
+       * diagnostic.c: (current_prefixing_rule): New variable.
+       (set_message_prefixing_rule): Define.
+       (output_set_prefix): Adjust buffer->emitted_prefix_p.
+       (init_output_buffer): Adjust Initialization.
+       (output_emit_prefix): Rewrite.  Take prefixing rules into account.
+       
+Sat May 13 11:05:47 2000  Philippe De Muyter  <phdm@macqel.be>
+
+       * ifcvt.c (if_convert): Do not free NULL.
+
 2000-05-12  Nick Clifton  <nickc@cygnus.com>
 
        * config/fr30/fr30.c (fr30_move_double): New function:  Emit code
@@ -86,26 +776,32 @@ Fri May 12 19:03:58 2000  Philippe De Muyter  <phdm@macqel.be>
 2000-05-12  Bruce Korb  <bkorb@gnu.org>
 
        * fixinc/fixfixes.c(format_write): buglet & relaxed rules
+       * fixinc/check.diff: updated
+       * fixinc/inclhack.def: corrected & added some test_text-s
+       * fixinc/genfixes: removed unneeded options to autogen invocation
+       * fixinc/fixincl.tpl: Specified the output file
+       * fixinc/fixfixes.c: visual appearance
+       * fixinc/fixincl.x: regenerate
 
 2000-05-12  Zack Weinberg <zack@wolery.cumb.org>
 
-        * fixinc/fixfixes.c (IO_use_fix, IO_defn_fix, CTRL_use_fix,
-        CTRL_defn_fix): Delete.
-        (fix_char_macro_defines, fix_char_macro_uses): Rename to
-        char_macro_def_fix and char_macro_use_fix, respectively.  Put
-        them into the FIXUP_TABLE.  Get the string to search for from
-        a c_fix_arg.
+       * fixinc/fixfixes.c (IO_use_fix, IO_defn_fix, CTRL_use_fix,
+       CTRL_defn_fix): Delete.
+       (fix_char_macro_defines, fix_char_macro_uses): Rename to
+       char_macro_def_fix and char_macro_use_fix, respectively.  Put
+       them into the FIXUP_TABLE.  Get the string to search for from
+       a c_fix_arg.
 
-        (format_write): New function.
-        (format_fix): Use it.
+       (format_write): New function.
+       (format_fix): Use it.
 
-        (FIX_PROC_HEAD): Constify text parameter.
-        (machine_name_fix): Constify all char *s.
-        * fixtests.c (skip_quote): Remove double static.
+       (FIX_PROC_HEAD): Constify text parameter.
+       (machine_name_fix): Constify all char *s.
+       * fixtests.c (skip_quote): Remove double static.
 
-        * inclhack.def (io_def_quotes, io_use_quotes, ctrl_def_quotes,
-        ctrl_use_quotes): Update for new scheme.
-        * fixincl.x: Regenerate.
+       * inclhack.def (io_def_quotes, io_use_quotes, ctrl_def_quotes,
+       ctrl_use_quotes): Update for new scheme.
+       * fixincl.x: Regenerate.
 
 2000-05-12  Alexandre Oliva  <aoliva@cygnus.com>
 
@@ -114,6 +810,11 @@ Fri May 12 19:03:58 2000  Philippe De Muyter  <phdm@macqel.be>
        (DWARF2_ASM_LINE_DEBUG_INFO): Define.
        (ASM_OUTPUT_DWARF2_ADDR_CONST): Define.
 
+2000-05-11  Robert Lipe <robertlipe@usa.net>
+
+       * fixinc/inclhack.def (hpux8_bogus_inlines): Delete bypass for SCO.
+       * fixincl.x: Regenerate.
+
 2000-05-11  Richard Henderson  <rth@cygnus.com>
 
        * calls.c: Revert both 05-09 patches.
@@ -269,9 +970,9 @@ Wed 10 May 09:36:47 2000  Neil Booth  <NeilB@earthling.net>
 
 Wed 10 May 09:08:30 2000  Neil Booth  <NeilB@earthling.net>
 
-        * cpplex.c (_cpp_lex_line): Maintain PREV_WHITESPACE flag
-        when removing escaped newlines.  Reverse sense of test for
-        escaped newline.
+       * cpplex.c (_cpp_lex_line): Maintain PREV_WHITESPACE flag
+       when removing escaped newlines.  Reverse sense of test for
+       escaped newline.
 
 2000-05-09  Richard Henderson  <rth@cygnus.com>
 
@@ -983,17 +1684,17 @@ Thu May  4 09:45:12 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
        MEM_COPY_ATTRIBUTES.
 
 2000-05-03  Robert Lipe <robertlipe@usa.net>
-        
-        * configure.in (i[34567]86-*-isc*) [tmake_file]: Add t-i386bare
-        to suppress libgcc1.
-        (i[34567]86-*-sco3.2v5*) Likewise.
-        (i[34567]86-*-sco3.2v4*) Likewise.
-        (i[34567]86-*-sco) Likewise.
-        (i[34567]86-*-solaris2) Likewise.
-        (i[34567]86-*-sysv5*) Likewise.
-        (i[34567]86-*-sysv4*) Likewise.
-        (i[34567]86-*-udk*) Likewise.
-        (i[34567]86-*-sysv*) Likewise.
+       
+       * configure.in (i[34567]86-*-isc*) [tmake_file]: Add t-i386bare
+       to suppress libgcc1.
+       (i[34567]86-*-sco3.2v5*) Likewise.
+       (i[34567]86-*-sco3.2v4*) Likewise.
+       (i[34567]86-*-sco) Likewise.
+       (i[34567]86-*-solaris2) Likewise.
+       (i[34567]86-*-sysv5*) Likewise.
+       (i[34567]86-*-sysv4*) Likewise.
+       (i[34567]86-*-udk*) Likewise.
+       (i[34567]86-*-sysv*) Likewise.
 
 2000-05-03  Zack Weinberg  <zack@wolery.cumb.org>
 
@@ -1019,14 +1720,14 @@ Thu May  4 09:45:12 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
 Wed May  3 21:01:46 2000  Jason Eckhardt  <jle@cygnus.com>
 
-        * bb-reorder.c (struct reorder_block_def): Member succ removed.
-        (REORDER_BLOCK_SUCC): Removed.
-        (enum reorder_skip_type): Removed.
-        (skip_insns_between_block): Renamed to skip_insns_after_block.
-        Removed second argument. Removed dead code and cleaned up.
-        (make_reorder_chain): Removed use of REORDER_BLOCK_SUCC.
-        (reorder_basic_blocks): Remove use of REORDER_SKIP_AFTER. Removed
-        second parameter to skip_insns_after_block.
+       * bb-reorder.c (struct reorder_block_def): Member succ removed.
+       (REORDER_BLOCK_SUCC): Removed.
+       (enum reorder_skip_type): Removed.
+       (skip_insns_between_block): Renamed to skip_insns_after_block.
+       Removed second argument. Removed dead code and cleaned up.
+       (make_reorder_chain): Removed use of REORDER_BLOCK_SUCC.
+       (reorder_basic_blocks): Remove use of REORDER_SKIP_AFTER. Removed
+       second parameter to skip_insns_after_block.
 
 Wed May  3 13:29:54 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>