aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/AST/ByteCode/InterpBuiltin.cpp
diff options
context:
space:
mode:
authorTom Eccles <tom.eccles@arm.com>2025-06-18 14:02:11 +0100
committerGitHub <noreply@github.com>2025-06-18 14:02:11 +0100
commita83d3362f686725bac76bfb9562663908de25f15 (patch)
treea65e8fed7b706a1bed57450894583a22f2354114 /clang/lib/AST/ByteCode/InterpBuiltin.cpp
parent4b2ab1494bc07493087252dff4e5e19808703048 (diff)
downloadllvm-a83d3362f686725bac76bfb9562663908de25f15.zip
llvm-a83d3362f686725bac76bfb9562663908de25f15.tar.gz
llvm-a83d3362f686725bac76bfb9562663908de25f15.tar.bz2
[flang][OpenMP] Don't allow DO CONCURRENT inside of a loop nest (#144506)
I don't think DO CONCURRENT fits the definition of a Canonical Loop Nest (OpenMP 6.0 section 6.4.1). It is however explicitly allowed for the LOOP construct (6.0 section 13.8). There's some obscure language in OpenMP 6.0 for the LOOP construct: > If the collapsed loop is a DO CONCURRENT loop, neither the > data-sharing attribute clauses nor the collapse clause may be specified. From the surrounding context, I think "collapsed loop" just means the loop that the LOOP construct applies to. So I will interpret this to mean that DO CONCURRENT can only be used with the LOOP construct if it does not contain the COLLAPSE clause. This also fixes a bug where the associated clause was never cleared after it was set. Fixes #144178
Diffstat (limited to 'clang/lib/AST/ByteCode/InterpBuiltin.cpp')
0 files changed, 0 insertions, 0 deletions