Commit Graph

88 Commits

Author SHA1 Message Date
Michael Meissner
a72c65c754 Commit patch #3 of 4 for Power7 VSX support
Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com>
Co-Authored-By: Revital Eres <eres@il.ibm.com>

From-SVN: r150018
2009-07-23 16:05:37 +00:00
Andreas Tobler
6656fda37b dyn_load.c (GC_dyld_image_add): Remove ifdef clause and use the macro GC_GETSECTBYNAME instead.
2007-02-19  Andreas Tobler  <a.tobler@schweiz.org>

	* dyn_load.c (GC_dyld_image_add): Remove ifdef clause and use the macro
	GC_GETSECTBYNAME instead.
	* include/private/gc_priv.h: Define GC_GETSECTBYNAME according to the
	architecture (Darwin).

From-SVN: r132452
2008-02-19 22:29:26 +01:00
Richard Sandiford
f0025d1d69 gcconfig.h (HBLKSIZE): Define for MIPS.
boehm-gc/
	* include/private/gcconfig.h (HBLKSIZE): Define for MIPS.

From-SVN: r131872
2008-01-26 18:24:37 +00:00
David Daney
f2b6bf20c6 * include/private/gcconfig.h: Handle mips64-linux n64 ABI.
From-SVN: r127506
2007-08-15 06:42:16 +00:00
Rainer Orth
28e2ff77f2 re PR boehm-gc/21940 (boehm-gc gctest fails on Solaris 10/x86)
PR boehm-gc/21940
	PR boehm-gc/21942
	* configure.ac (GC_SOLARIS_THREADS): Don't define on *-*-solaris*.
	Use alternate thread library in /usr/lib/lwp.
	* configure: Regenerate.
	* dyn_load.c: Use GC_SOLARIS_PTHREADS.
	* include/gc_config_macros.h (GC_SOLARIS_THREADS): Don't define.
	* include/private/gcconfig.h: Handle 64-bit Solaris 2/x86.
	(GC_SOLARIS_THREADS): Don't define.
	* include/private/solaris_threads.h: Remove.
	* pthread_support.c (GC_thr_init) [GC_SOLARIS_PTHREADS]: Determine
	GC_nprocs via sysconf().
	* Makefile.am (libgcjgc_la_SOURCES): Remove solaris_pthreads.c and
	solaris_threads.c.
	(gctest_LDADD): Use THREADLIBS instead of THREADDLLIBS.
	* Makefile.in: Regenerate.	 
	* solaris_pthreads.c: Remove.
	* solaris_threads.c: Remove.

From-SVN: r126211
2007-07-02 14:56:58 +00:00
Andreas Tobler
ef9cc8efb4 Commit the change of this file, mentionend in the CL from 2007-05-20.
From-SVN: r125039
2007-05-24 21:33:23 +02:00
Roman Zippel
7056b82ec7 gcconfig.h: use LINUX_STACKBOTTOM so it works with Linux 2.6, reactivate MPROTECT_VDB
2007-02-05  Roman Zippel <zippel@linux-m68k.org>

	* boehm-gc/include/private/gcconfig.h: use LINUX_STACKBOTTOM so
	it works with Linux 2.6, reactivate MPROTECT_VDB
	* boehm-gc/pthread_stop_world.c: save all register
	on signal entry

From-SVN: r121606
2007-02-05 18:18:11 +00:00
Andreas Tobler
d88c64564e os_dep.c (defined(MPROTECT_VDB) && defined(DARWIN)): Moved recently added defines to include/private/gc_priv.h
2007-01-19  Andreas Tobler  <a.tobler@schweiz.org>

	* os_dep.c (defined(MPROTECT_VDB) && defined(DARWIN)): Moved recently
	added defines to include/private/gc_priv.h
	* darwin_stop_world.c: Removed the above defines.
	(catch_exception_raise): Added THREAD_FLD in exc_state for POWERPC too.
	* include/private/gc_priv.h: Moved definitions from darwin_stop_world.c
	and os_dep.c to here. Fixed THREAD definition fixes for ppc64.

From-SVN: r120977
2007-01-19 20:19:35 +01:00
Petr Salinger
016a2390f2 gcconfig.h: Handle amd64/x86-64 cpu under GNU/kFreeBSD.
2007-01-16  Petr Salinger  <Petr.Salinger@seznam.cz>

	* include/private/gcconfig.h: Handle amd64/x86-64 cpu under
	 GNU/kFreeBSD.
	* os_dep.c: Likewise.

