<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/flang/test/Semantics/OpenMP/do-concurrent-collapse.f90, branch users/mingmingl-llvm/samplefdo-profile-format</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[flang][OpenMP] Enable tiling (#143715)</title>
<updated>2025-09-10T13:25:40+00:00</updated>
<author>
<name>Jan Leyonberg</name>
<email>jan_sjodin@yahoo.com</email>
</author>
<published>2025-09-10T13:25:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d452e67ee7b5d17aa040f71d8997abc1a47750e4'/>
<id>d452e67ee7b5d17aa040f71d8997abc1a47750e4</id>
<content type='text'>
This patch enables tiling in flang. In MLIR tiling is handled by
changing the the omp.loop_nest op to be able to represent both collapse
and tiling, so the flang front-end will combine the nested constructs into
a single MLIR op. The MLIR-&gt;LLVM-IR lowering of the LoopNestOp is
enhanced to first do the tiling if present, then collapse.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch enables tiling in flang. In MLIR tiling is handled by
changing the the omp.loop_nest op to be able to represent both collapse
and tiling, so the flang front-end will combine the nested constructs into
a single MLIR op. The MLIR-&gt;LLVM-IR lowering of the LoopNestOp is
enhanced to first do the tiling if present, then collapse.
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang][OpenMP] Don't allow DO CONCURRENT inside of a loop nest (#144506)</title>
<updated>2025-06-18T13:02:11+00:00</updated>
<author>
<name>Tom Eccles</name>
<email>tom.eccles@arm.com</email>
</author>
<published>2025-06-18T13:02:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a83d3362f686725bac76bfb9562663908de25f15'/>
<id>a83d3362f686725bac76bfb9562663908de25f15</id>
<content type='text'>
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:

&gt; If the collapsed loop is a DO CONCURRENT loop, neither the
&gt; 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</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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:

&gt; If the collapsed loop is a DO CONCURRENT loop, neither the
&gt; 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</pre>
</div>
</content>
</entry>
</feed>
