Skip to content

Commit 398d974

Browse files
committed
Ensure that adjoint access modes carry over from nested parallel regions.
1 parent a6b9655 commit 398d974

1 file changed

Lines changed: 6 additions & 0 deletions

File tree

include/opdi/logic/omp/parallelOmpLogic.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,12 @@ void opdi::ParallelOmpLogic::onParallelEnd(void* dataPtr) {
177177

178178
// do not delete data, it is deleted with the handle
179179

180+
// see if the adjoint access mode changed inside the parallel region
181+
// if so, we have to make sure that it carries over to the containing parallel region
182+
if (data->outerAdjointAccessMode != AdjointAccessControl::currentMode()) {
183+
this->setAdjointAccessMode(AdjointAccessControl::currentMode());
184+
}
185+
180186
} else {
181187
deleteFunc(data);
182188
}

0 commit comments

Comments
 (0)