LLVM OpenMP* Runtime Library
|
#include <kmp_wait_release.h>
Public Member Functions | |
std::atomic< PtrType > * | get () |
void * | get_void_p () |
void | set (std::atomic< PtrType > *new_loc) |
PtrType | load () |
void | store (PtrType val) |
bool | done_check () |
bool | done_check_val (PtrType old_loc) |
bool | notdone_check () |
void | internal_release () |
PtrType | set_sleeping () |
void | unset_sleeping () |
bool | is_sleeping_val (PtrType old_loc) |
bool | is_sleeping () |
![]() | |
flag_type | get_type () |
kmp_info_t * | get_waiter (kmp_uint32 i) |
kmp_uint32 | get_num_waiters () |
void | set_waiter (kmp_info_t *thr) |
Protected Attributes | |
std::atomic< PtrType > * | loc |
PtrType | checker |
![]() | |
flag_properties | t |
kmp_info_t * | waiting_threads [1] |
kmp_uint32 | num_waiting_threads |
Base class for wait/release atomic flag
Definition at line 234 of file kmp_wait_release.h.
|
inline |
Definition at line 261 of file kmp_wait_release.h.
|
inline |
old_loc | in old value of flag |
Definition at line 269 of file kmp_wait_release.h.
|
inline |
Definition at line 251 of file kmp_wait_release.h.
Referenced by kmp_flag_atomic< PtrType, FlagType, Sleepable >::internal_release(), kmp_flag_atomic< PtrType, FlagType, Sleepable >::set_sleeping(), and kmp_flag_atomic< PtrType, FlagType, Sleepable >::unset_sleeping().
|
inline |
Definition at line 253 of file kmp_wait_release.h.
|
inline |
Definition at line 278 of file kmp_wait_release.h.
|
inline |
Test whether there are threads sleeping on the flag.
Definition at line 307 of file kmp_wait_release.h.
|
inline |
old_loc | in old value of flag Test whether there are threads sleeping on flag's old value in old_loc. |
Definition at line 301 of file kmp_wait_release.h.
Referenced by kmp_flag_atomic< PtrType, FlagType, Sleepable >::is_sleeping().
|
inline |
Definition at line 257 of file kmp_wait_release.h.
Referenced by kmp_flag_atomic< PtrType, FlagType, Sleepable >::done_check(), kmp_flag_atomic< PtrType, FlagType, Sleepable >::is_sleeping(), and kmp_flag_atomic< PtrType, FlagType, Sleepable >::notdone_check().
|
inline |
Definition at line 275 of file kmp_wait_release.h.
|
inline |
new_loc | in set loc to point at new_loc |
Definition at line 255 of file kmp_wait_release.h.
|
inline |
Definition at line 282 of file kmp_wait_release.h.
|
inline |
val | the new flag value to be stored |
Definition at line 259 of file kmp_wait_release.h.
|
inline |
Definition at line 292 of file kmp_wait_release.h.
|
protected |
Flag == checker means it has been released.
Definition at line 237 of file kmp_wait_release.h.
Referenced by kmp_flag_atomic< PtrType, FlagType, Sleepable >::done_check(), kmp_flag_atomic< PtrType, FlagType, Sleepable >::done_check_val(), and kmp_flag_atomic< PtrType, FlagType, Sleepable >::notdone_check().
|
protected |
Pointer to flag location to wait on
Definition at line 236 of file kmp_wait_release.h.
Referenced by kmp_flag_atomic< PtrType, FlagType, Sleepable >::get(), kmp_flag_atomic< PtrType, FlagType, Sleepable >::get_void_p(), kmp_flag_atomic< PtrType, FlagType, Sleepable >::load(), kmp_flag_atomic< PtrType, FlagType, Sleepable >::set(), and kmp_flag_atomic< PtrType, FlagType, Sleepable >::store().