pthread_mutex_lock(thread->state_lock);
thread->state = state;
pthread_cond_broadcast(thread->state_cond);
pthread_mutex_unlock(thread->state_lock);
pthread_mutex_lock(thread->state_lock);
thread->state = state;
pthread_cond_broadcast(thread->state_cond);
pthread_mutex_unlock(thread->state_lock);
pthread_mutex_lock(thread->state_lock);
while (thread->state == state)
pthread_cond_wait(thread->state_cond, thread->state_lock);
pthread_mutex_unlock(thread->state_lock);
pthread_mutex_lock(thread->state_lock);
while (thread->state == state)
pthread_cond_wait(thread->state_cond, thread->state_lock);
pthread_mutex_unlock(thread->state_lock);
#ifdef LISP_FEATURE_SB_THREAD
if(thread && sym->tls_index) {
lispobj *r = &(((union per_thread_data *)thread)
#ifdef LISP_FEATURE_SB_THREAD
if(thread && sym->tls_index) {
lispobj *r = &(((union per_thread_data *)thread)
(pointer_sized_uint_t)(tagged_symbol_pointer-OTHER_POINTER_LOWTAG);
#ifdef LISP_FEATURE_SB_THREAD
return ((union per_thread_data *)thread)
(pointer_sized_uint_t)(tagged_symbol_pointer-OTHER_POINTER_LOWTAG);
#ifdef LISP_FEATURE_SB_THREAD
return ((union per_thread_data *)thread)
#ifdef LISP_FEATURE_SB_THREAD
if(thread && sym->tls_index) {
lispobj *pr= &(((union per_thread_data *)thread)
#ifdef LISP_FEATURE_SB_THREAD
if(thread && sym->tls_index) {
lispobj *pr= &(((union per_thread_data *)thread)
struct symbol *sym= (struct symbol *)
(pointer_sized_uint_t)(tagged_symbol_pointer-OTHER_POINTER_LOWTAG);
((union per_thread_data *)thread)
struct symbol *sym= (struct symbol *)
(pointer_sized_uint_t)(tagged_symbol_pointer-OTHER_POINTER_LOWTAG);
((union per_thread_data *)thread)
SymbolValue(BINDING_STACK_POINTER, thread)
#define set_binding_stack_pointer(thread,value) \
SetSymbolValue(BINDING_STACK_POINTER, (lispobj)(value), thread)
SymbolValue(BINDING_STACK_POINTER, thread)
#define set_binding_stack_pointer(thread,value) \
SetSymbolValue(BINDING_STACK_POINTER, (lispobj)(value), thread)