]> granicus.if.org Git - gc/commit
Support multi-threading for RTEMS target.
authorJie Liu <lj8175@gmail.com>
Tue, 9 Aug 2011 19:30:20 +0000 (23:30 +0400)
committerIvan Maidanski <ivmai@mail.ru>
Tue, 9 Aug 2011 19:30:20 +0000 (23:30 +0400)
commite773036d91ef039c19793812f85e9f90c664e65e
tree24991ebaca0ff5f852acdb3e24493bbf8d702f8f
parentace8118f4f46e4d5b65ba63f26ea7631284244ac
Support multi-threading for RTEMS target.

* 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.ac
include/gc_config_macros.h
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