[Openmp-commits] [PATCH] D92195: [OPENMP50]Mapping of the subcomponents with the 'default' mappers.

Abhinav Gaba via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Wed Dec 23 14:22:53 PST 2020


abhinavgaba added a comment.

The patch currently asserts for the following:

  #include <stdio.h>
                                                                  
  typedef struct { int a; double *b; } C;                         
  #pragma omp declare mapper(default: C s) map(s.a, s.b[0:2])     
  
  int main() {
  C s;                                                            
  s.a = 10;                                                       
  double x[2]; x[0] = 20;                                         
  s.b = &x[0];
  C* sp = &s;                                                     
  C** spp = &sp;
  
  printf("%d %lf %p\n", spp[0][0].a, spp[0][0].b[0], spp[0][0].b);
                                                                  
  #pragma omp target map(tofrom:spp[0][0])
  printf("%d %lf %p\n", spp[0][0].a, spp[0][0].b[0], spp[0][0].b);
  }                                                               

Note that this doesn't work correctly before this patch either. This changes it from a runfail to a compfail.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D92195/new/

https://reviews.llvm.org/D92195



More information about the Openmp-commits mailing list