reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
37 node->dn.successors = NULL; 38 node->dn.task = NULL; // will point to the rigth task 41 node->dn.mtx_locks[i] = NULL; 42 node->dn.mtx_num_locks = 0; 43 __kmp_init_lock(&node->dn.lock); 44 KMP_ATOMIC_ST_RLX(&node->dn.nrefs, 1); // init creates the first reference 51 KMP_ATOMIC_INC(&node->dn.nrefs); 226 kmp_taskdata_t *task_source = KMP_TASK_TO_TASKDATA(source->dn.task); 246 if (dep->dn.task) { 247 KMP_ACQUIRE_DEPNODE(gtid, dep); 248 if (dep->dn.task) { 250 dep->dn.successors = __kmp_add_node(thread, dep->dn.successors, node); 250 dep->dn.successors = __kmp_add_node(thread, dep->dn.successors, node); 257 KMP_RELEASE_DEPNODE(gtid, dep); 271 if (sink->dn.task) { 273 KMP_ACQUIRE_DEPNODE(gtid, sink); 274 if (sink->dn.task) { 276 sink->dn.successors = __kmp_add_node(thread, sink->dn.successors, source); 276 sink->dn.successors = __kmp_add_node(thread, sink->dn.successors, source); 283 KMP_RELEASE_DEPNODE(gtid, sink); 385 if (node->dn.mtx_locks[m] < info->mtx_lock) { 387 for (int n = node->dn.mtx_num_locks; n > m; --n) { 390 node->dn.mtx_locks[n] = node->dn.mtx_locks[n - 1]; 390 node->dn.mtx_locks[n] = node->dn.mtx_locks[n - 1]; 392 node->dn.mtx_locks[m] = info->mtx_lock; 397 node->dn.mtx_num_locks++; 458 node->dn.npredecessors = -1; 469 node->dn.task = task; 479 node->dn.npredecessors.fetch_add(npredecessors) + npredecessors; 701 kmp_flag_32 flag((std::atomic<kmp_uint32> *)&node.dn.npredecessors, 0U); 702 while (node.dn.npredecessors > 0) {projects/openmp/runtime/src/kmp_taskdeps.h
27 kmp_int32 n = KMP_ATOMIC_DEC(&node->dn.nrefs) - 1; 29 KMP_ASSERT(node->dn.nrefs == 0); 106 KMP_ACQUIRE_DEPNODE(gtid, node); 107 node->dn.task = 109 KMP_RELEASE_DEPNODE(gtid, node); 112 for (kmp_depnode_list_t *p = node->dn.successors; p; p = next) { 114 kmp_int32 npredecessors = KMP_ATOMIC_DEC(&successor->dn.npredecessors) - 1; 120 if (successor->dn.task) { 124 __kmp_omp_task(gtid, successor->dn.task, false);projects/openmp/runtime/src/kmp_tasking.cpp
278 if (node && (node->dn.mtx_num_locks > 0)) { 279 for (int i = 0; i < node->dn.mtx_num_locks; ++i) { 281 if (__kmp_test_lock(node->dn.mtx_locks[i], gtid)) 285 __kmp_release_lock(node->dn.mtx_locks[j], gtid); 289 node->dn.mtx_num_locks = -node->dn.mtx_num_locks; 289 node->dn.mtx_num_locks = -node->dn.mtx_num_locks; 855 if (node && (node->dn.mtx_num_locks < 0)) { 857 node->dn.mtx_num_locks = -node->dn.mtx_num_locks; 857 node->dn.mtx_num_locks = -node->dn.mtx_num_locks; 858 for (int i = node->dn.mtx_num_locks - 1; i >= 0; --i) { 860 __kmp_release_lock(node->dn.mtx_locks[i], gtid);