OSDN Git Service

2000-10-02 David O'Brien <obrien@dragon.nuxi.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index b4d4ba5..0c964c3 100644 (file)
@@ -1,3 +1,320 @@
+2000-10-02  David O'Brien  <obrien@dragon.nuxi.com>
+
+       * config/i386/freebsd.h (NO_PROFILE_COUNTERS): Define.
+
+2000-10-01  Mark Mitchell  <mark@codesourcery.com>
+
+       * config/ns32k/genix.h: Remove.
+       * config/ns32k/x-genix: Likewise.
+       * config/ns32k/xm-genix.h: Likewise.
+       * config/fx80: Remove all filee in directory.
+       * config/pyr: Likewise.
+       * config/tahoe: Likewise.
+       * config/gmicro: Likewise.
+       * config/spur: Likewise.
+       * configure.in: Remove configury bits for above targets.
+       * configure: Regenerated.
+       
+       * configure.in: Don't configure chill by default.
+       * configure: Regenerated.
+       
+       * c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only.
+       (lang_mark_false_label_stack): Remove.
+       * c-lex.c (init_c_lex): Add file_info_tree as GC root.  Allocate
+       <top level> string in GC area.
+       (mark_splay_tree_node): New function.
+       (mark_splay_tree): Likewise.
+       * except.c (mark_eh_status): Only call lang_mark_false_label_stack
+       if it exists.
+       * ggc-callbacks.c (lang_mark_false_label_stack): Remove.
+       * ggc-common.c (lang_mark_false_label_stack): Change type.
+       * ggc.h (ggc_alloc_string): Add comment.
+       (ggc_strdup): New function.
+       
+Sat Sep 23 19:10:20 2000  Denis Chertykov  <denisc@overta.ru>
+
+       * config/avr/avr.h (BRANCH_COST): Define as 0.
+
+       * config/pdp11/pdp11.c: #include "tree.h" added.
+
+2000-09-30  Marek Michalkiewicz  <marekm@linux.org.pl>
+
+       * config/avr/avr.c (ashlhi3_out, ashlsi3_out, ashrhi3_out,
+       ashrsi3_out, lshrhi3_out, lshrsi3_out): Optimize more cases
+       with known shift count.
+       * config/avr/avr.md (ashlsi3, ashrsi3, lshrsi3):
+       New alternative for shift count 2 with no scratch register.
+       (ashlhi3, ashlsi3): Change "cc" attribute from "clobber" to
+       "set_n" for shift counts 1 and 2.
+
+2000-09-30  Geoff Keating  <geoffk@cygnus.com>
+
+       * config/rs6000/rs6000.md (movsi_to_cr): Remove the USE.  Calculate
+       the mask value from the individual SET operations.
+       (return_internal_si): Move the USE after the RETURN.
+       (return_internal_di): Likewise.
+       (return_and_restore_fpregs_si): Likewise.
+       (return_and_restore_fpregs_di): Likewise.
+       (return_eh_si): Likewise.
+       (return_eh_di): Likewise.
+       * config/rs6000/rs6000.c (mtcrf_operation): Don't look for,
+       or check, the USE.
+       (rs6000_emit_prologue): Don't emit the USE for movsi_to_cr.
+       Don't generate a PARALLEL around a single operation movsi_to_cr.
+       Generate the RETURN first in any PARALLELs.
+
+       * rtlanal.c (single_set_1): Use fatal_insn to display the
+       invalid insn.  Check for more cases when a USE or CLOBBER occurs
+       before a SET.
+       * Makefile.in: Update dependencies for rtlanal.o.
+
+2000-09-30  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * i386.c: Move include of "config.h" to before that of <setjmp.h>.
+
+2000-09-30  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * c-tree.texi, contrib.texi, gcc.texi, install.texi, invoke.texi:
+       Consistently use @email for formatting email addresses.
+
+2000-09-29  Richard Henderson  <rth@cygnus.com>
+
+       * cse.c (notreg_cost): New argument outer.
+       (COST): Pass in SET to notreg_cost
+       (COST_IN): New.
+       (fold_rtx): Use COST_IN.  Prefer constants when costs
+       are the same.
+
+2000-09-29  David Edelsohn  <edelsohn@gnu.org>
+
+       * fixinc/inclhack.def (broken_cabs): Generalize regex.
+       * fixinc/fixincl.x: Regenerate.
+
+2000-09-29  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
+
+       * loop.c (check_final_value): A GIV is not replaceable if used
+       before set.
+
+Fri Sep 29 10:04:12 2000  Jeffrey A Law  (law@cygnus.com)
+
+       * version.c: Bump to gcc-2.97.
+
+Frs Sep 29 13:37:59 MET DST 2000  Jan Hubicka  <jh@suse.cz>
+
+       * final.c (final_scan_insn): Remove extra extract_insn call;
+       Use caching for constrain_operands.
+       (cleanup_subreg_operands): Use caching for extract_insn.
+       * recog.c (constrain_operands_cached): New.
+       * recog.h (constrain_operands_cached): Declare.
+       * i386.c (ix86_attr_length_immediate_default,
+       ix86_attr_length_address_default, ix86_agi_dependant): Cache
+       extract_insn call.
+
+       * recog.c (asm_noperands): Tweak.
+       (extract_insn): Do not call asm_noperads for non-asm instructions.
+
+Fri Sep 29 13:20:42 MET DST 2000  Jan Hubicka  <jh@suse.cz>
+
+       * recog.c (recog_memoized): Rename to recog_memoized_1.
+       * recog.h (recog_memoized): Rename to recog_memoized_1.
+       (recog_memoized): New macro.
+       * rtl.h (single_set): Rename to single_set_1
+       (single_set): New macro.
+       * rtlanal.c (single_set): Rename to single_set_1;  expect clobbers
+       to be last.
+
+       * i386.md (strmovsi_1, strmovhi_1 strmovqi_1):
+       Do not use match_dup of input operands at outputs.
+       Use register_operand for memory expression.
+       (rep_movsi): Put use last, canonicalize.
+       Use register_operand for memory expression.
+       (rep_movqi): Put use last.
+       Use register_operand for memory expression.
+       (strsetsi_1, strset_hi_1, strsetqi_1): Do not use match_dup
+       of input operands at outputs.  Use register_operand for memory
+       expression.
+       (rep_stossi): Put use last; canonicalize; fix match_dup in
+       the address expression
+       (rep_stosqi): Likewise.
+       (memcmp expander): Update calls.
+       (cmpstrsi_nz_1, cmpstrsi_1, strlensi_1): Avoid match_dups in
+       the clobbers.
+
+       * i386.md (fp_jcc_3, fp_jcc_4, jp_fcc_5): if_then_else operand is
+       VOIDmode.
+       (fp_jcc_4, fp_jcc_3): Refuse unordered comparisons.
+
+2000-09-28  David O'Brien  <obrien@FreeBSD.org>
+
+       * config/i386/freebsd-aout.h: New, FreeBSD a.out config file.
+       Contains the old contents of config/i386/freebsd.h
+       * config/i386/freebsd.h: Now the ELF rather than a.out config file.
+       Contains the old contents of config/i386/freebsd-elf.h
+       * config/i386/freebsd-elf.h: Retire this file -- contents moved to
+       config/i386/freebsd.h.
+       * configure.in: Adjust for above changes.
+       * po/POTFILES.in: Likewise.
+       * po/en_GB.po: Likewise.
+       * po/gcc.pot: Likewise.
+       * configure: Rebuilt.
+
+2000-09-28  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
+
+       * doloop.c (doloop_modify): Prevent delete_insn() from
+       deleting too much.  Prefer loop->top over loop->start as
+       target for the new JUMP insn.
+       (doloop_valid_p): Ignore loop with exit_count != 0.
+
+2000-09-28  Philipp Thomas  <pthomas@suse.de>
+
+       * invoke.texi (i386 Options): Add athlon to table of possible
+       choices for -mcpu=.
+
+2000-09-28  Gabriel Dos Reis  <gdr@codesourcery.com>
+
+       * diagnostic.h (output_clear_message_text): New function.
+       (output_message_text): New macro.
+
+       * diagnostic.c (clear_text_info): Rename to
+       output_clear_message_text. 
+       (output_clear): Adjust.
+       (output_finish): Rename to output_finalize_message.  Tweek.
+       (output_to_stream): Adjust. 
+
+2000-09-28  Neil Booth  <neilb@earthling.net>
+
+       * cpperror.c (_cpp_begin_message):  Do the test for suppression
+        of warnings and pedantic warnings before the "is a warning an
+        error" tests.
+       * cppinit.c (cpp_handle_option): Remove surplus \n.
+       * cpplex.c (ON_REST_ARG): Delete.
+       (skip_block_comment): Initialise prevc.
+       (parse_args): Improve error messages.
+       (maybe_paste_with_next): Use CONTEXT_VARARGS rather
+       than ON_REST_ARG.
+       * cpplib.c (cpp_push_buffer): Fix grammar in message.
+       * cppmain.c (main): Set callbacks for #ident and #pragma
+       only if no_output option is false.
+       (do_pragma_implementation): Only call the #pragma handler
+       if it is set in the cpp_reader structure.
+
+Wed Sep 27 14:00:07 2000  Donald Lindsay  <dlindsay@cygnus.com>
+
+       * integrate.c (copy_insn_list): if an ignored return value
+       is being clobbered, skip cloning that into the inline copy.
+
+2000-09-27  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * extend.texi, invoke.texi, gcc.texi, install.texi: Consistently
+       use @uref for formatting URLs.
+
+2000-09-27  Mark Elbrecht  <snowball3@bigfoot.com>
+
+       * config/i386/djgpp.h (UNIQUE_SECTION): Constify the variables
+       name and prefix.
+
+Tue 26-Sep-2000 18:25:38 BST  Neil Booth  <neilb@earthling.net>
+
+       * gcc.c (cpp_options): Add spec for -ftabstop=.
+       (invoke_as): New spec that handles invoking as.
+       Update specs to handle -save-temps and -traditional.
+       * ch/lang-specs.h, f/lang-specs.h, java/lang-specs.h:
+       Use invoke_as.
+       * cp/lang-specs.h, objc/lang-specs.h: Update to use
+       invoke_as, and handle -save-temps and -traditional (if
+       appropriate).
+
+2000-09-26  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/sparc/sparc.c (sparc_emit_set_const64): Don't abort when
+       op0 is a SUBREG.
+       (function_arg_slotno): Accept TImode/CTImode.
+       * config/sparc/sparc.h (MIN_UNITS_PER_WORD): If IN_LIBGCC2 define
+       to UNITS_PER_WORD.
+
+2000-09-26  Michael Hayes  <mhayes@cygnus.com>
+
+       * flow.c (flow_loop_pre_header_scan): Punt if loop enters
+       from entry block.
+
+2000-09-25  Jim Wilson  <wilson@cygnus.com>
+
+       * config/ia64/ia64.h (INDEX_REG_CLASS): Define to GENERAL_REGS.
+       (REGNO_OK_FOR_INDEX_P): Define to REGNO_OK_FOR_BASE_P.
+       (LEGITIMATE_ADDRESS_DISP): Use LEGITIMATE_ADDRESS_REG.
+       (REG_OK_FOR_INDEX): Define to REG_OK_FOR_BASE_P.
+
+Tue 26-Sep-2000 00:16:22 BST  Neil Booth  <neilb@earthling.net>
+
+        * cpplex.c (parse_args): Don't set VOID_REST flag.
+       (CONTEXT_VARARGS): New flag.
+       (maybe_paste_with_next): Set context earlier in loop.  Use
+       it.  Do varargs test with CONTEXT_VARARGS flag.
+       (push_arg_context): Set CONTEXT_VARARGS flag if we're
+       pushing an argument context for a varargs argument.
+       * cpplib.h (VOID_REST): Delete.
+       * gcc.dg/cpp/vararg1.c: Add test case.   
+
+2000-09-25  Branko Cibej  <branko.cibej@hermes.si>
+
+        * flags.h:  Declare warning flag warn_system_headers.
+        * toplev.c:  Define it.
+        (W_options): Add option -Wsystem-headers.
+        * diagnostic.c (count_error): Test warn_system_headers.
+        * invoke.texi:  Add description for -Wsystem-headers.
+       * cpplib.h (cpp_options): New member warn_system_headers.
+       * cpphash.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Don't test
+       CPP_IN_SYSTEM_HEADER.
+       * cpplib.c (do_import, do_pragma_once): Likewise.
+       * cpperror.c (_cpp_begin_message): Test warn_system_headers
+       and CPP_IN_SYSTEM_HEADER.
+       * cppinit.c (handle_option): Recognize -Wsystem_headers.
+       (print_help): Describe -Wsystem_headers.
+       * cpplex.c (lex_line): Reorganize condition so that warnings
+       about C++ comments in system headers can be enabled. Remove
+       label do_line_comment.
+
+Mon 25-Sep-2000 23:38:27 BST  Neil Booth  <neilb@earthling.net>
+
+       * cpplex.c (save_comment): Only store the initial '/'
+       now.
+       (lex_token): Combine handling of the two comment types.
+       Pass everything but the initial '/' to save_comment.    
+
+Mon 25-Sep-2000 23:31:45 BST  Neil Booth  <neilb@earthling.net>
+
+       * cpphash.h (_cpp_digraph_spellings, _cpp_process_directive,
+       _cpp_can_paste): New library-internal prototypes.
+       * cpplex.c (dump_param_spelling, output_line_command,
+       output_token, cpp_scan_buffer, cpp_scan_buffer_nooutput,
+       cpp_printf, cpp_output_list): Move to cppoutput.c.
+       (process_directive, can_paste, digraph_spellings): Add _cpp_ prefix.
+       * cppmacro.c (dump_macro_args, cpp_dump_definition) Move to
+       cppoutput.c.
+       * cppoutput.c (dump_macro_args, cpp_dump_definition, output_token,
+       dump_param_spelling, output_line_command, cpp_scan_buffer,
+       cpp_scan_buffer_nooutput, cpp_printf, cpp_output_list): Moved
+       from elsewhere.
+       * Makefile.in: Add cppoutput.c.
+       * po/POTFILES.in: Add cppoutput.c.
+
+2000-09-25  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/ia64.c (ia64_print_operand): Define 'e' as 64-n.
+       * config/ia64/ia64.md (rotrsi3): Allow variable rotates; don't
+       split until after reload.
+       (rotlsi3, rotldi3): New.
+
+2000-09-25  Gabriel Dos Reis  <gdr@codesourcery.com>
+
+       * diagnostic.c (output_last_position): Define.
+       (set_real_maximum_length): Tweek.
+       * diagnostic.h (output_last_position): Declare.
+
+2000-09-25  Kazu Hirata  <kazu@hxi.com>
+
+       * config/i386/i386.c: Fix formatting.
+
 2000-09-24  Alan Lehotsky  <alehotsky@cygnus.com>
 
        * emit-rtl-c (gen_lowpart_common): Accept non-paradoxical SUBREG when