[Openmp-dev] Doacross loops should not be collapsed
Joachim Protze via Openmp-dev
openmp-dev at lists.llvm.org
Mon Aug 6 12:39:19 PDT 2018
Hi all,
a while ago I created a bug report on this issue
(https://bugs.llvm.org/show_bug.cgi?id=37580).
The following directive should not result in collapsing the for loops:
#pragma omp parallel for ordered(2)
Since we now ran into the same issue while implementing the OMPT events
for doacross loops, I tried to understand what is the issue in the
compiler. I think, that both SemaOpenMP.cpp and CGOpenMPRuntime.cpp make
wrong assumptions on the behavior of doacross loops.
One of the assumptions is, that the vec argument should always have
length 1. The vector length should probably be
ordered-num - collapsed-num + 1
Any suggestions, how this should be fixed in a clean way?
Thanks,
Joachim
More information about the Openmp-dev
mailing list