28 lines
687 B
C
28 lines
687 B
C
////////////////////////////////////////////////////////////
|
|
//~ @hookimpl Not-equal futex ops
|
|
|
|
void FutexYieldNeq(volatile void *addr, void *cmp, u8 cmp_size)
|
|
{
|
|
WaitOnAddress(addr, cmp, cmp_size, INFINITE);
|
|
}
|
|
|
|
void FutexWakeNeq(void *addr)
|
|
{
|
|
WakeByAddressAll(addr);
|
|
}
|
|
|
|
////////////////////////////////////////////////////////////
|
|
//~ @hookimpl Greater-than-or-equal futex ops
|
|
|
|
void FutexYieldGte(volatile void *addr, void *cmp, u8 cmp_size)
|
|
{
|
|
/* TODO: Actually implement this. Just emulating via neq for now. */
|
|
FutexYieldNeq(addr, cmp, cmp_size);
|
|
}
|
|
|
|
void FutexWakeGte(void *addr)
|
|
{
|
|
/* TODO: Actually implement this. Just emulating via neq for now. */
|
|
FutexWakeNeq(addr);
|
|
}
|