Commit Graph

31876 Commits

Author SHA1 Message Date
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
Anthony Green 21434cfc60 More new classes.
From-SVN: r37786
2000-11-27 08:44:59 +00:00
Bryce McKinlay f24dbacf85 Vector.java (ensureCapacity): Don't increment modCount.
2000-11-27  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/util/Vector.java (ensureCapacity): Don't increment modCount.
	(addElement): Don't increment elementCount twice. Doh.
	* java/util/ArrayList.java (add): Only call ensureCapacity if the
	array needs to be expanded.
	(addAll): Ditto.
	* java/util/Collections.java (UnmodifiableCollection): Implement
	toString().
	(UnmodifiableList): Throw UnsupportedOperationException from
	modification methods. Set `l' from the one-parameter constructor.
	(UnmodifiableMap): Implement toString().
	(SynchronizedCollection): Ditto.
	(SynchronizedList): Set `l' from the one-parameter constructor.
	(SynchronizedSortedSet): Set `ss' from the one-parameter constructor.
	(SynchronizedMap): Implement toString().

From-SVN: r37785
2000-11-27 08:30:26 +00:00
Neil Booth 27e2564ac8 c-lex.c (cb_enter_file, [...]): Combine into the new function cb_change_file.
* c-lex.c (cb_enter_file, cb_leave_file, cb_rename_file):
        Combine into the new function cb_change_file.
        (init_c_lex): Update.
        * cppfiles.c (stack_include_file): Use _cpp_do_file_change.
        (cpp_syshdr_flags): Delete.
        * cpphash.h (_cpp_do_file_change): New prototype.
        Move struct cpp_buffer here from...
        * cpplib.h (struct cpp_buffer): ... here.
        (enum cpp_fc_reason, struct cpp_file_loc,
        struct_cpp_file_change, change_file): New.
        (enter_file, leave_file, rename_file, cpp_syshdr_flags): Delete.
        * cpplib.c (do_line): Update for new cb_change_file callback.
        (_cpp_do_file_change): New function.
        (_cpp_pop_buffer): Update to use it.
        * cppmain.c (move_printer): Delete.
        (main): Set up single callback cb_change_file.
        (cb_enter_file, cb_leave_file, cb_rename_file): Delete.
        (cb_change_file): New.
        * fix-header.c (cur_file, cb_change_file): New.
        (recognized_function, read_scan_file): Update.
        * scan-decls.c (scan_decls): Update.
        * scan.h (recognized_function): Update prototype.

From-SVN: r37784
2000-11-27 08:00:04 +00:00
Mark Mitchell 9ccb25d582 tree.h (mark_tree_hashtable): New function.
* tree.h (mark_tree_hashtable): New function.
	* tree.c (mark_tree_hashtable_entry): New function.
	(mark_tree_hashtable): Likewise.

	* tree.c (struct list_hash): Remove.
	(list_hash_table): Make it be an htab.
	(struct list_proxy): New type.
	(list_hash_eq): New function.
	(list_hash_pieces): Renamed from ...
	(list_hash): ... this.
	(list_hash_lookup): Remove.
	(list_hash_add): Remove.
	(hash_tree_cons): Use the generic hashtable.
	(mark_list_hash): Remove.
	(init_tree): Create the hashtable.

From-SVN: r37783
2000-11-27 07:09:20 +00:00
Anthony Green ea8136058d Replace stubs with actual implementation
From-SVN: r37782
2000-11-27 06:50:18 +00:00
Michael Meissner 5fcd86dd2e Fix rename registers problem; Rewrite 64-bit conditionals in terms of COND_EXEC instead of IF_THEN_ELSE
From-SVN: r37781
2000-11-27 06:18:24 +00:00
Benjamin Kosnik c383aafd3a [multiple changes]
2000-11-26  Benjamin Kosnik  <bkoz@fillmore.constant.com>

	* tests_flags.in: Export CXX, CXXFLAGS.
	* mkcheck.in: Grab them.

2000-11-26  David Billinghurst  <David.Billinghurst@riotinto.com>
	    Benjamin Kosnik  <bkoz@redhat.com>

        * mkcheck.in: Add exe extension to printnow executable, abstract
	out call to this with TIMER_COMMAND.
	* configure.target (l_glibcpp_cxxflags): Add cygwin support.
	* acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Correct paths.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

From-SVN: r37780
2000-11-27 06:04:16 +00:00
Anthony Green e36b9711fb More JNDI changes.
From-SVN: r37779
2000-11-27 05:57:58 +00:00
Kaveh Ghazi 1789599b3d ChangeLog for:
testsuite:
        * gcc.c-torture/execute/string-opt-7.c: New test.
        * gcc.c-torture/execute/string-opt-8.c: Likewise.

From-SVN: r37778
2000-11-27 05:11:39 +00:00
Kaveh R. Ghazi da9e9f0862 builtins.c (expand_builtin_strncmp, [...]): New functions.
* builtins.c (expand_builtin_strncmp, expand_builtin_strncpy): New
	functions.
	(expand_builtin): Handle BUILT_IN_STRNCPY and BUILT_IN_STRNCMP.

	* builtins.def (BUILT_IN_STRNCPY, BUILT_IN_STRNCMP): New entries.

	* c-common.c (c_common_nodes_and_builtins): Declare builtin
	strncpy and strncmp.

	* extend.texi (strncmp, strncpy): Document new builtins.

testsuite:
	* gcc.c-torture/execute/string-opt-7.c: New test.
	* gcc.c-torture/execute/string-opt-8.c: Likewise.

From-SVN: r37777
2000-11-27 05:00:06 +00:00
Mark Mitchell 231db5f4ec elfos.h (ASM_OUTPUT_SECTION_NAME): Use a hash table, not a list, to keep track of the sections.
* config/elfos.h (ASM_OUTPUT_SECTION_NAME): Use a hash table, not
	a list, to keep track of the sections.
	* tm.texi (ASM_OUTPUT_SECTION_NAME): Document the fact that the
	parameter provided will always be a canonical string.

From-SVN: r37776
2000-11-27 04:25:32 +00:00
Mark Mitchell a4c9b97e26 hashtab.c (higher_prime_number): Use a table, rather than a seive, to find the next prime.
* hashtab.c (higher_prime_number): Use a table, rather than a
	seive, to find the next prime.

From-SVN: r37775
2000-11-27 04:23:38 +00:00
Tom Tromey e9608fe6f0 Reverted erroneous Makefile.am commit
From-SVN: r37774
2000-11-27 04:10:57 +00:00