[all-commits] [llvm/llvm-project] a83d33: [flang][OpenMP] Don't allow DO CONCURRENT inside o...
Tom Eccles via All-commits
all-commits at lists.llvm.org
Wed Jun 18 06:02:32 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a83d3362f686725bac76bfb9562663908de25f15
https://github.com/llvm/llvm-project/commit/a83d3362f686725bac76bfb9562663908de25f15
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
R flang/test/Lower/OpenMP/Todo/omp-doconcurrent.f90
A flang/test/Semantics/OpenMP/do-concurrent-collapse.f90
Log Message:
-----------
[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
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list