From-SVN: r120831
2007-01-16 19:38:59 +00:00
Andreas Tobler
583cb3d38f configure.ac: Replaced HAS_I386_THREAD_STATE_* with HAS_X86_THREAD_STATE32_* and...
2007-01-11  Andreas Tobler  <a.tobler@schweiz.org>

	* configure.ac: Replaced HAS_I386_THREAD_STATE_* with
	HAS_X86_THREAD_STATE32_* and HAS_X86_THREAD_STATE64_* respectively.
	* configure: Regenerated.
	* include/private/gcconfig.h (DARWIN): Added X86_64 define for Darwin.
	Added base definitions for the X86_64 Darwin port.
	* include/private/gc_priv.h: Added definitions for Darwin MACH thread
	operations. Moved existing THREAD_STATE info from darwin_stop_world.c.
	* darwin_stop_world.c: Removed THREAD_STATE info. Added
	HAS_X86_THREAD_STATE64___RAX. And replaced HAS_I386_THREAD_STATE___EAX
	with HAS_X86_THREAD_STATE32___EAX.
	(GC_push_all_stacks): Use GC_MACH_THREAD_STATE_COUNT. Add code for
	X86_64 Darwin.
	* dyn_load.c (GC_dyld_name_for_hdr): Use GC_MACH_HEADER.
	(GC_dyld_image_add): Use GC_MACH_HEADER and GC_MACH_SECTION.
	Distinguish between getsectbynamefromheader_64 and
	getsectbynamefromheader.
	(GC_dyld_image_remove): Likewise.
	* os_dep.c (GC_dirty_init): Use GC_MACH_THREAD_STATE.
	(catch_exception_raise): Introduce exception information for I386 and
	X86_64 Darwin. Add X86_64 for exc_state.faultvaddr.

From-SVN: r120684
2007-01-11 21:06:45 +01:00
Mike Stump
9a35ada535 configure.ac: Fix x86 darwin builds.
* configure.ac: Fix x86 darwin builds.
	* darwin_stop_world.c: Likewise.
	* include/private/gcconfig.h: Likewise.
	* connfigure: Regenerate.

From-SVN: r119670
2006-12-08 23:54:21 +00:00
Sandro Tolaini
de7a014db3 os_dep.c: Port to Darwin/i386
2006-09-21  Sandro Tolaini  <tolaini@libero.it>

	* os_dep.c: Port to Darwin/i386
	* darwin_stop_world.c: Likewise
	* include/private/gcconfig.h: Likewise

From-SVN: r117126
2006-09-21 23:47:30 +00:00
Petr Salinger
eb496303d7 configure.ac: add support for GNU/kFreeBSD, accepted by upstream for gc 6.8.
2006-06-07  Petr Salinger  <Petr.Salinger@seznam.cz>

	* configure.ac: add support for GNU/kFreeBSD, accepted by upstream
	for gc 6.8.
	* dyn_load.c: Likewise.
	* include/gc.h: Likewise.
	* private/gcconfig.h: Likewise.
	* configure: Regenerate.
	* include/gc_config.h.in: Regenerate.

From-SVN: r117033
2006-09-18 18:45:08 +00:00
Keith Seitz
7691d0d3c9 pthread_stop_world.c (GC_suspend_handler): Redirect to suspension routine if signal is received and thread is flagged...
* pthread_stop_world.c (GC_suspend_handler): Redirect to suspension
        routine if signal is received and thread is flagged SUSPENDED.
        (suspend_self): New function.
        (GC_suspend_thread): New function.
        (GC_resume_thread): New function.
        * include/gc.h (GC_suspend_thread): Declare.
        (GC_resumet_thread): Declare.
        * include/private/pthread_support.h (SUSPENDED): New GC_thread
        flag.

From-SVN: r114869
2006-06-21 20:56:37 +00:00
Alan Modra
d67c1cb766 gc_locks.h (GC_test_and_set <POWERPC>): Don't use broken 64-bit version.
* include/private/gc_locks.h (GC_test_and_set <POWERPC>): Don't
	use broken 64-bit version.

