Commit Graph

30783 Commits

Author SHA1 Message Date
Richard Henderson 50503ac83d configure.in (enable-shared): New.
* configure.in (enable-shared): New.
        * Makefile.in (LIBGCC_DEPS): Depend on EXTRA_PARTS as well.
        (libgcc.mk): Pass SHLIB_LINK, SHLIB_LIBS, SHLIB_MULTILIB to mklibgcc.
        * mklibgcc.in: Use them to link shared a libgcc.
        * config/t-linux (SHLIB_LINK, SHLIB_LIBS): New.
        * config/alpha/t-ieee (SHLIB_MULTILIB): New.
        * config/mips/t-iris6 (SHLIB_LINK, SHLIB_LIBS): New.
        * config/sparc/t-sol2 (SHLIB_LINK, SHLIB_LIBS): New.

        * configure.in (alpha-osf*): Use t-osf and x-osf.
        * config/alpha/t-osf: New file.
        * config/alpha/t-osf4: New file.
        * config/alpha/x-osf: New file.
        * config/alpha/x-alpha: Remove file.

From-SVN: r36715
2000-10-04 13:53:29 -07:00
Will Cohen 4b606faf44 Patched code to generate warning when trying to perform static
initialization of zero-length arrays.

From-SVN: r36714
2000-10-04 18:03:33 +00:00
Andris Pavenis 3a4fee6674 Makefile.in (bootstrap): avoid recursion if subdir missing
* Makefile.in (bootstrap): avoid recursion if subdir missing
(cross): ditto
(do-proto-toplev): ditto

From-SVN: r36713
2000-10-04 14:00:37 -04:00
William Cohen 9c00185b89 Describes addition of test to verify zero-length array initializers flagged
with warning.

From-SVN: r36712
2000-10-04 17:59:19 +00:00
William Cohen f7b9c39dc8 A test to verify the patch to warn of initializers for zero-length
arrays is installed in the compiler.

From-SVN: r36711
2000-10-04 17:57:03 +00:00
Phil Edwards be9196f86e Dummy checkin of footer.html to force web update.
From-SVN: r36710
2000-10-04 15:52:27 +00:00
Jeff Law c45529b697 Daily bump.
From-SVN: r36709
2000-10-04 01:45:12 -06:00
Benjamin Kosnik 2ef49c56f0 howto.html: Add link to proto-documentation on locales.
2000-10-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* docs/22_locale/howto.html: Add link to proto-documentation on
	locales.
	* docs/documentation.html: Rename links for clarity.

	* src/Makefile.am (headers): Remove unistd.h, wrap_unistd.h. Add
	fcntl.h, iolibio.h, libioP.h, pthread.h, iconv.h.
	* src/Makefile.in: Regenerate.

