llvm-project
47db85c4 - [clang][OpenMP] Diagnose non-replayable tasks in a taskgraph region

Commit
10 days ago
[clang][OpenMP] Diagnose non-replayable tasks in a taskgraph region OpenMP 6.0 [14.3] forbids a replayable construct in a taskgraph region from generating a detachable, transparent or undeferred task. None of the three can be a graph node: a detachable task's completion event is created when the task is generated, so a replay, which does not generate the task again, leaves the program no event to fulfil and the node never completes; a transparent task's dependences are matched outside the region the graph was recorded for; and an undeferred task runs in the generating thread rather than as a node at all. This patch implements those restrictions for Clang. Similar checks are already present in Flang. Assisted-By: Claude Opus 5 Pull Request: https://github.com/llvm/llvm-project/pull/225716
Author
Committer
Parents
Loading