Ludovic Courtès
6f03035fe8
Merge branch 'master' into boehm-demers-weiser-gc
...
Conflicts:
libguile/Makefile.am
libguile/coop-defs.h
libguile/gc-card.c
libguile/gc-freelist.c
libguile/gc-malloc.c
libguile/gc-mark.c
libguile/gc-segment.c
libguile/gc.c
libguile/gc.h
libguile/gc_os_dep.c
libguile/hashtab.c
libguile/hashtab.h
libguile/inline.h
libguile/private-gc.h
libguile/struct.c
libguile/struct.h
libguile/threads.c
libguile/threads.h
libguile/vectors.h
libguile/weaks.h
test-suite/tests/gc.test
2008-09-10 23:09:30 +02:00
Ludovic Courtes
e7bca22779
Use thread-local allocation (significant perf. improvement!); added the `boehm-gc.h' header.
...
* libguile/Makefile.am (modinclude_HEADERS): Added `boehm-gc.h'.
* libguile/coop-defs.h: Use "libguile/boehm-gc.h" instead of <gc/gc.h>.
* libguile/coop-threads.h: Likewise.
* libguile/coop.c: Likewise.
* libguile/gc.c: Likewise.
(scm_storage_prehistory): Invoke `GC_init ()'.
* libguile/guardians.c: Use "libguile/boehm-gc.h" instead of <gc/gc.h>.
* libguile/inline.h: Likewise.
(scm_double_cell): Use `GC_MALLOC' instead of `GC_malloc'.
* libguile/pthread-threads.h: Use "libguile/boehm-gc.h" instead of
<gc/gc.h>.
* libguile/smob.c: Likewise.
* libguile/smob.h: Likewise.
* libguile/struct.c: Likewise.
* libguile/threads.c: Likewise.
* libguile/weaks.c: Likewise.
git-archimport-id: lcourtes@laas.fr--2005-libre/guile-core--boehm-gc--1.9--patch-51
2008-09-10 22:19:49 +02:00
Ludovic Court`es
89f423d5ad
Tell `libgc' that we're using POSIX threads. This fixes Guile on PPC.
...
* libguile/coop-defs.h: If `GUILE_PTHREAD_COMPAT' is defined, then define
`GC_THREADS' and include <gc/gc.h> after <pthread.h>.
* libguile/coop-pthreads.h: Likewise.
* libguile/pthread-threads.h: Likewise.
git-archimport-id: lcourtes@laas.fr--2005-libre/guile-core--boehm-gc--1.9--patch-10
2008-09-05 00:47:11 +02:00
Ludovic Courtès
102dbb6f6c
Add `SCM_INTERNAL' macro, use it.
2008-05-31 23:21:02 +02:00
Kevin Ryde
2b829bbb3d
merge from 1.8 branch
2006-04-17 00:05:42 +00:00
Marius Vollmer
92205699d0
The FSF has a new address.
2005-05-23 19:57:22 +00:00
Marius Vollmer
73be1d9e8e
Changed license terms to the plain LGPL thru-out.
2003-04-05 19:15:35 +00:00
Mikael Djurfeldt
7673491416
* coop-pthreads.c, coop-pthreads.h: scm_internal_select should be
...
part of the API, otherwise it's difficult to write Guile
extensions using non-blocking I/O => moved #include
"libguile/iselect.h" from coop-pthreads.c --> coop-pthreads.h.
* coop-pthreads.c (scm_unlock_mutex): Changed s_lock_mutex -->
s_unlock_mutex.
2002-11-14 17:17:40 +00:00
Mikael Djurfeldt
9be8bb4541
* coop-pthreads.h: Added support for thread specific data to the
...
generic C API for the coop-pthreads case.
2002-11-07 14:35:08 +00:00
Marius Vollmer
0019d6a19d
Redone completely, you might start testing it now.
2002-11-02 01:02:35 +00:00
Marius Vollmer
cf8ea1a3d1
Updated, but still totally unusable.
2002-10-30 10:41:51 +00:00
Marius Vollmer
d97eb496fc
* coop-pthreads.h, coop-pthreads.c: New, but unfinished.
2002-10-27 20:26:21 +00:00