]> granicus.if.org Git - gc/commit
Support multi-threading for RTEMS target.
authorJie Liu <lj8175@gmail.com>
Fri, 9 Sep 2011 14:21:49 +0000 (18:21 +0400)
committerIvan Maidanski <ivmai@mail.ru>
Fri, 9 Sep 2011 14:21:49 +0000 (18:21 +0400)
commit0539e08bb47d310c01bbb35354954436157110d0
tree70556fd88bd88c725b9f935d2a4015a510e5f365
parentd40bcf238067f2be8e9a8327b2e915eeab8d6818
Support multi-threading for RTEMS target.
(Apply commit e773036)

* configure.ac: Add GC_RTEMS_PTHREADS AH_TEMPLATE and configure
for rtems.
* os_dep.c: Add GC_get_stack_base if GC_RTEMS_PTHREADS for rtems.
* pthread_stop_world.c (GC_stop_init): Add ifdef SA_RESTART.
* pthread_stop_world.c (GC_stop_init): Use sigprocmask for rtems
when defined GC_RTEMS_PTHREADS.
* pthread_support.c: Exclude sys/mman.h for rtems.
* pthread_support.c (GC_thr_init): Set default GC_nprocs (1) for
rtems.
* include/gc_config_macros.h: Define GC_RTEMS_PTHREADS for rtems
pthread and define GC_NO_DLOPEN for rtems.
* include/private/gc_locks.h: Define USE_PTHREAD_LOCKS for rtems.
* include/private/gcconfig.h: Use rtems_get_stack_bottom()
for InitStackBottom; and use SIGUSR1 for SIG_SUSPEND, SIGUSR2
for SIG_THR_RESTART on rtems.
* include/private/thread_local_alloc.h: Use USE_PTHREAD_SPECIFIC
for rtems.
* tests/test.c (Init): Use exit(0) for rtems instead of return.
* configure: Regenerate.
* include/private/config.h.in: Ditto.
12 files changed:
ChangeLog
configure
configure.ac
include/gc_config_macros.h
include/private/config.h.in
include/private/gc_locks.h
include/private/gcconfig.h
include/private/thread_local_alloc.h
os_dep.c
pthread_stop_world.c
pthread_support.c
tests/test.c