Skip to content

Status of supported OpenMP constructs

Alexey Bataev edited this page Jun 15, 2015 · 33 revisions
Pragmas Parsing/Sema (GitHub) CodeGen (GitHub) Parsing/Sema (branch 3.7) CodeGen (branch 3.7)
omp parallel Yes Yes Yes Yes
omp for Yes Yes Yes Yes
omp sections Yes Yes Yes Yes
omp section Yes Yes Yes Yes
omp single Yes Yes Yes Yes
omp simd Yes Yes Yes Yes
omp declare simd Yes Yes No No
omp for simd Yes Yes Yes No
omp target Yes No Yes No
omp target data Yes No No No
omp target update Yes No No No
omp declare target Yes No No No
omp teams Yes Yes Yes No
omp distribute Yes Yes No No
omp distribute simd Yes Yes No No
omp distribute parallel for Yes Yes No No
omp distribute parallel for simd Yes Yes No No
omp parallel for Yes Yes Yes Yes
omp parallel sections Yes Yes Yes Yes
omp parallel for simd Yes Yes No No
omp target teams Yes Partially No No
omp teams distribute Yes Yes No No
omp teams distribute simd Yes Yes No No
omp target teams distribute Yes Partially No No
omp target teams distribute simd Yes Partially No No
omp teams distribute parallel for Yes Yes No No
omp teams distribute parallel for simd Yes Yes No No
omp target teams distribute parallel for Yes Partially No No
omp target teams distribute parallel for simd Yes Partially No No
omp task Yes Yes Yes Yes
omp taskyield Yes Yes Yes Yes
omp master Yes Yes Yes Yes
omp critical Yes Yes Yes Yes
omp barrier Yes Yes Yes Yes
omp taskwait Yes Yes Yes Yes
omp taskgroup Yes Yes Yes No
omp atomic Yes Yes Yes Yes
omp flush Yes Yes Yes Yes
omp ordered Yes Yes Yes Yes
omp cancel Yes Yes No No
omp cancellation point Yes Yes No No
omp threadprivate Yes Yes Yes Yes
omp declare reduction Yes Yes No No
---Clauses---
if Yes Yes Yes Yes
num_threads Yes Yes Yes Yes
default Yes Yes Yes Yes
private Yes Yes Yes Yes
firstprivate Yes Yes Yes Yes
shared Yes Yes Yes Yes
copyin Yes Yes Yes Yes
reduction Yes Yes Yes Yes
proc_bind Yes Yes Yes Yes
lastprivate Yes Yes Yes Yes
schedule Yes Yes Yes Yes
collapse Yes Yes Yes Yes
ordered Yes Yes Yes Yes
nowait Yes Yes Yes Yes
copyprivate Yes Yes Yes Yes
safelen Yes Yes Yes Yes
linear Yes Yes Yes Yes
aligned Yes Yes Yes Yes
simdlen Yes Yes Yes Yes
uniform Yes Yes Yes Yes
inbranch Yes Yes No No
notinbranch Yes Yes No No
device Yes Partially No No
map Yes Partially No No
to Yes Partially No No
from Yes Partially No No
num_teams Yes Yes No No
thread_limit Yes Yes No No
dist_schedule Yes Yes No No
final Yes Yes Yes Yes
untied Yes Yes Yes Yes
mergeable Yes Yes Yes Yes
depend Yes Yes No No
Clone this wiki locally