Commit Graph

31889 Commits

Author SHA1 Message Date
Richard Henderson 54fef245c0 calls.c (expand_call): Defer const/pure NO_DEFER_POP until after sibcall do_pending_stack_adjust.
* calls.c (expand_call): Defer const/pure NO_DEFER_POP until
        after sibcall do_pending_stack_adjust.

From-SVN: r37836
2000-11-28 16:27:54 -08:00
J"orn Rennecke f423a6a7dd jump.c (delete_insn): Check that REG_LABEL note actually contains a CODE_LABEL.
* jump.c (delete_insn): Check that REG_LABEL note actually contains
	a CODE_LABEL.

From-SVN: r37835
2000-11-29 00:25:08 +00:00
Neil Booth eaf299c6ca c-common.h: Remove flag_digraphs.
* c-common.h: Remove flag_digraphs.
        * c-decl.c: Remove flag_digraphs.
        (c_decode_option): Don't set it.
        * c-lex.c (init_c_lex): Don't do anything for digraphs.

From-SVN: r37834
2000-11-28 23:07:29 +00:00
Richard Henderson 045edebeb3 * com.c (ffecom_member_phase2_): Set TREE_USED on the debugging decl.
From-SVN: r37833
2000-11-28 14:56:31 -08:00
Richard Henderson 7dfe7bd6e9 c-parse.in (finish_parse): Update for parse_in type change.
* c-parse.in (finish_parse): Update for parse_in type change.
        (_yylex): Likewise.

From-SVN: r37832
2000-11-28 14:52:26 -08:00
Franz Sirl 79f41ea419 atomicity.h (__exchange_and_add): Silence preprocessor multi-line string warnings.
2000-11-28  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
	* config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): Silence
	preprocessor multi-line string warnings.
	(__atomic_add): Likewise.
	(__compare_and_swap): Likewise.
	(__always_swap): Likewise.
	(__test_and_set): Likewise.
	* config/cpu/arm/bits/atomicity.h (__exchange_and_add): Likewise.
	(__atomic_add): Likewise.
	(__compare_and_swap): Likewise.
	(__always_swap): Likewise.
	(__test_and_set): Likewise.

From-SVN: r37831
2000-11-28 22:28:49 +00:00
Geoffrey Keating 70cf82bcf5 940510-1.c: Update to test c89 functionality.
* gcc.dg/noncompile/940510-1.c: Update to test c89 functionality.
	Move from here ...
	* gcc.dg/940510-1.c: ... to here.

	* gcc.dg/20000926-1.c: GNU C now allows initializations of
	zero-size arrays in toplevel structures.

From-SVN: r37830
2000-11-28 22:25:51 +00:00
Neil Booth 8dc4676ddb cppmacro.c (cpp_scan_buffer_nooutput): Take a boolean indicating whether to scan all buffers on the stack or just one.
* cppmacro.c (cpp_scan_buffer_nooutput): Take a boolean
        indicating whether to scan all buffers on the stack or
        just one.
        * cppinit.c (do_includes): Update.
        * cppmain.c (main): Update.
        * cpplib.h: Update prototype.

From-SVN: r37829
2000-11-28 21:34:30 +00:00
Richard Henderson c77e04ae3a genoutput.c (validate_insn_operands): New.
* genoutput.c (validate_insn_operands): New.
        (gen_insn): Call it.

        * config/alpha/alpha.md (divmodsi_internal): Renumber operands.
        (divmoddi_internal): Likewise.
        * config/arm/arm.md (andsi3_compare0_scratch): Likewise.
        * config/i960/i960.md (branch patterns): Likewise.
        * config/ia64/ia64.md (tbit_and_0): Likewise.
        (tbit_and_1, tbit_or_0, tbit_or_1): Likewise.
        * config/m68k/m68k.md (zero_extract memory patterns): Likewise.
        * config/mips/mips.md (divmodsi4_internal): Likewise.
        (divmoddi4_internal): Likewise.
        * config/rs6000/rs6000.md (call patterns): Likewise.
        * config/sh/sh.md (movsi_y): Likewise.
        * config/sparc/sparc.md: Comment out if 0 v8p shift pattern.

