Lines Matching full:task
94 static inline void __kmp_release_deps(kmp_int32 gtid, kmp_taskdata_t *task) { in __kmp_release_deps() argument
97 if (task->is_taskgraph && !(__kmp_tdg_is_recording(task->tdg->tdg_status))) { in __kmp_release_deps()
98 kmp_node_info_t *TaskInfo = &(task->tdg->record_map[task->td_task_id]); in __kmp_release_deps()
102 kmp_node_info_t *successor = &(task->tdg->record_map[successorNumber]); in __kmp_release_deps()
104 if (successor->task != nullptr && npredecessors == 0) { in __kmp_release_deps()
105 __kmp_omp_task(gtid, successor->task, false); in __kmp_release_deps()
113 kmp_depnode_t *node = task->td_depnode; in __kmp_release_deps()
125 if (task->td_dephash) { in __kmp_release_deps()
127 40, ("__kmp_release_deps: T#%d freeing dependencies hash of task %p.\n", in __kmp_release_deps()
128 gtid, task)); in __kmp_release_deps()
129 __kmp_dephash_free(thread, task->td_dephash); in __kmp_release_deps()
130 task->td_dephash = NULL; in __kmp_release_deps()
136 KA_TRACE(20, ("__kmp_release_deps: T#%d notifying successors of task %p.\n", in __kmp_release_deps()
137 gtid, task)); in __kmp_release_deps()
141 if (!task->is_taskgraph || in __kmp_release_deps()
142 (task->is_taskgraph && !__kmp_tdg_is_recording(task->tdg->tdg_status))) in __kmp_release_deps()
144 node->dn.task = in __kmp_release_deps()
145 NULL; // mark this task as finished, so no new dependencies are generated in __kmp_release_deps()
157 // successor task can be NULL for wait_depends or because deps are still in __kmp_release_deps()
164 if (successor->dn.task) { in __kmp_release_deps()
167 gtid, successor->dn.task, task)); in __kmp_release_deps()
168 // If a regular task depending on a hidden helper task, when the in __kmp_release_deps()
169 // hidden helper task is done, the regular task should be executed by in __kmp_release_deps()
173 KMP_ASSERT(task->td_flags.hidden_helper); in __kmp_release_deps()
174 next_taskdata = KMP_TASK_TO_TASKDATA(successor->dn.task); in __kmp_release_deps()
175 // If the dependent task is a regular task, we need to push to its in __kmp_release_deps()
182 __kmpc_give_task(successor->dn.task, encountering_tid); in __kmp_release_deps()
184 __kmp_omp_task(gtid, successor->dn.task, false); in __kmp_release_deps()
187 __kmp_omp_task(gtid, successor->dn.task, false); in __kmp_release_deps()
206 gtid, task)); in __kmp_release_deps()