Home
last modified time | relevance | path

Searched refs:isem (Results 1 – 3 of 3) sorted by relevance

/nptl/
A Dsem_init.c46 struct new_sem *isem = (struct new_sem *) sem; in __new_sem_init() local
50 isem->data = value; in __new_sem_init()
52 isem->value = value << SEM_VALUE_SHIFT; in __new_sem_init()
54 isem->pad = 0; in __new_sem_init()
55 isem->nwaiters = 0; in __new_sem_init()
58 isem->private = (pshared == PTHREAD_PROCESS_PRIVATE in __new_sem_init()
84 struct old_sem *isem = (struct old_sem *) sem; in __old_sem_init() local
87 isem->value = value; in __old_sem_init()
A Dsem_post.c34 struct new_sem *isem = (struct new_sem *) sem; in __new_sem_post() local
35 int private = isem->private; in __new_sem_post()
43 uint64_t d = atomic_load_relaxed (&isem->data); in __new_sem_post()
52 while (!atomic_compare_exchange_weak_release (&isem->data, &d, d + 1)); in __new_sem_post()
56 futex_wake (((unsigned int *) &isem->data) + SEM_VALUE_OFFSET, 1, private); in __new_sem_post()
59 unsigned int v = atomic_load_relaxed (&isem->value); in __new_sem_post()
69 (&isem->value, &v, v + (1 << SEM_VALUE_SHIFT))); in __new_sem_post()
73 futex_wake (&isem->value, 1, private); in __new_sem_post()
A Dsem_getvalue.c27 struct new_sem *isem = (struct new_sem *) sem; in __new_sem_getvalue() local
37 *sval = atomic_load_relaxed (&isem->data) & SEM_VALUE_MASK; in __new_sem_getvalue()
39 *sval = atomic_load_relaxed (&isem->value) >> SEM_VALUE_SHIFT; in __new_sem_getvalue()
54 struct old_sem *isem = (struct old_sem *) sem; in __old_sem_getvalue() local
55 *sval = isem->value; in __old_sem_getvalue()

Completed in 4 milliseconds