21#ifndef __GCC_WRAPPERS_h
22#define __GCC_WRAPPERS_h
40typedef void *__gthread_key_t;
41typedef int __gthread_once_t;
42typedef void *__gthread_mutex_t;
43typedef void *__gthread_recursive_mutex_t;
45int rtems_gxx_once(__gthread_once_t *once,
void (*func) (
void));
47int rtems_gxx_key_create (__gthread_key_t *key,
void (*dtor) (
void *));
49int rtems_gxx_key_delete (__gthread_key_t key);
51void *rtems_gxx_getspecific(__gthread_key_t key);
53int rtems_gxx_setspecific(__gthread_key_t key,
const void *ptr);
58void rtems_gxx_mutex_init (__gthread_mutex_t *
mutex);
60int rtems_gxx_mutex_lock (__gthread_mutex_t *
mutex);
62int rtems_gxx_mutex_destroy (__gthread_mutex_t *
mutex);
64int rtems_gxx_mutex_trylock (__gthread_mutex_t *
mutex);
66int rtems_gxx_mutex_unlock (__gthread_mutex_t *
mutex);
68void rtems_gxx_recursive_mutex_init(__gthread_recursive_mutex_t *
mutex);
70int rtems_gxx_recursive_mutex_lock(__gthread_recursive_mutex_t *
mutex);
72int rtems_gxx_recursive_mutex_trylock(__gthread_recursive_mutex_t *
mutex);
74int rtems_gxx_recursive_mutex_unlock(__gthread_recursive_mutex_t *
mutex);