[PATCH][RFC][OpenMP] Forbid target* pragmas in target regions

Ilya Verbin iverbin@gmail.com
Thu Feb 12 14:50:00 GMT 2015


On Tue, Feb 10, 2015 at 11:20:24 +0100, Jakub Jelinek wrote:
> So, what we can do is e.g. ignore the nested #pragma omp target* regions
> inside of #pragma omp target, or turn them into __builtin_trap ().

I like this idea to ignore them at compile-time, but how to be with declare
target functions?

#pragma omp declare target
void foo (int x, int y)
{
  #pragma omp target map(to: y) if(x)
    y;
}
#pragma omp end declare target

This code seems to be correct, but it has the same problem with static
omp_data_sizes and omp_data_kinds.

  -- Ilya



More information about the Gcc-patches mailing list