Commit Graph

70 Commits

Author SHA1 Message Date
Hans Boehm
c8cd06a813 misc.c: Back out buggy changes to stack clearing code.
* misc.c: Back out buggy changes to stack clearing code.
	Reduce CLEAR_SIZE to 1/4 of original value to reduce time
	spent clearing memory.

From-SVN: r41172
2001-04-06 17:11:43 -07:00
Hans Boehm
41029b884a finalize.c: - Accomodate finalization requests for static objects.
2001-04-04  Hans Boehm  <hans_boehm@hp.com>

	* finalize.c:
	- Accomodate finalization requests for static objects.
	  (Will be required by hash synchronization.  May be needed
	  in some configurations now.)

	* gc_priv.h:
	- Define MIN_WORDS.  All allocation requests are rounded
	  up to at least this size.  Removes a subtle assumption that
	  Java objects have a 2 word header.

	* gcconfig.h:
	- Adjust Linux/IA64 configuration for non-ancient kernels.
	  (Necessary fix for IA64.)

	* linux_threads.c:
	- Fix syntax error in currently unused code.  Will be needed
	  for Linux/PA-RISC.

	* malloc.c:
	- Handle MIN_WORDS.

	* misc.c:
	- Handle MIN_WORDS.
	- Change stack cleaning code to typically clear about one tenth
	  the memory it used to in the threads configuration.  Occasionally
	  still clear more.  (This is really a fix for a long-standing
	  and fairly significant performance bug with threads.)

	* os_dep.c:
	- Fix the code for finding the beginning of the data segment under
	  Linux.  I believe this is necessary for some IA64 Linux
	  distributions.  It will also helo other platforms, though those
	  may additionally require a gcconfig.h adjustment.  (This basically
	  works around the absence of a data_start or __data_start
	  definition in glibc.)

	* test.c:
	- Handle rounding due to MIN_WORDS.

From-SVN: r41102
2001-04-05 00:14:18 +00:00
Tom Tromey
ee402fc993 * Makefile.am (gctest_LDFLAGS): Use -shared-libgcc.
From-SVN: r40756
2001-03-22 19:03:01 +00:00
Tom Tromey
3632fe93f1 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (gctest_LDFLAGS): new macro.

From-SVN: r40697
2001-03-21 18:35:41 +00:00
Tom Tromey
de5e27beba Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (TESTS_ENVIRONMENT): New macro.

From-SVN: r40568
2001-03-17 01:01:29 +00:00
Bryce McKinlay
e301621d19 For boehm-gc:
* configure.in: Rename THREADLIB to THREADLIBS.
	* Makefile.am (LINK): Add $(THREADLIBS) to libtool command line. This
	ensures that we link the correct version of the linuxthreads semaphore
	functions.
	* Makefile.in: Rebuilt.
	* configure: Rebuilt.

	* linux_thread.c (GC_thr_init, GC_suspend_handler): Add SIGABRT to the
	list of signals which are not blocked during suspend in the NO_SIGNALS
	case.

For libjava:
	* Makefile.am (libgcj_la_LIBADD): Add $(THREADLIBS). This ensures that
	the correct versions of various linuxthreads functions get linked.
	* Makefile.in: Rebuilt.
	* java/lang/natThread.cc (finalize_native): New static function. Call
	_Jv_ThreadDestroyData.
	(initialize_native): Register finalizer for "data".
	* include/posix-threads.h (_Jv_ThreadInitData): New simpler prototype.
	(_Jv_ThreadDestroyData): New prototype.
	* include/win32-threads.h: Ditto.
	* include/no-threads.h: Ditto.
	* posix-threads.cc (_Jv_ThreadInitData): Implement new prototype.
	(_Jv_ThreadDestroyData): New function. Free native thread "data" and
	move mutex and condition variable destroy code from:
	(really_start): ...here.
	(_Jv_ThreadStart): Set PTHREAD_CREATE_DETACHED.
	* win32-threads.cc (_Jv_ThreadInitData): Implement new prototype.
	(_Jv_ThreadDestroyData): Implemented.
	* nogc.cc (_Jv_AllocObject): Use "void *" not "ptr_t".
	(_Jv_AllocArray): Ditto.

From-SVN: r38557
2000-12-30 12:18:39 +00:00
Hans Boehm
ca5fc74676 gcj_mlc.c (GC_gcj_malloc): Don't release allocation lock twice.
2000-12-23  Hans Boehm  <Hans_Boehm@hp.com>

	* gcj_mlc.c (GC_gcj_malloc): Don't release allocation lock twice.

