29.8 Races
For an execution execution, two events E and D in
- If E is not D, then
- If the pairs (E, D) and (D, E) are not in execution.[[HappensBefore]], then
- If E and D are both
WriteSharedMemory orReadModifyWriteSharedMemory events and E and D do not have disjoint ranges, then- Return
true .
- Return
- If execution.[[ReadsFrom]] contains either (E, D) or (D, E), then
- Return
true .
- Return
- If E and D are both
- If the pairs (E, D) and (D, E) are not in execution.[[HappensBefore]], then
- Return
false .