static void emutls_init (void) { #ifndef __GTHREAD_MUTEX_INIT __GTHREAD_MUTEX_INIT_FUNCTION (&emutls_mutex); #endif if (__gthread_key_create (&emutls_key, emutls_destroy) != 0) abort (); }
static void eh_threads_initialize () { /* Try to create the key. If it fails, revert to static method, otherwise start using thread specific EH contexts. */ if (__gthread_key_create (&eh_context_key, &eh_context_free) == 0) get_eh_context = &eh_context_specific; else get_eh_context = &eh_context_static; }
static void fc_key_init (void) { use_fc_key = __gthread_key_create (&fc_key, fc_key_dtor) == 0; }