[Openmp-commits] [openmp] r343344 - [OPENMP] Add the test to check that the libomptarget does not cause

Jonas Hahnfeld via Openmp-commits openmp-commits at lists.llvm.org
Sat Sep 29 04:26:00 PDT 2018


On 2018-09-28 19:13, Alexey Bataev via Openmp-commits wrote:
> Author: abataev
> Date: Fri Sep 28 10:13:11 2018
> New Revision: 343344
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=343344&view=rev
> Log:
> [OPENMP] Add the test to check that the libomptarget does not cause
> infinite loop on removing non-mapped pointer-with-object.
> 
> Added test to check that libomptarget does not cause infinite loop when
> trying to unmap the pointer-with-object data that was not previously
> mapped.
> 
> Modified:
>     openmp/trunk/libomptarget/test/mapping/pr38704.c
> 
> Modified: openmp/trunk/libomptarget/test/mapping/pr38704.c
> URL:
> http://llvm.org/viewvc/llvm-project/openmp/trunk/libomptarget/test/mapping/pr38704.c?rev=343344&r1=343343&r2=343344&view=diff
> ==============================================================================
> --- openmp/trunk/libomptarget/test/mapping/pr38704.c (original)
> +++ openmp/trunk/libomptarget/test/mapping/pr38704.c Fri Sep 28 
> 10:13:11 2018
> @@ -16,16 +16,20 @@ typedef struct {
>  } StructWithPtrs;
> 
>  int main(int argc, char *argv[]) {
> -  StructWithPtrs s;
> +  StructWithPtrs s, s2;
>    s.ptr1 = malloc(sizeof(int));
>    s.ptr2 = malloc(2 * sizeof(int));
> +  s2.ptr1 = malloc(sizeof(int));
> +  s2.ptr2 = malloc(2 * sizeof(int));
> 
> +#pragma omp target enter data map(to: s2.ptr2[0:1])
>  #pragma omp target map(s.ptr1[0:1], s.ptr2[0:2])
>    {
>      s.ptr1[0] = 1;
>      s.ptr2[0] = 2;
>      s.ptr2[1] = 3;
>    }
> +#pragma omp target exit data map(from: s2.ptr1[0:1], s2.ptr2[0:1])

You are not mapping s2.ptr1 in 'target enter data', was that an 
oversight?

Jonas


More information about the Openmp-commits mailing list