From-SVN: r38476
2000-12-23 02:23:27 +00:00
Bryce McKinlay
315d4c2711 * Makefile.dist: Renamed from Makefile.orig.
From-SVN: r38276
2000-12-15 08:13:12 +00:00
Alexandre Petit-Bianco
f2beb7ef55 Makefile.am (gctest_LDADD): Added EXTRA_TEST_LIBS.
2000-12-11  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * Makefile.am (gctest_LDADD): Added EXTRA_TEST_LIBS.
        * configure.in (EXTRA_TEST_LIBS): Check for `dlopen' in -ldl and
        set accordingly.
        * Makefile.in: Rebuilt.
        * configure: Likewise.

(http://sources.redhat.com/ml/java-patches/2000-q4/msg00237.html)

From-SVN: r38208
2000-12-12 12:52:54 -08:00
Geoffrey Keating
c9e02e5dc3 gcconfig.h: Add new case for powerpc EABI.
* gcconfig.h: Add new case for powerpc EABI.
	[PPC]: Handle embedded OS for powerpc simulator.

From-SVN: r38179
2000-12-10 22:57:37 +00: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
Alexandre Oliva
2f7bf5b7eb acinclude.m4: Include libtool macros from the top level.
* acinclude.m4: Include libtool macros from the top level.
* aclocal.m4, configure: Rebuilt.

From-SVN: r36287
2000-09-10 07:43:14 +00:00
Anthony Green
9d40a6660e re GNATS libgcj/230 (Function GC_debug_object_start does not exist)
Fix for PR libgcj/230:
        * mark.c (GC_mark_from_mark_stack): Remove call to
        GC_debug_object_start.
        * gc_priv.h (GC_debug_object_start): Remove prototype.

From-SVN: r36145
2000-09-04 21:46:26 +00:00
Alexandre Oliva
7fedceab9e * gcconfig.h [OSF1] (_end): Declare as `int'.
From-SVN: r35749
2000-08-16 18:17:59 +00:00
Tom Tromey
5f51a7528f gc_priv.h (GC_generic_malloc_inner): Prototype.
* gc_priv.h (GC_generic_malloc_inner): Prototype.
	(GC_generic_malloc): Likewise.
	(GC_add_to_black_list_normal): Likewise.
	(GC_find_header): Likewise.
	(GC_ADD_TO_BLACK_LIST_NORMAL): Cast bits argument to word.
	* gc_mark.h (GC_find_start): Prototype.
	(GC_signal_mark_stack_overflow): Likewise.

From-SVN: r35431
2000-08-02 19:46:07 +00:00
Alexandre Oliva
c030bee9a8 configure.in (THREADS): Don't --enable-threads on IRIX <= 5.*.
* configure.in (THREADS): Don't --enable-threads on IRIX <= 5.*.
* configure: Rebuilt.

From-SVN: r35218
2000-07-24 04:20:09 +00:00
Alexandre Oliva
14400a5922 * dyn_load.c (GC_scratch_last_end_ptr): Don't declare a #define.
From-SVN: r35217
2000-07-24 04:06:16 +00:00
Bryce McKinlay
aec5061ba2 Imported version 5.1.
2000-06-20  Bryce McKinlay  <bryce@albatross.co.nz>

	Imported version 5.1.
	* acinclude.m4: Push version to 5.1.

From-SVN: r34610
2000-06-20 02:04:58 +01:00
Andrew Haley
437fa02616 os_dep.c (read): Pass two dummy args to syscall().
2000-06-19  Andrew Haley  <aph@cygnus.com>

        * os_dep.c (read): Pass two dummy args to syscall().

From-SVN: r34598
2000-06-19 18:46:45 +00:00
Bryce McKinlay
402823c45e Imported 5.0 release version.
2000-05-11  Bryce McKinlay  <bryce@albatross.co.nz>

        Imported 5.0 release version.
        * acinclude.m4: Increment version to 5.0.

From-SVN: r33832
2000-05-10 22:59:16 +01:00
Bryce McKinlay
9444af72b4 Imported version 5.0alpha7.
2000-05-07  Bryce McKinlay  <bryce@albatross.co.nz>

	Imported version 5.0alpha7.
        * acinclude.m4: Update version to 5.0a7.