From-SVN: r110571
2006-02-04 10:45:08 +10:30
Bryce McKinlay
fb247cf801 gcconfig.h: Revert to GC 6.6 version, removing all local changes.
* include/private/gcconfig.h: Revert to GC 6.6 version, removing
	all local changes.

From-SVN: r110222
2006-01-25 19:33:37 +00:00
Bryce McKinlay
54f28c21ee Import Boehm GC version 6.6.
From-SVN: r110204
2006-01-25 03:03:14 +00:00
Bryce McKinlay
39bfe5c798 gc_priv.h: Increase MAX_ROOT_SETS to 1024.
2005-11-01  Bryce McKinlay  <mckinlay@redhat.com>

        * include/private/gc_priv.h: Increase MAX_ROOT_SETS to 1024.

From-SVN: r106362
2005-11-02 00:06:30 +00:00
Kazu Hirata
df3d9c37f9 gc_locks.h (GC_test_and_set): Change the constraint of the first operand to '0'.
* include/private/gc_locks.h (GC_test_and_set): Change the
	constraint of the first operand to '0'.

From-SVN: r104329
2005-09-15 22:35:52 +00:00
Tom Tromey
d102ae00ef re PR boehm-gc/23662 (Binaries generated by arm-linux-gcj segfault on execution on arm target)
PR libgcj/23662:
	* include/private/gcconfig.h (LINUX_STACKBOTTOM): Use instead of
	HEURISTIC1 on ARM.

From-SVN: r103946
2005-09-06 14:22:01 +00:00
SUGIOKA Toshinobu
8caebfaaa6 * include/private/gcconfig.h (sh-linux): Use LINUX_STACKBOTTOM.
From-SVN: r102110
2005-07-17 07:33:58 +00:00
Andreas Tobler
9af9e7faa2 os_dep.c: Add FreeBSD/PowerPC bits.
2005-06-15  Andreas Tobler  <a.tobler@schweiz.ch>

	* os_dep.c: Add FreeBSD/PowerPC bits.
	(GC_SysVGetDataStart): Likewise.
	* include/private/gcconfig.h: Likewise.

From-SVN: r100997
2005-06-15 23:25:54 +02:00
Andrew Haley
5fa579d377 gcconfig.h (HBLKSIZE): Define to 4096 on powerpc64-linux.
2005-05-25  Andrew Haley  <aph@redhat.com>

	* include/private/gcconfig.h (HBLKSIZE): Define to 4096 on
	powerpc64-linux.

From-SVN: r100145
2005-05-25 15:10:00 +02:00
Hans-Peter Nilsson
2586bf38d8 os_dep.c, gc_locks.h: Import CRIS port by Simon Posnjak from gc6.4.
* os_dep.c, include/private/gc_locks.h: Import CRIS port by
	Simon Posnjak from gc6.4.
	* include/private/gcconfig.h: Ditto.  Add M32R note from gc6.4.

From-SVN: r98414
2005-04-19 16:01:38 +00:00
David S. Miller
22d97adab5 gcconfig.h (sparc-linux): Use LINUX_STACKBOTTOM.
2005-04-17  David S. Miller  <davem@davemloft.net>

	* include/private/gcconfig.h (sparc-linux): Use LINUX_STACKBOTTOM.
	* os_dep.c (GC_linux_stack_base): Check for bug present in some
	Sparc glibc variants where __libc_stack_end is erroneously set
	to "1".  Fallback to procfs code in that case.

From-SVN: r98303
2005-04-17 15:01:21 -07:00
Richard Henderson
82052bec13 * include/private/gcconfig.h (alpha-linux): Use LINUX_STACKBOTTOM.
From-SVN: r98032
2005-04-12 12:48:18 -07:00
Mike Stump
97e095fdc7 darwin_stop_world.c: Update for -m64 multilib.
* darwin_stop_world.c: Update for -m64 multilib.
        * include/private/gcconfig.h: Likewise.
        * powerpc_darwin_mach_dep.s: Likewise.

From-SVN: r96968
2005-03-24 00:48:39 +00:00
Bryce McKinlay
5909b0346c re PR libgcj/19823 (java fails with non-executable memory)
2005-02-15  Bryce McKinlay  <mckinlay@redhat.com>

	PR libgcj/19823
	* configure.host: Set gc_use_mmap on *-linux*.
	* configure.ac: Define USE_MMAP if gc_use_mmap is set.
	* include/private/gc_priv.h: Include gc_config.h.
	* configure, include/gc_config.h.in: Rebuilt.

