<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/flang/lib/Lower/ConvertVariable.cpp, branch main</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][debug] Track dummy argument positions explicitly. (#167489)</title>
<updated>2025-11-12T10:21:32+00:00</updated>
<author>
<name>Abid Qadeer</name>
<email>haqadeer@amd.com</email>
</author>
<published>2025-11-12T10:21:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=cfc56c982fe144455db25f20576c9297fc68a8f9'/>
<id>cfc56c982fe144455db25f20576c9297fc68a8f9</id>
<content type='text'>
CHARACTER dummy arguments were treated as local variables in debug info.
This happened because our method to get the argument number was not
robust. It relied on `DeclareOp` having a direct reference to arguments
which was not the case for character arguments. This is fixed by storing
source-level argument positions in `DeclareOp`.

Fixes #112886</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
CHARACTER dummy arguments were treated as local variables in debug info.
This happened because our method to get the argument number was not
robust. It relied on `DeclareOp` having a direct reference to arguments
which was not the case for character arguments. This is fixed by storing
source-level argument positions in `DeclareOp`.

Fixes #112886</pre>
</div>
</content>
</entry>
<entry>
<title>[flang][FIR] add fir.assumed_size_extent to abstract assumed-size extent encoding (#164452)</title>
<updated>2025-10-22T09:46:18+00:00</updated>
<author>
<name>jeanPerier</name>
<email>jperier@nvidia.com</email>
</author>
<published>2025-10-22T09:46:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c9fb37c75f741f1179f2d2c661d27d36645b0310'/>
<id>c9fb37c75f741f1179f2d2c661d27d36645b0310</id>
<content type='text'>
The purpose of this patch is to allow converting FIR array representation to
memref when possible without hitting memref verifier issue.

The issue was that FIR arrays may be assumed size, in which case the
last dimension will not be known at runtime. Flang uses -1 to encode
this to fulfill Fortran 2023 standard requirements in 18.5.3 point 5
about CFI_desc_t.

When arrays are converted to memeref, if this `-1` reaches memeref
operations, it triggers verifier errors (even if the conversion happened
in code that guards the code to be entered at runtime if the array is
assumed-size because folders/verifiers do not take into account
reachability).

This follows-up on discussions in #163505 merge requests</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The purpose of this patch is to allow converting FIR array representation to
memref when possible without hitting memref verifier issue.

The issue was that FIR arrays may be assumed size, in which case the
last dimension will not be known at runtime. Flang uses -1 to encode
this to fulfill Fortran 2023 standard requirements in 18.5.3 point 5
about CFI_desc_t.

When arrays are converted to memeref, if this `-1` reaches memeref
operations, it triggers verifier errors (even if the conversion happened
in code that guards the code to be entered at runtime if the array is
assumed-size because folders/verifiers do not take into account
reachability).

This follows-up on discussions in #163505 merge requests</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] CDEFINED globals should have external linkage (#160167)</title>
<updated>2025-09-25T14:26:45+00:00</updated>
<author>
<name>Eugene Epshteyn</name>
<email>eepshteyn@nvidia.com</email>
</author>
<published>2025-09-25T14:26:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=832a342328cfb62f434d3d506a7bf30df5e2589d'/>
<id>832a342328cfb62f434d3d506a7bf30df5e2589d</id>
<content type='text'>
In Fortran::lower::defineGlobal() don't change the linkage and don't 
generate initializer for CDEFINED globals.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In Fortran::lower::defineGlobal() don't change the linkage and don't 
generate initializer for CDEFINED globals.</pre>
</div>
</content>
</entry>
<entry>
<title>[Flang] Handle unused entry dummies before processing shape (#157732)</title>
<updated>2025-09-17T13:52:33+00:00</updated>
<author>
<name>Carlos Seo</name>
<email>carlos.seo@linaro.org</email>
</author>
<published>2025-09-17T13:52:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=170c0c52250dab52cbb63de25ad16ff97a407cbf'/>
<id>170c0c52250dab52cbb63de25ad16ff97a407cbf</id>
<content type='text'>
Check for unused entry dummy arrays with BaseBoxType that calls
genUnusedEntryPointBox() before processing array shapes.

Fixes #132648</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Check for unused entry dummy arrays with BaseBoxType that calls
genUnusedEntryPointBox() before processing array shapes.

Fixes #132648</pre>
</div>
</content>
</entry>
<entry>
<title>[flang][cuda] Call runtime initialize for derived type with device components (#157914)</title>
<updated>2025-09-10T18:19:56+00:00</updated>
<author>
<name>Valentin Clement (バレンタイン クレメン)</name>
<email>clementval@gmail.com</email>
</author>
<published>2025-09-10T18:19:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=9fdf2c7105972f16137bfc74456617dd4669febe'/>
<id>9fdf2c7105972f16137bfc74456617dd4669febe</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang][cuda] Remove set_allocator_idx operation (#157747)</title>
<updated>2025-09-09T21:20:19+00:00</updated>
<author>
<name>Valentin Clement (バレンタイン クレメン)</name>
<email>clementval@gmail.com</email>
</author>
<published>2025-09-09T21:20:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3e9802159b064988cff9aa3655f2a68a463711a3'/>
<id>3e9802159b064988cff9aa3655f2a68a463711a3</id>
<content type='text'>
The allocator index is set from the component genre #157731 . There is
no more need of an operation to set it at a later point.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The allocator index is set from the component genre #157731 . There is
no more need of an operation to set it at a later point.</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Fix lowering of unused dummy procedure pointers (#155649)</title>
<updated>2025-09-08T11:39:07+00:00</updated>
<author>
<name>Leandro Lupori</name>
<email>leandro.lupori@linaro.org</email>
</author>
<published>2025-09-08T11:39:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3dc314b8519099b1da43d01302d3d1710a6ccb3c'/>
<id>3dc314b8519099b1da43d01302d3d1710a6ccb3c</id>
<content type='text'>
Fixes #126453</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes #126453</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Attach proper storage to [hl]fir.declare in lowering. (#155742)</title>
<updated>2025-09-04T22:49:11+00:00</updated>
<author>
<name>Slava Zakharin</name>
<email>szakharin@nvidia.com</email>
</author>
<published>2025-09-04T22:49:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=83da8d08ff110fd5bf3fff17043420ba442e300c'/>
<id>83da8d08ff110fd5bf3fff17043420ba442e300c</id>
<content type='text'>
As described in
https://discourse.llvm.org/t/rfc-flang-representation-for-objects-inside-physical-storage/88026,
`[hl]fir.declare` should carry information about the layout
of COMMON/EQUIVALENCE variables within the physical storage.

This patch modifes Flang lowering to attach this information.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As described in
https://discourse.llvm.org/t/rfc-flang-representation-for-objects-inside-physical-storage/88026,
`[hl]fir.declare` should carry information about the layout
of COMMON/EQUIVALENCE variables within the physical storage.

This patch modifes Flang lowering to attach this information.</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Consolidate copy-in/copy-out determination in evaluate framework (#151408)</title>
<updated>2025-08-26T22:40:13+00:00</updated>
<author>
<name>Eugene Epshteyn</name>
<email>eepshteyn@nvidia.com</email>
</author>
<published>2025-08-26T22:40:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=4b6a4aa5228a45c3ab2add631f9dd49777b5bf24'/>
<id>4b6a4aa5228a45c3ab2add631f9dd49777b5bf24</id>
<content type='text'>
New implementation of `MayNeedCopy()` is used to consolidate
copy-in/copy-out checks.

`IsAssumedShape()` and `IsAssumedRank()` were simplified and are both
now in `Fortran::semantics` workspace.

`preparePresentUserCallActualArgument()` in lowering was modified to use
`MayNeedCopyInOut()`

Fixes https://github.com/llvm/llvm-project/issues/138471</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
New implementation of `MayNeedCopy()` is used to consolidate
copy-in/copy-out checks.

`IsAssumedShape()` and `IsAssumedRank()` were simplified and are both
now in `Fortran::semantics` workspace.

`preparePresentUserCallActualArgument()` in lowering was modified to use
`MayNeedCopyInOut()`

Fixes https://github.com/llvm/llvm-project/issues/138471</pre>
</div>
</content>
</entry>
<entry>
<title>Reland "[flang][cuda] Set the allocator of derived type component after allocation" (#152418)</title>
<updated>2025-08-07T04:49:55+00:00</updated>
<author>
<name>Valentin Clement (バレンタイン クレメン)</name>
<email>clementval@gmail.com</email>
</author>
<published>2025-08-07T04:49:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=eb0ddba26b6a265b44b442ae666db43b9f28b26a'/>
<id>eb0ddba26b6a265b44b442ae666db43b9f28b26a</id>
<content type='text'>
Reviewed in #152379
- Move the allocator index set up after the allocate statement otherwise
the derived type descriptor is not allocated.
- Support array of derived-type with device component</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reviewed in #152379
- Move the allocator index set up after the allocate statement otherwise
the derived type descriptor is not allocated.
- Support array of derived-type with device component</pre>
</div>
</content>
</entry>
</feed>