From-SVN: r33750
2000-05-07 01:43:49 +01:00
Tom Tromey
72a107fe0a Fixed ChangeLog merge snafu
From-SVN: r33453
2000-04-27 00:45:13 +00:00
Jakub Jelinek
70635f1e04 <<<<<<< ChangeLog
2000-04-26  Jakub Jelinek  <jakub@redhat.com>

	* gcconfig.h (SPARC): Define ALIGNMENT to 8 for 64bit SPARC.
	(SPARC/LINUX): Use GC_SysVGetDataStart instead of LINUX_DATA_START
	- sparc glibc does not provide it.
	(SAVE_CALL_CHAIN, ASM_CLEAR_CODE): Define on sparc*-linux*.
	Make STACKBOTTOM depend on the wordsize.
	* os_dep.c (GC_SysVGetDataStart): Compile in on sparc*-linux*.
	(struct frame): Declare on sparc*-linux*.
	(GC_save_callers): Bias the frame pointers if needed (sparc64).
	* mach_dep.c (GC_save_regs_in_stack): Optimize on sparc32.
	Implement on sparc64.
	(GC_clear_stack_inner): Implement on sparc64.
	* gc_priv.h (GC_test_and_set): Implement for sparc.
	* linux_threads.c (GC_suspend_handler, GC_push_all_stacks): Use

From-SVN: r33452
2000-04-27 00:43:33 +00:00
Tom Tromey
a3fbf5c383 * gcconfig.h (DYNAMIC_LOADING): Define for PPC Linux.
From-SVN: r33367
2000-04-24 04:57:20 +00:00
Bryce McKinlay
ef8b01f3d9 Makefile.am, [...]: irix_threads.c is now hpux_irix_threads.c.
* Makefile.am, Makefile.in: irix_threads.c is now
        hpux_irix_threads.c.
        * Makefile.orig: Updated from gc distribution Makefile.

From-SVN: r33255
2000-04-19 13:47:53 +01:00
Bryce McKinlay
93002327db Imported version version 5.0alpha6.
* acinclude.m4: Bump version to 5.0a6.
	* configure.in: Don't use alpha_mach_dep.s.
	* include/private/config.h, irix_threads.c gc_watcom.asm: Delete
	obsolete files.

From-SVN: r33251
2000-04-19 11:10:01 +01:00
Anthony Green
89afab9c44 misc.c (GC_enable): Always define GC_enable and GC_disable.
2000-03-26  Anthony Green  <green@redhat.com>

	* misc.c (GC_enable): Always define GC_enable and GC_disable.

From-SVN: r32867
2000-04-02 15:36:43 +00:00
Tom Tromey
9339399091 gc.h (dlopen): Define as GC_dlopen on Linux.
* gc.h (dlopen): Define as GC_dlopen on Linux.
	(GC_dlopen): Declare on Linux.
	* dyn_load.c (GC_dlopen): Define for Linux.

From-SVN: r31970
2000-02-14 21:53:27 +00:00
Anthony Green
72af8e4e63 gcconfig.h (DATASTART): Add missing extern declaration for data_start on powerpc.
* gcconfig.h (DATASTART): Add missing extern declaration
	for data_start on powerpc.

From-SVN: r31677
2000-01-29 01:17:03 +00:00
Bryce McKinlay
54f76845c5 linux_threads.c: Don't block SIGINT, SIGQUIT, SIGTERM in the NO_SIGNALS case.
1999-12-22  Bryce McKinlay  <bryce@albatross.co.nz>

        * linux_threads.c: Don't block SIGINT, SIGQUIT, SIGTERM in the
        NO_SIGNALS case.

From-SVN: r31083
1999-12-24 01:08:34 +00:00
Anthony Green
d352598f80 Alpha Linux changes.
From-SVN: r31030
1999-12-20 05:55:34 +00:00
Anthony Green
abd995697d gcconfig.h: Use libgcj hack for Alpha Linux.
* gcconfig.h: Use libgcj hack for Alpha Linux.
       Undefine MPROTEXT_VDB (from Jeff Sturm).
       * os_dep.c: Remove Alpha Linux hacks.
       * misc.c: Ditto.

From-SVN: r31028
1999-12-20 02:34:52 +00:00
Tom Tromey
edcf698d87 aclocal.m4, configure: Rebuilt.
* aclocal.m4, configure: Rebuilt.
	* acinclude.m4: Changed version to 5.0a4.
	* Makefile.in: Rebuilt.
	* Makefile.am (libgcjgc_la_LDFLAGS): Changed version to 1:1:0.

From-SVN: r30893
1999-12-13 20:15:51 +00:00
Anthony Green
2441e02658 Oops. Date was wrong.
From-SVN: r30876
1999-12-12 18:56:25 +00:00
Anthony Green
d0017c11ff gcconfig.h (DATASTART): Define as (&data_start) for PowerPC Linux.
* gcconfig.h (DATASTART): Define as (&data_start) for PowerPC
        Linux.
        (DYNAMIC_LOADING): Define for PowerPC Linux.
        * os_dep.c: Remove some special cases for PowerPC Linux.
        * misc.c (GC_init_inner): Don't call GC_init_linux_data_start
        for PowerPC Linux.

From-SVN: r30873
1999-12-12 18:06:08 +00:00
Tom Tromey
3442c71cfc Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (libgcjgc_la_SOURCES): Removed quick_threads.c.