From-SVN: r95094
2005-02-16 04:10:42 +00:00
Ulrich Weigand
e5fa845c7b gc_priv.h (GC_generic_malloc_words_small_inner): Add prototype.
* include/private/gc_priv.h (GC_generic_malloc_words_small_inner):
	Add prototype.

From-SVN: r89283
2004-10-19 17:47:54 +00:00
Kazuhiro Inaoka
66c0e3b596 Add support for M32R
From-SVN: r88976
2004-10-13 10:34:21 +00:00
Hans Boehm
3c1cbf58a6 backgraph.c, gc_priv.h (GC_traverse_back_graph, [...]): split GC_traverse_back_graph.
* backgraph.c, gc_priv.h (GC_traverse_back_graph,
	GC_print_back_graph_stats): split GC_traverse_back_graph.
	* backgraph.c: Dynamically grow in_progress_space.
	* finalize.c (GC_notify_or_invoke_finalizers): also call
	GC_print_back_graph_stats.
	* alloc.c, finalize.c, gc_priv.h (GC_generate_random_backtrace_no_gc,
	GC_print_back_height): Move delarations to header file.
	* configure.ac: rename --enable-full-debug to --enable-gc-debug.
	* configure: Regenerate.

From-SVN: r86685
2004-08-28 00:41:41 +00:00
Hans Boehm
9a870e6c4c aix_irix_threads.c: Move _THREADS checks after gc_priv.h include.
* aix_irix_threads.c: Move _THREADS checks after gc_priv.h include.
	* backgraph.c, include/private/gc_pmark.h: Always include gc.h.

From-SVN: r86442
2004-08-23 21:40:17 +00:00
Bryce McKinlay
4109fe8594 configure.in (GCINCS): Don't use "boehm-cflags".
libjava:
2004-08-13  Bryce McKinlay  <mckinlay@redhat.com>

	* configure.in (GCINCS): Don't use "boehm-cflags". Instead, -I
	boehm-gc's include dirs.
	* configure: Rebuilt.
	* include/boehm-gc.h: Include gc_config.h.

boehm-gc:
2004-08-13  Bryce McKinlay  <mckinlay@redhat.com>

	* configure.ac (gc_cflags): Add -Iinclude.
	(AC_CONFIG_HEADERS): New. Configure gc_config.h header.
	Don't write DEFS to boehm-cflags file.
	* configure: Rebuilt.
	* gcj_mlc.c: Check #ifdef GC_GCJ_SUPPORT after including headers.
	* specific.c: Check #ifdef GC_LINUX_THREADS after including headers.
	* include/gc_config_macros.h: Remove backward-compatibility
	redefinitions of GC_ names.
	* include/gc.h: Include <gc_config.h>.

2004-08-13  Bryce McKinlay  <mckinlay@redhat.com>

	Import Boehm GC version 6.3.

From-SVN: r85972
2004-08-14 00:05:36 +01:00
Bryce McKinlay
aa7a966b44 This commit was generated by cvs2svn to compensate for changes in r85899,
which included commits to RCS files with non-trunk default branches.

From-SVN: r85900
2004-08-12 22:14:30 +01:00
H.J. Lu
652466353b gcconfig.h (PREFETCH): Use __builtin_prefetch for gcc >= 3.0.
2004-04-06  H.J. Lu  <hongjiu.lu@intel.com>

	* include/private/gcconfig.h (PREFETCH): Use __builtin_prefetch
	for gcc >= 3.0.
	(PREFETCH_FOR_WRITE): Likewise.

From-SVN: r80459
2004-04-06 11:05:05 -07:00
Andrew Haley
1bec19ccf7 gcconfig.h (USE_MMAP): Define for all Linux.
2004-01-20  Andrew Haley  <aph@redhat.com>

        * include/private/gcconfig.h (USE_MMAP): Define for all Linux.

        * configure.in: Comment change.