From-SVN: r37828
2000-11-28 13:31:47 -08:00
Richard Henderson 79bc466955 * config.gcc: Kill residual pyramid support.
From-SVN: r37827
2000-11-28 13:23:58 -08:00
Neil Booth cf44ea5231 c-lex.h (parse_in): Change parse_in to a cpp_reader *.
* c-lex.h (parse_in): Change parse_in to a cpp_reader *.
	* c-decl.c (c_decode_option): Update to match.
	* c-lex.c (init_c_lex, yyparse): Update to match.
	* c-lang.c (lang_init_options): Use cpp_create_reader.
	* cppinit.c (cpp_init): Rename initialize.
	(cpp_reader_init): Rename cpp_create_reader.  Create the
	reader.  Initialize cpplib if appropriate.
	* cpplib.h (cpp_create_reader) New prototype.
	(cpp_init, cpp_reader_init): Delete prototypes.
	* cppmain.c (general_init, setup_callbacks): New functions.
	(main): Use them.
	* fix-header.c (scan_in): Change type to cpp_reader *.
	(read_scan_file): Update for new cpplib interface and scan_in type.

	* cp/decl.c (parse_in): Change to cpp_reader *.
	(lang_decode_option): Update.
	* cp/lex.c (lang_init_options): Use new cpplib interface.
	(init_cp_pragma, finish_parse, handle_pragma_implementation): Update.
	* cp/spew.c (read_token): Update.
	* objc/objc-act.c (lang_init_options): Update new cpplib interface.

From-SVN: r37826
2000-11-28 21:13:35 +00:00
Benjamin Kosnik 74d2f859d2 Update for 2.91 release.
2000-11-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	Update for 2.91 release.
	* include/bits/c++config (__GLIBCPP__): Update.
	* docs/17_intro/RELEASE-NOTES: Update.
	* docs/status.html: Update, remove bogus autotools disinformation.

From-SVN: r37825
2000-11-28 20:33:39 +00:00
Warren Levy 1326d0c47d DateFormatSymbols.java (zoneStringsDefault): Added more time zone entries.
* java/text/DateFormatSymbols.java (zoneStringsDefault): Added
	more time zone entries.
	* java/text/SimpleDateFormat.java (format): Added case for
	TIMEZONE_FIELD.

From-SVN: r37824
2000-11-28 20:11:46 +00:00
Jakub Jelinek 48c4d691be loop.c (load_mems): Avoid using next_label to find end_label.
* loop.c (load_mems): Avoid using next_label to find end_label. If
	jumping outside of the loop (other than loop end), don't hoist MEMs
	out of loop.

	* gcc.c-torture/execute/loop-8.c: New test.

From-SVN: r37823
2000-11-28 20:44:30 +01:00
Jan Hubicka fb158467a9 calls.c (expand_call): Don't disable tail recursion based on the loop nest.
* calls.c (expand_call): Don't disable tail recursion based
        on the loop nest.

From-SVN: r37822
2000-11-28 11:34:59 -08:00
Geoffrey Keating 8a0dd1b1a9 gen-params: Put in cases for O_EXCL, O_APPEND not being defined.
2000-11-28  Geoffrey Keating  <geoffk@redhat.com>
	    Felix Lee  <flee@redhat.com>

	* gen-params: Put in cases for O_EXCL, O_APPEND not being defined.

Co-Authored-By: Felix Lee <flee@redhat.com>

From-SVN: r37821
2000-11-28 19:31:16 +00:00
Neil Booth 40bd439555 tradcpp.c (enum node_type): New hash types T_ASSERT, T_UNASSERT.
* tradcpp.c (enum node_type): New hash types T_ASSERT, T_UNASSERT.
        (struct directive): Drop 4th argument from handlers.
        (do_define, do_line, do_include, do_undef, do_else, do_elif,
        do_endif): Similarly.
        (do_assert, do_unassert, do_ifdef, do_ifndef): New handlers.
        (do_ifxdef): Update as common handler of do_ifdef and do_ifndef.
        (make_definition, make_undef): Take a const char*.
        (make_assertion): New function.
        (struct directive_table): Update.
        (main): Handle -A command line argument.
        (handle_directive): Drop fourth handler argument.

