[OPENMP50]Initial codegen for 'affinity' clauses.
authorAlexey Bataev <a.bataev@hotmail.com>
Tue, 19 May 2020 20:29:36 +0000 (16:29 -0400)
committerAlexey Bataev <a.bataev@hotmail.com>
Tue, 2 Jun 2020 14:50:08 +0000 (10:50 -0400)
commit89d9dba2c6885949887edf4b80e1aabf8d8f3f88
tree70ce9954c86ff1ae3dd8852621cf359fbc99119e
parentd559185aaebeb66456edb63b47da5a2f67a0a5e2
[OPENMP50]Initial codegen for 'affinity' clauses.

Summary:
Added initial codegen for 'affinity' clauses on task directives.
Emits next code:
```
kmp_task_affinity_info_t affs[<num_elems>];

void *td = __kmpc_task_alloc(..);

affs[<i>].base = &data_i;
affs[<i>].size = sizeof(data_i);
__kmpc_omp_reg_task_with_affinity(&loc, <gtid>, td, <num_elems>, affs);
```

The result returned by the call of `__kmpc_omp_reg_task_with_affinity`
function is ignored currently sincethe  runtime currently ignores args
and returns 0 uncoditionally.

Reviewers: jdoerfert

Subscribers: yaxunl, guansong, sstefan1, llvm-commits, cfe-commits, caomhin

Tags: #clang, #llvm

Differential Revision: https://reviews.llvm.org/D80240
clang/lib/CodeGen/CGOpenMPRuntime.cpp
clang/lib/CodeGen/CGOpenMPRuntime.h
clang/test/OpenMP/task_affinity_codegen.cpp [new file with mode: 0644]
llvm/include/llvm/Frontend/OpenMP/OMPKinds.def