This is an archive of the discontinued LLVM Phabricator instance.

[OpenMP] Extend omp teams to permit nested omp tile
Needs ReviewPublic

Authored by jdenny on May 24 2023, 10:25 AM.

Details

Summary

OpenMP 5.2, sec. 10.2 "teams Construct", p. 232, L9-12 restricts what
regions can be strictly nested within a teams construct. This patch
relaxes Clang's enforcement of this restriction in the case of nested
tile constructs unless -fno-openmp-extensions is specified. Cases
like the following then seem to work fine with no additional
implementation changes:

#pragma omp target teams
#pragma omp tile sizes(N, M)
for (int i = 0; i < I; ++i) {
  for (int j = 0; j < J; ++j) {
    ...
  }
}

This commit is similar to D126323 (48ca3a5ebb15) plus D126547
(4a368136693b), which relaxed the restriction for an atomic
construct in a teams construct.

Diff Detail

Event Timeline

jdenny created this revision.May 24 2023, 10:25 AM
Herald added a project: Restricted Project. · View Herald Transcript
jdenny requested review of this revision.May 24 2023, 10:25 AM
jdenny updated this revision to Diff 525250.May 24 2023, 10:29 AM

Added phab review number to status doc.