From-SVN: r37820
2000-11-28 19:14:16 +00:00
Bernd Schmidt 77ea49a494 Ignore SETs that are anything except REG or MEM, but look inside STRICT_LOW_PART.
From-SVN: r37819
2000-11-28 16:19:55 +00:00
Richard Kenner c5c0b3d96c system.h (IS_DIR_SEPARATOR): Use uppercase macro name.
* system.h (IS_DIR_SEPARATOR): Use uppercase macro name.
	(IS_ABSOLUTE_PATHNAME): New macro.
	* gcc.c (find_a_file, process_command, do_spec_1, main): Use it.

From-SVN: r37818
2000-11-28 09:58:08 -05:00
Nathan Sidwell bb92901dc0 parse.y (base_class.1): Produce a _TYPE not a _DECL.
cp:
	* parse.y (base_class.1): Produce a _TYPE not a _DECL.
	* semantics.c (finish_base_specifier): Accept a _TYPE not a
	_DECL.
testsuite:
	* g++.old-deja/g++.other/base1.C: New test.

From-SVN: r37817
2000-11-28 10:31:09 +00:00
Nathan Sidwell 2f3608c33e spew.c (yyerror): Cope if yylval.ttype is NULL.
cp:
	* spew.c (yyerror): Cope if yylval.ttype is NULL.
testsuite:
	* g++.old-deja/g++.other/parse2.C: New test.

From-SVN: r37816
2000-11-28 10:23:03 +00:00
Nathan Sidwell eeb753839f decl.c (grokdeclarator): Diagnose undefined template contexts.
cp:
	* decl.c (grokdeclarator): Diagnose undefined template contexts.
testsuite:
	* g++.old-deja/g++.pt/incomplete1.C: New test.

From-SVN: r37815
2000-11-28 10:18:25 +00:00
Nathan Sidwell 5ee4cc26fb decl.c (grokdeclarator): Do type access control on friend class.
cp:
	* decl.c (grokdeclarator): Do type access control on friend
	class.
testsuite:
	* g++.old-deja/g++.other/friend9.C: New test.

From-SVN: r37814
2000-11-28 10:06:16 +00:00
Benjamin Kosnik 8ce10512a9 tests_flags.in (LTCXX): Change CXX_FLAG to CXXFLAGS.
2000-11-27  Benjamin Kosnik  <bkoz@redhat.com>

	* tests_flags.in (LTCXX): Change CXX_FLAG to CXXFLAGS.

	* testsuite/22_locale/ctor_copy_dtor.cc: Adjust formatting.
	* testsuite/27_io/istream_extractor_arith.cc (test11): New
	testcase, based on libstdc++/90.

From-SVN: r37813
2000-11-28 09:34:08 +00:00
Jakub Jelinek dd80b90606 i386.md (truncxfsf2_2): Fix predicate.
* config/i386/i386.md (truncxfsf2_2): Fix predicate.

	* gcc.dg/20001127-1.c: New test.

From-SVN: r37812
2000-11-28 10:04:27 +01:00
Jeff Law b0bff859ae Daily bump.
From-SVN: r37811
2000-11-28 01:45:07 -07:00
Bryce McKinlay 53a4b7891b DataInputStream.java: Merge classpath docs.
2000-11-28  Bryce McKinlay  <bryce@abatross.co.nz>

	* java/io/DataInputStream.java: Merge classpath docs. Call in.read()
	directly rather than read() in all cases. Make primitive read
	implementations	more efficient, as defined in JDK online docs.
	(skipBytes): Behave like the JDK's implementation.
	* java/io/BufferedReader.java: Merge classpath docs. Check for a
	closed stream with checkStatus() whenever an IOException can be
	thrown.
	(checkStatus): New private method.

From-SVN: r37810
2000-11-28 04:50:51 +00:00
Jim Wilson 102870fb8f Handle frame sizes larger than int.
* reload1.c (reload): Use HOST_WIDE_INT for old_frame_size.