From-SVN: r76210
2004-01-20 15:18:33 +00:00
Richard Earnshaw
35a59bd56f * include/private/gcconfig.h: Re-install change of 2003-04-16.
From-SVN: r73134
2003-10-31 11:03:00 +00:00
Alan Modra
d938f1718c gcconfig.h (ALIGNMENT <powerpc linux>): Remove unsure comment.
* include/private/gcconfig.h (ALIGNMENT <powerpc linux>): Remove
	unsure comment.

From-SVN: r72608
2003-10-18 00:29:17 +09:30
Hans Boehm
aa44273b85 configure.in: Remove NO_GETENV definition for win32.
* configure.in: Remove NO_GETENV definition for win32.
	* mach_dep.c (GC_generic_push_regs): Prevent tail call optimization.
	* misc.c (GC_init_inner): Call GC_thr_init for win32.
	  (GC_set_warn_proc): Add assertion.
	* win32_threads.c: Import 6.3alpha2 version.
	* include/private/gc_priv.h: Add support for EMPTY_GETENV_RESULTS.

From-SVN: r72074
2003-10-03 18:43:06 +00:00
Anthony Green
0722cb666c Fix arm-elf support.
From-SVN: r71613
2003-09-21 00:15:52 +00:00
Jeff Sturm
30c3de1ffb Import GC 6.3alpha1.
* BCC_MAKEFILE: Merge with GC 6.3alpha1 release.
	* ChangeLog: Likewise.
	* Makefile.am: Likewise.
	* Makefile.direct: Likewise.
	* Makefile.dj: Likewise.
	* allchblk.c: Likewise.
	* alloc.c: Likewise.
	* backgraph.c: Likewise.
	* configure.host: Likewise.
	* configure.in: Likewise.
	* dbg_mlc.c: Likewise.
	* dyn_load.c: Likewise.
	* finalize.c: Likewise.
	* gc_cpp.cc: Likewise.
	* gc_dlopen.c: Likewise.
	* gcj_mlc.c: Likewise.
	* if_mach.c: Likewise.
	* mach_dep.c: Likewise.
	* malloc.c: Likewise.
	* mallocx.c: Likewise.
	* mark.c: Likewise.
	* mark_rts.c: Likewise.
	* misc.c: Likewise.
	* os_dep.c: Likewise.
	* ptr_chck.c: Likewise.
	* reclaim.c: Likewise.
	* solaris_pthreads.c: Likewise.
	* solaris_threads.c: Likewise.
	* sparc_mach_dep.S: Likewise.
	* threadlibs.c: Likewise.
	* typd_mlc.c: Likewise.
	* version.h: Likewise.
	* win32_threads.c: Likewise.
	* Mac_files/MacOS_Test_config.h: Likewise.
	* Mac_files/MacOS_config.h: Likewise.
	* cord/cordbscs.c: Likewise.
	* cord/cordprnt.c: Likewise.
	* cord/de_win.c: Likewise.
	* doc/README: Likewise.
	* doc/README.MacOSX: Likewise.
	* doc/README.changes: Likewise.
	* doc/README.environment: Likewise.
	* doc/README.ews4800: Likewise.
	* doc/README.linux: Likewise.
	* doc/README.macros: Likewise.
	* doc/README.win32: Likewise.
	* doc/debugging.html: Likewise.
	* doc/gcdescr.html: Likewise.
	* doc/tree.html: Likewise.
	* include/Makefile.in: Likewise.
	* include/gc.h: Likewise.
	* include/gc_cpp.h: Likewise.
	* include/gc_local_alloc.h: Likewise.
	* include/gc_mark.h: Likewise.
	* include/gc_pthread_redirects.h: Likewise.
	* include/gc_typed.h: Likewise.
	* include/new_gc_alloc.h: Likewise.
	* include/private/dbg_mlc.h: Likewise.
	* include/private/gc_hdrs.h: Likewise.
	* include/private/gc_locks.h: Likewise.
	* include/private/gc_pmark.h: Likewise.
	* include/private/gc_priv.h: Likewise.
	* include/private/gcconfig.h: Likewise.
	* include/private/solaris_threads.h: Likewise.
	* include/private/specific.h: Likewise.
	* tests/test.c: Likewise.
	* tests/test_cpp.cc: Likewise.

	* configure: Rebuild.
	* Makefile.in: Rebuild.

	* mips_sgi_mach_dep.s: Add.

	* alpha_mach_dep.s: Remove.
	* irix_threads.c: Remove.
	* linux_threads.c: Remove.
	* mips_sgi_mach_dep.S: Remove.
	* missing: Remove.
	* powerpc_macosx_mach_dep.s: Remove.
	* doc/Makefile.am: Remove.
	* doc/Makefile.in: Remove.