From-SVN: r30396
1999-11-04 19:39:50 +00:00
Tom Tromey
a57e0ef582 misc.c (GC_init_inner): Don't call GC_init_linuxppc().
* misc.c (GC_init_inner): Don't call GC_init_linuxppc().
	(GC_thr_init): Don't declare.

From-SVN: r30395
1999-11-04 18:53:24 +00:00
Tom Tromey
81976f93fe configure: Rebuilt.
* configure: Rebuilt.
	* configure.in: Removed qt threads case.
	* dyn_load.c: Don't mention QUICK_THREADS.
	* os_dep.c: Don't mention QUICK_THREADS.
	* misc.c: Don't mention QUICK_THREADS.
	* gcconfig.h: Don't mention QUICK_THREADS.
	* gc_priv.h: Removed QUICK_THREADS code.
	* quick_threads.c: Removed.

From-SVN: r30394
1999-11-04 17:25:07 +00:00
Tom Tromey
d83e44be33 * gcconfig.h: Merged in local changes from old config.h.
From-SVN: r30376
1999-11-03 17:26:59 +00:00
Bryce McKinlay
765de7ea98 gcconfig.h: Don't define MPROTECT_VDB on Linux/i386.
1999-11-02  Bryce McKinlay  <bryce@albatross.co.nz>

        * gcconfig.h: Don't define MPROTECT_VDB on Linux/i386.

From-SVN: r30364
1999-11-03 03:04:52 +00:00
Tom Tromey
a3feaa92e0 * quick_threads.c: Include gcconfig.h, not boehm-config.h.
From-SVN: r30360
1999-11-03 01:26:31 +00:00
Tom Tromey
89de952f8f configure: Rebuilt.
* configure: Rebuilt.
	* configure.in: Don't create boehm-config.h.
	* Makefile.in: Rebuilt.
	* Makefile.am (libgcjgc_la_SOURCES): Reference gcconfig.h, not
	config.h.
	($(all_objs)): Depend on gcconfig.h.
	* gc_priv.h: Reference GCCONFIG_H, not CONFIG_H.
	* gcconfig.h: Define GCCONFIG_H, not CONFIG_H.
	* config.h: Removed.

From-SVN: r30358
1999-11-03 01:11:03 +00:00
Tom Tromey
20bbd3cd53 Merged GC 5.0alpha4 with local changes, plus:
* Makefile.in: Rebuilt.
	* Makefile.am (gctest_LDADD): Added THREADLIB.
	(TESTS): New macro.
	* configure: Rebuilt.
	* configure.in (INCLUDES): New subst.

From-SVN: r30332
1999-11-01 23:15:51 +00:00
Steve Chamberlain
23915d8b70 I am committing the following changes to enable the picojava port.
I am committing the following changes to enable the picojava port.  I
will also forward them to Boehm.

From-SVN: r29767
1999-10-02 15:50:57 +00:00
Tom Tromey
54ce745286 aclocal.m4, configure: Rebuilt.
* aclocal.m4, configure: Rebuilt.
	* acinclude.m4 (LIB_AC_PROG_CC, LIB_AC_PROG_CXX): Provide

From-SVN: r29698
1999-09-28 20:14:11 +00:00
Rainer Orth
47359a8efa gc_priv.h: Merged IRIX thread changes from include/private/gc_priv.h.
Tue Aug 10 00:08:29 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* gc_priv.h: Merged IRIX thread changes from
	include/private/gc_priv.h.

From-SVN: r28740
1999-08-17 22:46:02 +00:00
Rainer Orth
61e922d260 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (toolexeclibdir): Add $(MULTISUBDIR) even for native
	builds.

	* configure: Rebuilt.
	* configure.in: Properly align --help output, fix capitalization
	and punctuation.
	* acinclude.m4: Likewise.

From-SVN: r28638
1999-08-10 05:28:31 +00:00
Tom Tromey
d42058b1a7 * configure.in: Added missing `;;'. From Anthony Green.
From-SVN: r28510
1999-08-04 20:25:54 +00:00
Rainer Orth
276836f0fd configure.in (machdep): Use mips_ultrix_mach_dep.s on Ultrix V4.
Mon Aug  2 23:09:41 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* configure.in (machdep): Use mips_ultrix_mach_dep.s on Ultrix V4.

From-SVN: r28503
1999-08-04 19:51:34 +00:00
Tom Tromey
fa94e3a95d gc_priv.h (GC_test_and_set): Implementation for Linux PPC from Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
* gc_priv.h (GC_test_and_set): Implementation for Linux PPC from
	Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.

From-SVN: r28480
1999-08-04 03:26:15 +00:00