From-SVN: r37809
2000-11-27 19:17:22 -08:00
Warren Levy a22add7268 Makefile.am: Added natTimeZone.cc.
* Makefile.am: Added natTimeZone.cc.
	* Makefile.in: Rebuilt.
	* gnu/gcj/text/LocaleData_en.java: Added DateFormat entries.
	* java/text/DateFormatSymbols.java (ampms): Made package private.
	(eras): Made package private.
	(months): Made package private.
	(shortMonths): Made package private.
	(shortWeekdays): Made package private.
	(weekdays): Made package private.
	(formatPrefixes): New private field.
	(localPatternCharsDefault): Made private.
	(dateFormats): New package private field.
	(timeFormats): New package private field.
	(formatsForKey): New private method.
	(DateFormatSymbols(Locale)): Set dateFormats and timeFormats.
	(DateFormatSymbols(DateFormatSymbols)): Ditto.
	* java/text/SimpleDateFormat.java: Merged with Classpath.
	* java/util/TimeZone.java: Merged with Classpath.
	* java/util/natTimeZone.cc: New file.

From-SVN: r37808
2000-11-28 03:09:22 +00:00
Matthias Klose 9734e80cad * extend.texi (Nested Functions): Update URL of Usenix paper.
From-SVN: r37807
2000-11-27 23:58:36 +00:00
Mark Mitchell cf77f15f54 * function.c (free_after_compilation): Clear x_clobber_return_insn.
From-SVN: r37806
2000-11-27 20:14:21 +00:00
Franz Sirl 079c384ce3 atomicity.h (__exchange_and_add): Add __volatile__ to asm.
2000-11-27  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
	* config/cpu/arm/bits/atomicity.h (__exchange_and_add): Add
	__volatile__ to asm.
	(__atomic_add): Likewise.
	(__compare_and_swap): Likewise.
	(__always_swap): Likewise.
	(__test_and_set): Likewise.

From-SVN: r37805
2000-11-27 20:07:17 +00:00
Neil Booth 6a6b162822 cppinit.c (cpp_reader_init): Remove handling of warn_paste command line options.
* cppinit.c (cpp_reader_init): Remove handling of warn_paste
        command line options.
        (cpp_handle_option): Similarly.
        * cpplib.h (struct cpp_options): Remove warn_paste.
        * cppmacro.c (paste_tokens): Apart from assembler, make
        unpasteable token warning mandatory.

From-SVN: r37804
2000-11-27 19:08:36 +00:00
Neil Booth fb6a7b08a8 tradcpp.c (enum pending_dir_t, [...]): New.
* tradcpp.c (enum pending_dir_t, struct pending_dir): New.
        (main): Allocate a pending directive set of these.  Use it.
        Merge handling of -D and -U.  Update handling of pending
        directives.  Free the memory after use.

From-SVN: r37803
2000-11-27 19:04:54 +00:00
Franz Sirl 6bd7b1bb37 atomicity.h: Replace '__ATOMICITY_INLINE' with 'inline'.
2000-11-27  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

        * config/cpu/powerpc/bits/atomicity.h: Replace '__ATOMICITY_INLINE'
        with 'inline'.
        (__ex__atomic_add): Add __volatile__ to asm.
        (__atomic_add): Likewise.
        (__compare_and_swap): Likewise.
        (__always_swap): Likewise.
        (__test_and_set): Likewise.

From-SVN: r37802
2000-11-27 18:17:40 +00:00
Bernd Schmidt 7dfc0fbe59 While building global lifetime information, keep track of which registers are only conditionally set.
While building global lifetime information, keep track of which registers are
only conditionally set.  Use this to force rescans in more cases where they
are needed.

From-SVN: r37801
2000-11-27 17:50:11 +00:00
Kaz Kojima 5f6fa21226 sh.md (udivsi3_i4, [...]): Clobber T register.
* gcc/config/sh/sh.md (udivsi3_i4, udivsi3_i4_single): Clobber
	T register.

From-SVN: r37800
2000-11-27 17:32:05 +00:00
Richard Earnshaw 8bb9536a39 arm.c (select_dominance_cc_mode): Handle new way that combine canonicalizes conditional compares.
* arm.c (select_dominance_cc_mode): Handle new way that combine
canonicalizes conditional compares.
(arm_select_cc_mode): Likewise.
* arm.md: Garbage collect some dead code.
(cmp_and, cmp_ior): New patterns.
(splitter for conditional move with inverted false): Use cond_exec
and handle unordered comparisons.