From-SVN: r69880
2003-07-28 04:18:23 +00:00
Jeff Sturm
6991c6c926 Initial revision
From-SVN: r69872
2003-07-28 03:46:07 +00:00
Richard Earnshaw
351c2c4b2f * include/private/gcconfig.h: Add support for arm-netbsdelf.
From-SVN: r65692
2003-04-16 18:28:29 +00:00
Tom Tromey
739c578934 gcconfig.h (LINUX_STACKBOTTOM): Define for POWERPC.
* include/private/gcconfig.h (LINUX_STACKBOTTOM): Define for
	POWERPC.
	(STACK_GRAN, HEURISTIC1): Don't define for POWERPC.

From-SVN: r65411
2003-04-10 00:08:10 +00:00
Richard Henderson
2298018014 gc_locks.h [IA64]: Include ia64intrin.h.
* include/private/gc_locks.h [IA64]: Include ia64intrin.h.
        (GC_test_and_set): Use __sync_lock_test_and_set.
        (GC_clear): Use volatile assignment.
        (GC_compare_and_exchange): Use __sync_bool_compare_and_swap.
        (GC_memory_write_barrier): Use __sync_synchronize.

From-SVN: r64736
2003-03-22 17:36:22 -08:00
Hans Boehm
c62b906422 gcconfig.h (GC_data_start): declare when needed.
2003-03-04  Hans Boehm <Hans.Boehm@hp.com>
	* include/private/gcconfig.h (GC_data_start): declare when needed.
	* include/private/gc_priv.h: Include gcconfig.h after ptr_t
	declaration.
	* dyn_load.c (GC_register_dynamic_libraries_dl_iterate_phdr,
	GC_register_dynlib_callback): Register main data for static
	executable if dl_iterate_phdr() didn't.
	* misc.c (GC_init_inner): Call GC_init_linux_data_start() even
	if we don't expect to register main static data.

From-SVN: r63809
2003-03-04 22:18:08 +00:00
Hans Boehm
ebcc6a7ec0 mark_rts.c (GC_cond_register_dynamic_libraries): add.
2003-03-03  Hans Boehm  <Hans.Boehm@hp.com>
	* mark_rts.c (GC_cond_register_dynamic_libraries): add.
	(GC_push_roots): explicitly mark free list headers, register
	dynamic libraries only if !REGISTER_LIBRARIES_EARLY.
	* alloc.c (GC_stopped_mark): Conditionally call
	GC_cond_register_dynamic_libraries().
	(GC_collect_a_little_inner, GC_try_to_collect_inner): Check GC_dont_gc.
	* dyn_load.c (GC_register_main_static_data): define.
	(GC_register_dyn_libraries (Linux /proc, Linux ELF versions)):
	no longer skip main data.
	* misc.c (GC_REGISTER_MAIN_STATIC_DATA): define.
	(GC_init_inner): Make main data registration conditional.
	* include/private/gc_priv.h (GC_register_main_static_data): declare.
	* include/private/gcconfig.h (REGISTER_LIBRARIES_EARLY): define
	for LINUX.

From-SVN: r63727
2003-03-03 19:34:11 +00:00
Andreas Tobler
290a4db981 gcconfig.h: undefine MPROTECT_VDB for MACOSX
2003-02-11  Andreas Tobler  <a.tobler@schweiz.ch>

        * include/private/gcconfig.h: undefine MPROTECT_VDB for MACOSX

From-SVN: r62705
2003-02-11 19:22:08 +01:00
Andreas Jaeger
eae853b7d5 * include/private/gcconfig.h (HBLKSIZE): Define for x86-64.
From-SVN: r57728
2002-10-02 08:25:37 +02:00
Richard Earnshaw
82cfabc1a9 gcconfig.h: Don't check for __XSCALE__.
* include/private/gcconfig.h: Don't check for __XSCALE__.  Instead
check for __arm__ or __thumb__.

From-SVN: r57610
2002-09-28 12:12:36 +00:00