map clause, discontiguous array sections

Comments and discussion of the 4.1 OpenMP Draft specifications. Comment period ends September 30, 2015. See http://openmp.org/wp/openmp-specifications/ to download the specifications. (Read Only)
Locked
fewl9012
Posts: 73
Joined: Mon Jul 27, 2015 4:50 pm

map clause, discontiguous array sections

Post by fewl9012 »

page 216:At most one list item can be an array item derived from a given variable in map clauses of the same construct.

I am guessing this is to prevent discontiguous sections of an array from being mapped, like:
#pragma omp target data map(tofrom:a[0:100],a[200:100])
But this only prevents such on the same construct. What about:
#pragma omp target data map(tofrom:a[0:100])
{
#pragma omp target data map(tofrom:a[200:100])
{
...
Is this latter case disallowed by line 6: If any part of the original storage of a list item has corresponding storage in the device data environment, all of the original storage must have corresponding storage in the device data environment?
I read line 6 as disallowing overlapping-but-not-contained cases, like
#pragma omp target data map(tofrom:a[0:100])
{
#pragma omp target data map(tofrom:a[50:100])
{...

Locked