From-SVN: r37799
2000-11-27 16:40:08 +00:00
Richard Earnshaw 1646cf412a ChangeLog
From-SVN: r37798
2000-11-27 16:29:52 +00:00
Jan Hubicka 4211a8fbc3 i386.c (ix86_force_to_memory, [...]): New.
* i386.c (ix86_force_to_memory, ix86_free_from_memory): New.
	* i386-protos.h (ix86_force_to_memory, ix86_free_from_memory): Declare
	* i386.md (float?i?f, int/fp operations): Rewrite spliters to use
	ix86_force_to_memory and ix86_free_from_memory.

From-SVN: r37797
2000-11-27 16:23:27 +00:00
Richard Earnshaw bb6ae7836a arm.md (arm_adddi3, [...]): Merge with splitters to create define_insn_and_split patterns.
* arm.md (arm_adddi3, adddi_sesidi_di, adddi_zesidi_di, arm_addsi3,
arm_subsi3_insn, anddi_zesidi_di, arm_andsi3_insn, anddi_notdi_di,
anddi_notzesidi_di, anddi_notsesidi_di, arm_iorsi3,
one_cmpldi2): Merge with splitters to create define_insn_and_split
patterns.  Remove redundant splits.
(peephole2 for add:SI of invalid immediate): New.
(peephole2 for minus:SI of invalid immediate): New.
(peephole2 for ior:SI of invalid immediate): New.
(peephole for merge of move and compare): Convert ot peephole2.
(addsf3, adddf3): Mark as commutative.

* arm.md (thumb peephole for merging stack adjustments): Convert to
peephole2.

From-SVN: r37796
2000-11-27 16:01:29 +00:00
Bernd Schmidt 375de5b62f Prettier visualization of COND_EXECs
From-SVN: r37795
2000-11-27 15:08:08 +00:00
Bernd Schmidt 7dbe6ae9b3 Re-apply an earlier fix, with a small update
From-SVN: r37794
2000-11-27 14:42:54 +00:00
Nathan Sidwell 76e57b4589 decl.c (grokfndecl): Undo COMPONENT_REF damage caused by bison parser ickiness.
cp:
	* decl.c (grokfndecl): Undo COMPONENT_REF damage caused by
	bison parser ickiness.
	* pt.c (tsubst_friend_function): Enter namespace scope when
	tsubsting the function name.
	* cp-tree.h (DECL_TI_TEMPLATE): Update comment to reflect reality.
testsuite:
	* g++.old-deja/g++.other/friend46.C: New test.

From-SVN: r37793
2000-11-27 12:53:38 +00:00
Bernd Schmidt 70bbeb8b66 In cselib, do not consider constants with different modes equivalent.
From-SVN: r37792
2000-11-27 11:43:32 +00:00
Nathan Sidwell f98251686f cp-tree.h (binfo_from_vbase): Return the virtual base's binfo.
cp:
	* cp-tree.h (binfo_from_vbase): Return the virtual base's binfo.
	* cvt.c (cp_convert_to_pointer): Add force parameter.
	Allow conversions via virtual base if forced.
	(convert_to_pointer_force): Adjust call to cp_convert_to_pointer.
	(ocp_convert): Likewise.
	* search.c (binfo_from_vbase): Return the virtual base's binfo.
	* typeck.c (get_delta_difference): Adjust handling of virtual
	bases.
testsuite:
	* g++.old-deja/g++.other/ptrmem8.C: New test.

From-SVN: r37791
2000-11-27 10:55:32 +00:00
Alexandre Oliva 6b2adea9b7 configure.in (extra_objs): Enclose extra_headers in quotes.
* configure.in (extra_objs): Enclose extra_headers in quotes.
* configure: Rebuilt.

From-SVN: r37790
2000-11-27 10:16:16 +00:00
Gabriel Dos Reis f6b60eb426 tests_flags.in: Update documentation to reflect the change below.
2000-11-27  Gabriel Dos Reis  <gdr@codesourcery.com>

	* tests_flags.in: Update documentation to reflect the change
	below.

From-SVN: r37789
2000-11-27 10:01:52 +00:00
Anthony Green 70b642b439 MIssing ChangeLog entry for my last commits.
From-SVN: r37788
2000-11-27 08:48:38 +00:00
Jeff Law 6fe719f785 Daily bump.
From-SVN: r37787
2000-11-27 01:45:08 -07:00