From-SVN: r36708
2000-10-04 06:44:25 +00:00
Benjamin Kosnik 0517cb9903 [multiple changes]
2000-10-02  Steven King  <sxking@uswest.net>

        * mkcshadow: Fixed script to output proper include guard.
        * bits/char_traits.h: Cleaned up types in char_traits<char> functions.
        * libio/_G_config.h: Hacked to make work with shadow heraders.
        * shadow/*: Hacked to make shadow headers work.

2000-10-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	Self-compile with shadow headers.
	* acconfig.h (_GLIBCPP_USE_SHADOW_HEADERS): Define. Eventually,
	like _GLIBCPP_USE_NAMESPACES before it, this macro will die when
	it becomes the default way the library is built.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro.
	* config/gnu-linux/bits/ctype_base.h (ctype_base): Use it.
	* config/gnu-linux/ctype.cc (ctype): Use it.

	* src/localename.cc (locale::_Impl::_M_replace_categories): Remove
	call to assert.
	* src/locale.cc: Explicitly cast mbstate_t to void* in calls to
	memset. This should not be necessary, but an ambiguous overload
	with it in.

	* shadow/bits/std_cwchar.h: Fix.
	* shadow/wchar.h: Fix.

	* config/gnu-linux/bits/ctype_base.h (ctype_base): Inject ctype
	enums into namespace std:: for ctype_base enum. Other OS types
	will have to do this as well.
	* config/gnu-linux/ctype.cc (ctype): Inject ctype data into
	namespace std, in particular __ctype_toupper, __ctype_tolower,
	__ctype_b.

	* shadow/iolibio.h: New file.
	* shadow/bits/wrap_iolibio.h: New file.
	* shadow/libioP.h: New file.
	* shadow/bits/wrap_libioP.h: New file.
	* shadow/bits/wrap_fcntl.h: New file.
	* shadow/fcntl.h: New file.
	* shadow/iconv.h: New file. Inject iconv names into the global
	namespace, unmangled for the moment.
	* shadow/bits/wrap_iconv.h: New file.
	* shadow/unistd.h: Remove. Useless.
	* shadow/bits/wrap_unistd.h: Remove.

	* src/Makefile.am: Take out machine-ansi.h, add fcntl.h unistd.h.
	* src/Makefile.in: Regenerate.

	* config/c_io_libio.h (_IO_codecvt): Change to normal C++ decl.

	* shadow/libio.h: Fix.
	* shadow/bits/wrap_libio.h: Fix.

	* shadow/bits/std_clocale.h: Remove typedef struct construct,
	which will not compile.
	* shadow/bits/std_ctime.h: Same.

	* shadow/pthread.h: New file. Put pthreads types and functions
	into global scope, which is probably not the correct long-term
	solution but has to be done at the moment before libio wrappers
	can even be started.
	* shadow/bits/wrap_pthread.h: New file.

	* bits/std_ios.h: Formatting tweak.
	* shadow/bits/std_cstdio.h: Format. Remove extraneous bits.

	* acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Add -Werror to
	tests for compiler features.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* config/c_io_libio.cc: Remove fcntl.h include, as SEEK_SET
	redefined.
	* libio/libioP.h: Comment out fcntl.h include.

	* shadow/math.h: Add in float and long declarations, as per ISO C9X.

	* bits/c++config: Define _ISOC99_SOURCE.

	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add -fno-builtins to
	CSHADOWFLAGS, as well as _ISOC99_SOURCE.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* src/Makefile.am (CSHADOW_INCLUDES): Enable, again.
	(CSHADOW_INCLUDES): Add -I$(top_srcdir)/std before shadow include dir.
	(CXXCOMPILE): Remove $(DEFS), which searches $(top_srcdir) before
	std or shadow directories.
	(LTCXXCOMPILE): Same.
	(INCLUDES): Add $(top_builddir) before $(top_srcdir).
	(AC_CXXFLAGS): Add CSHADOWFLAGS.
	* src/Makefile.in: Regenerate.

	* src/complex.cc (FCT): Change ::name to name.
	* src/complexl.cc (FCT): Same. Use _GLIBCPP_USE_LONG_LONG here.
	* src/complexf.cc (FCT): Same.

	* src/complexf.cc: Remove FCT define, as things are properly
	overloaded in the std namespace with the shadow headers.
	* src/complexl.cc: Same.
	* src/complex.cc: Same.

From-SVN: r36707
2000-10-04 05:06:32 +00:00
Benjamin Kosnik 1792c91ce6 Self-compile with shadow headers.
2000-10-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	Self-compile with shadow headers.
	* acconfig.h (_GLIBCPP_USE_SHADOW_HEADERS): Define. Eventually,
	like _GLIBCPP_USE_NAMESPACES before it, this macro will die when
	it becomes the default way the library is built.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro.
	* config/gnu-linux/bits/ctype_base.h (ctype_base): Use it.
	* config/gnu-linux/ctype.cc (ctype): Use it.

	* src/localename.cc (locale::_Impl::_M_replace_categories): Remove
	call to assert.
	* src/locale.cc: Explicitly cast mbstate_t to void* in calls to
	memset. This should not be necessary, but an ambiguous overload
	with it in.

	* shadow/bits/std_cwchar.h: Fix.
	* shadow/wchar.h: Fix.

	* config/gnu-linux/bits/ctype_base.h (ctype_base): Inject ctype
	enums into namespace std:: for ctype_base enum. Other OS types
	will have to do this as well.
	* config/gnu-linux/ctype.cc (ctype): Inject ctype data into
	namespace std, in particular __ctype_toupper, __ctype_tolower,
	__ctype_b.

	* shadow/iolibio.h: New file.
	* shadow/bits/wrap_iolibio.h: New file.
	* shadow/libioP.h: New file.
	* shadow/bits/wrap_libioP.h: New file.
	* shadow/bits/wrap_fcntl.h: New file.
	* shadow/fcntl.h: New file.
	* shadow/iconv.h: New file. Inject iconv names into the global
	namespace, unmangled for the moment.
	* shadow/bits/wrap_iconv.h: New file.
	* shadow/unistd.h: Remove. Useless.
	* shadow/bits/wrap_unistd.h: Remove.

	* src/Makefile.am: Take out machine-ansi.h, add fcntl.h unistd.h.
	* src/Makefile.in: Regenerate.

	* config/c_io_libio.h (_IO_codecvt): Change to normal C++ decl.

	* shadow/libio.h: Fix.
	* shadow/bits/wrap_libio.h: Fix.

	* shadow/bits/std_clocale.h: Remove typedef struct construct,
	which will not compile.
	* shadow/bits/std_ctime.h: Same.

	* shadow/pthread.h: New file. Put pthreads types and functions
	into global scope, which is probably not the correct long-term
	solution but has to be done at the moment before libio wrappers
	can even be started.
	* shadow/bits/wrap_pthread.h: New file.

	* bits/std_ios.h: Formatting tweak.
	* shadow/bits/std_cstdio.h: Format. Remove extraneous bits.

	* acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Add -Werror to
	tests for compiler features.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* config/c_io_libio.cc: Remove fcntl.h include, as SEEK_SET
	redefined.
	* libio/libioP.h: Comment out fcntl.h include.

	* shadow/math.h: Add in float and long declarations, as per ISO C9X.

	* bits/c++config: Define _ISOC99_SOURCE.

	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add -fno-builtins to
	CSHADOWFLAGS, as well as _ISOC99_SOURCE.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* src/Makefile.am (CSHADOW_INCLUDES): Enable, again.
	(CSHADOW_INCLUDES): Add -I$(top_srcdir)/std before shadow include dir.
	(CXXCOMPILE): Remove $(DEFS), which searches $(top_srcdir) before
	std or shadow directories.
	(LTCXXCOMPILE): Same.
	(INCLUDES): Add $(top_builddir) before $(top_srcdir).
	(AC_CXXFLAGS): Add CSHADOWFLAGS.
	* src/Makefile.in: Regenerate.

	* src/complex.cc (FCT): Change ::name to name.
	* src/complexl.cc (FCT): Same. Use _GLIBCPP_USE_LONG_LONG here.
	* src/complexf.cc (FCT): Same.

	* src/complexf.cc: Remove FCT define, as things are properly
	overloaded in the std namespace with the shadow headers.
	* src/complexl.cc: Same.
	* src/complex.cc: Same.

From-SVN: r36706
2000-10-04 03:09:19 +00:00
Richard Henderson fee0225a38 configure.in (ia64-linux): Add ia64/t-glibc.
* configure.in (ia64-linux) [tmake_file]: Add ia64/t-glibc.
	* config/ia64/crtbegin.asm (__EH_FRAME_BEGIN__): Remove.
	(segrel_ofs): Remove.
	(__ia64_app_header): New.
	(frame_object): Remove.
	(.init): Set __ia64_app_header when non-shared.
	(__do_global_dtors_aux): Do not call __deregister_frame_info.
	(__do_frame_setup): Remove.
	* config/ia64/crtend.asm (__EH_FRAME_END__): Remove.
	(__do_frame_setup_aux): Remove.
	* config/ia64/frame-ia64.c (object_mutex): Remove.
	(bad_record): Remove.
	(init_object_mutex): Remove.
	(init_object_mutex_once): Remove.
	(fde_compare): Remove.
	(__register_frame_info_aux): Remove.
	(frame_init): Remove.
	(find_fde): Remove.
	(*): Use ISO function definitions.
	(P3_record_types): Constify.
	(P7_record_types, P7_additional_fields): Constify.
	(P8_record_types, P8_additional_fields): Constify.
	(read_P_record): Remove parenthesis warning.  Use structure
	assignment instead of memcpy.
	(execute_one_ia64_descriptor): Likewise.
	(__build_ia64_frame_state): Use __ia64_find_fde.
	(record_name, print_record, print_all_records): Remove.
	* config/ia64/frame-ia64.h: New file.
	* config/ia64/fde-glibc.c: New file.
	* config/ia64/t-glibc: New file.

From-SVN: r36705
2000-10-03 20:08:50 -07:00
Tom Tromey 7e51098e70 re GNATS gcj/307 (gcj allows boolean value to be returned for int method)
Fix for PR gcj/307:
	* parse.y (patch_binop): Use JNUMERIC_TYPE_P, not
	JPRIMITIVE_TYPE_P, for arithmetic operators.
	(patch_method_invocation): Indentation fix.
	(try_builtin_assignconv): Handle boolean specially.  Fixed typo.
	(valid_builtin_assignconv_identity_widening_p): Handle boolean.
	(do_unary_numeric_promotion): Cleaned up code.
	(valid_cast_to_p): Handle boolean correctly.

From-SVN: r36704
2000-10-03 20:19:54 +00:00
Tom Tromey 5beededc7e lex.c (java_read_unicode): Reset bs_count when finished with `\u' sequence.
* lex.c (java_read_unicode): Reset bs_count when finished with
	`\u' sequence.

From-SVN: r36703
2000-10-03 19:10:44 +00:00
Tom Tromey 11908bbe42 Updated ChangeLog to reflect patch credit
From-SVN: r36702
2000-10-03 18:57:21 +00:00
Geoff Keating e9e037ef1e memtemp77.C (main): Update demangled function name for current C++ compiler.
* g++.old-deja/g++.pt/memtemp77.C (main): Update demangled
	function name for current C++ compiler.
	Patch from Kriang Lerdsuwanakij <lerdsuwa@scf.usc.edu>.

From-SVN: r36701
2000-10-03 17:30:35 +00:00
Jeff Law fdd5ba4a81 Daily bump.
From-SVN: r36700
2000-10-03 01:45:08 -06:00
Jan Hubicka c9b89a214a rtlanal.c (single_set_1): Do not require USE and CLOBBERs to come last.
* rtlanal.c (single_set_1): Do not require USE and CLOBBERs
	to come last.

From-SVN: r36699
2000-10-03 07:26:42 +00:00
Michael Hayes 81bce466fe float-c4x.h: New.
* config/float-c4x.h: New.
	* configure.in (c4x-*): Set float_format to c4x.
	* configure: Regenerate.

From-SVN: r36698
2000-10-03 01:08:45 +00:00
Kaveh R. Ghazi 72882e083c configure.in (sparc-*-solaris2*): Disable 32-to-64 cross compilation for solaris versions 2.7 and greater.
* configure.in (sparc-*-solaris2*): Disable 32-to-64 cross
	compilation for solaris versions 2.7 and greater.

From-SVN: r36696
2000-10-03 00:49:41 +00:00
David O'Brien 618ec0d768 freebsd.h (NO_PROFILE_COUNTERS): Define.
2000-10-02  David O'Brien  <obrien@dragon.nuxi.com>
* config/i386/freebsd.h (NO_PROFILE_COUNTERS): Define.

Approved by:  Richard Henderson <rth@cygnus.com>
              <20001002132531.A16477@cygnus.com>

From-SVN: r36694
2000-10-02 21:53:53 +00:00
Marc Espie 2efe55c1ed Mon Oct 2 10:20:13 CEST 2000 Marc Espie <espie@openbsd.org>
* config/alpha.h (WORD_SWITCH_TAKES_ARG): add -rpath to default,
	instead of redefining from scratch.

From-SVN: r36693
2000-10-02 08:21:35 +00:00
Jeff Law 0e8a7454bf Daily bump.
From-SVN: r36692
2000-10-02 01:45:07 -06:00
Mark Mitchell 776749c5f2 genix.h: Remove.
* 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.

From-SVN: r36691
2000-10-02 06:50:52 +00:00
Mark Mitchell a7b4171a5b configure.in: Don't configure chill by default.
* configure.in: Don't configure chill by default.
	* configure: Regenerated.

From-SVN: r36690
2000-10-02 06:41:01 +00:00
Bryce McKinlay 88ce64ace5 update
From-SVN: r36689
2000-10-02 06:14:52 +01:00
Bryce McKinlay 0acff4bc96 prims.cc (_Jv_argv, _Jv_argc): New fields.
2000-10-02  Bryce McKinlay  <bryce@albatross.co.nz>

	* prims.cc (_Jv_argv, _Jv_argc): New fields.
	(JvRunMain): Set _Jv_argv and _Jv_argc.
	* java/awt/Component.java: Minor fixes.
	* java/awt/Image.java (UndefinedProperty): Initialize final field.
	* java/awt/Toolkit.java (systemEventQueue): Removed.
	(getDefaultToolkit): Default to "gnu.awt.gtk.GtkToolkit".
	* java/awt/Window.java (getToolkit): Don't call super.
	* java/awt/image/BufferedImage.java: Fix definate assignment errors.
	* java/awt/peer/ContainerPeer.java (insets): Remove unused method.
	* gnu/awt/gtk/GtkComponentPeer.java: New file.
	* gnu/awt/gtk/GtkContainerPeer.java: New file.
	* gnu/awt/gtk/GtkFramePeer.java: New file.
	* gnu/awt/gtk/GtkMainThread.java: New file.
	* gnu/awt/gtk/GtkToolkit.java: New file.
	* gnu/awt/gtk/GtkWindowPeer.java: New file.
	* gnu/awt/gtk/gtkcommon.cc: New file.
	* gnu/awt/gtk/gtkcommon.h: New file.
	* gnu/awt/gtk/natGtkComponentPeer.cc: New file.
	* gnu/awt/gtk/natGtkContainerPeer.cc: New file.
	* gnu/awt/gtk/natGtkFramePeer.cc: New file.
	* gnu/awt/gtk/natGtkMainThread.cc: New file.
	* gnu/awt/gtk/natGtkToolkit.cc: New file.
	* gnu/awt/gtk/natGtkWindowPeer.cc: New file.

From-SVN: r36688
2000-10-02 06:14:25 +01:00
Mark Mitchell f15b9af984 c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only.
* 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.

	* decl.c (lang_mark_false_label_stack): Remove.
	* lex.c (cp_mang_lang_type): Use ggc_alloc_cleared.

	* com.c (lang_mark_false_label_stack): Remove.

	Convert to GC.
	* Make-lang.in (s-java): Don't depend on ggc-callbacks.o.
	* Makefile.in (BACKEND): Don't include ggc-callbacks.o.
	(typeck.o): Depend on ggc.h.
	* class.c (add_method_1): Use GC functions for allocation.
	(init_class_processing): Register roots.
	* decl.c (ggc_p): Set to 1.
	(pending_local_decls): Make it static.
	(push_jvm_slot): Use GC functions for allocation.
	(init_decl_processing): Register roots.
	(give_name_to_locals): Use GC functions for allocation.
	(lang_mark_tree): New function.
	* java-tree.h (MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Use GC
	functions for allocation.
	* jcf-parse.c (jcf_parse_source): Use ggc_strdup.
	* lex.c (java_lex): Use build_string, rather than replicating it
	inline.
	* parse.y (goal): Add more roots.
	(mark_parser_ctxt): New function.
	* typeck.c: Include ggc.h.

	* splay-tree.c (splay_tree_insert): Fix formatting.

From-SVN: r36687
2000-10-01 19:19:30 +00:00
Denis Chertykov 51296ba047 avr.h (BRANCH_COST): Define as 0.
* config/avr/avr.h (BRANCH_COST): Define as 0.

	* config/pdp11/pdp11.c: #include "tree.h" added.

From-SVN: r36686
2000-10-01 19:29:06 +04:00
Marek Michalkiewicz adcd8f777e avr.c (ashlhi3_out, [...]): Optimize more cases with known shift count.
* 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.

From-SVN: r36685
2000-10-01 18:59:35 +04:00
Jeff Law e1defe102c Daily bump.
From-SVN: r36684
2000-10-01 01:45:08 -06:00
Geoff Keating e35b957951 rs6000.md (movsi_to_cr): Remove the USE.
* 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.

From-SVN: r36683
2000-10-01 05:29:14 +00:00
Zack Weinberg 9256db1dea New test
From-SVN: r36682
2000-10-01 01:24:02 +00:00
Tom Tromey 304daac5d9 posix-threads.cc (_Jv_CondWait): Check to see if we are interrupted before modifying the cv's wait set.
2000-09-30  Tom Tromey  <tromey@cygnus.com>

        * posix-threads.cc (_Jv_CondWait): Check to see if we are
        interrupted before modifying the cv's wait set.

From-SVN: r36680
2000-09-30 11:01:04 +01:00
Hans Boehm bf3b8e42e2 Implement bitmap descriptor based marking for Boehm GC.
2000-09-30  Hans Boehm  <boehm@acm.org>
	    Bryce McKinlay  <bryce@albatross.co.nz>

	Implement bitmap descriptor based marking for Boehm GC.

	* configure.in: Define JC1GCSPEC. Set it if boehm-gc is used.
	* configure: Rebuilt.
	* libgcj.spec.in: Pass JC1GCSPEC to jc1.
	* include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline
	method get_finalizer().
	(struct _Jv_ArrayVTable): Ditto. Declare method array with
	NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1.
	(_Jv_AllocObj): Add new jclass parameter.
	(_Jv_AllocArray): Ditto.
	(_Jv_BuildGCDescr): New prototype.
	* prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass
	`klass' to _Jv_AllocObj. Don't set the new object's vtable. Use
	get_finalizer() instead of direct finalizer vtable offset.
	(_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass
	`klass' to _Jv_AllocArray. Don't set the new array's vtable.
	(_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj.
	Pass `klass' to _Jv_AllocObj. Don't set the new array's vtable.
	* resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines.
	(_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE.
	(_Jv_DetermineVTableIndex): Ditto.
	(_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable
	calculations to account for new gc_descr field.
	* boehm.cc: #include gc_gcj.h.
	(obj_kind_x, obj_free_list): `#if 0'-ed away.
	(_Jv_MarkObj): Check that vtable doesn't point to a cleared object.
	New commentary from HB. Mark the classes vtable.
	(_Jv_MarkArray): Check that vtable doesn't point to a cleared object.
	(GC_DEFAULT_DESCR): New #define.
	(_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now.
	(_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC ().
	(_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and
	scan conservativly if size is less than min_heap_addr. Set vtable
	pointer of new object before returning.
	(_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC.
	(_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and
	allocation for obj_kind_x.
	* nogc.cc (_Jv_BuildGCDescr): New function. Return 0.
	(_Jv_AllocObj): Set vtable on returned object.
	(_Jv_AllocArray): Ditto.
	* java/lang/Class.h (_Jv_NewObjectArray): No longer a friend.
	(_Jv_NewPrimArray): Ditto.
	(_Jv_AllocObj): Declare as a friend.
	(_Jv_AllocArray): Ditto.
	* java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr
	from &ObjectClass into new array class. Remove offset-by-one
	adjustments from `method' size calculations to account for gc_descr
	field.

Co-Authored-By: Bryce McKinlay <bryce@albatross.co.nz>

From-SVN: r36679
2000-09-30 10:56:58 +01:00
Bryce McKinlay 0476f09843 configure.in: Define GC_GCJ_SUPPORT.
2000-09-30  Bryce McKinlay  <bryce@albatross.co.nz>

	* configure.in: Define GC_GCJ_SUPPORT. Define NO_DEBUGGING in
	cross-compile configuration only.
	* Makefile.am: Build gcj_mlc.c.
	* configure, Makefile.in: Rebuilt.

From-SVN: r36678
2000-09-30 10:54:21 +01:00
Joseph Myers 1fba755332 * i386.c: Move include of "config.h" to before that of <setjmp.h>.
From-SVN: r36677
2000-09-30 09:05:55 +01:00
Joseph Myers 28e6b1c270 c-tree.texi, [...]: Consistently use @email for formatting email addresses.
* c-tree.texi, contrib.texi, gcc.texi, install.texi, invoke.texi:
	Consistently use @email for formatting email addresses.

cp:
	* gxxint.texi: Use @email for formatting email addresses.

From-SVN: r36676
2000-09-30 09:04:01 +01:00
Jeff Law 1bacc64eb0 Daily bump.
From-SVN: r36675
2000-09-30 01:45:07 -06:00
Alexandre Oliva de7105326d Makefile.in (DEVO_SUPPORT): Added gettext.m4, libtool.m4, ltcf-c.sh, ltcf-cxx.sh and ltcf-gcj.sh.
* Makefile.in (DEVO_SUPPORT): Added gettext.m4, libtool.m4,
ltcf-c.sh, ltcf-cxx.sh and ltcf-gcj.sh.

From-SVN: r36674
2000-09-30 06:20:24 +00:00
Alexandre Oliva 5f5272039d ltconfig, [...]: Updated from libtool multi-language branch, to work around Solaris' /bin/sh bug.
* ltconfig, ltmain.sh, libtool.m4: Updated from libtool
multi-language branch, to work around Solaris' /bin/sh bug.  Rebuilt
all affected `configure' scripts.

From-SVN: r36673
2000-09-30 06:11:54 +00:00
Alexandre Oliva 3dd7094e20 ltconfig, [...]: Updated from libtool multi-language branch, to work around Solaris' /bin/sh bug.
* ltconfig, ltmain.sh, libtool.m4, ltcf-cxx.sh: Updated from libtool
multi-language branch, to work around Solaris' /bin/sh bug.  Rebuilt
all affected `configure' scripts.

From-SVN: r36672
2000-09-30 06:02:57 +00:00
Richard Henderson f2fa288f03 cse.c (notreg_cost): New argument outer.
* 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.

From-SVN: r36671
2000-09-29 16:22:20 -07:00
Alexandre Petit-Bianco 99eaf8d457 parse.y (maybe_yank_clinit): Also keep <clinit> if its body contains something else than MODIFY_EXPR.
2000-09-29  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.y (maybe_yank_clinit): Also keep <clinit> if its body
	contains something else than MODIFY_EXPR.

(http://gcc.gnu.org/ml/gcc-patches/2000-09/msg01141.html)

From-SVN: r36670
2000-09-29 13:14:53 -07:00
David Edelsohn a1c63101c4 inclhack.def (broken_cabs): Generalize regex.
* fixinc/inclhack.def (broken_cabs): Generalize regex.
	* fixinc/fixincl.x: Regenerate.

From-SVN: r36669
2000-09-29 13:47:32 -04:00
Franz Sirl 70dd0f7f41 loop.c (check_final_value): A GIV is not replaceable if used before set.
2000-09-29  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
	* loop.c (check_final_value): A GIV is not replaceable if used
	before set.

From-SVN: r36668
2000-09-29 17:38:25 +00:00
Jeffrey A Law 0c6129af81 * version.c: Bump to gcc-2.97.
From-SVN: r36667
2000-09-29 10:03:36 -06:00
Gabriel Dos Reis 99885b3f2a error.c: Remove direct obstack manipulation.
cp/
	* error.c: Remove direct obstack manipulation.  Replace with
	output_buffer-based formatting.  Adjust calls to removed macros.
	(obstack_chunk_alloc, obstack_chunk_free): Remove.
	(OB_INIT, OB_PUTC, OB_PUTC2, OB_PUTS, OB_PUTID, OB_PUTCP,
	OB_FINISH, OB_PUTI, OB_END_TEMPLATE): Likewise.
testsuite/
	* g++.old-deja/g++.ext/pretty3.C: Fix comparison with
	__PRETTY_FUNCTION__.
	* g++.old-deja/g++.ext/pretty2.C: Likewise.

From-SVN: r36666
2000-09-29 11:50:32 +00:00
Jan Hubicka 6c698a6d9b final.c (final_scan_insn): Remove extra extract_insn call; Use caching for constrain_operands.
* 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.

From-SVN: r36665
2000-09-29 11:40:24 +00:00
Jan Hubicka b1cdafbb6c recog.c (recog_memoized): Rename to recog_memoized_1.
* 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.

From-SVN: r36664
2000-09-29 11:24:13 +00:00
Jeff Law 073427934a Daily bump.
From-SVN: r36663
2000-09-29 01:45:07 -06:00