<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/llvm.git/flang/docs, branch EmptyLineAfterFunctionDefinition</title>
<subtitle>github.com: llvm/llvm-project.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/'/>
<entry>
<title>[Flang][driver] Update the docs</title>
<updated>2021-11-08T17:54:46+00:00</updated>
<author>
<name>Andrzej Warzynski</name>
<email>andrzej.warzynski@arm.com</email>
</author>
<published>2021-10-11T20:03:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=c4921663cf8e291f3efc1ce52c60104bd5092ba0'/>
<id>c4921663cf8e291f3efc1ce52c60104bd5092ba0</id>
<content type='text'>
Please note that the updated documentation reflects the design that we are
working towards, but haven't implemented competely yet. We took this approach
in order to provide a more holisitic and complete overview of the design.

In particular, this document assumes that Flang's frontend and compiler
driver can already generate code. This is still work-in-progress and is
being developed on the `fir-dev` branch in the F18 repository [1].

[1] https://github.com/flang-compiler/f18-llvm-project/tree/fir-dev

Differential Revision: https://reviews.llvm.org/D111573
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Please note that the updated documentation reflects the design that we are
working towards, but haven't implemented competely yet. We took this approach
in order to provide a more holisitic and complete overview of the design.

In particular, this document assumes that Flang's frontend and compiler
driver can already generate code. This is still work-in-progress and is
being developed on the `fir-dev` branch in the F18 repository [1].

[1] https://github.com/flang-compiler/f18-llvm-project/tree/fir-dev

Differential Revision: https://reviews.llvm.org/D111573
</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC] Inclusive Language: change master to main for .chm files</title>
<updated>2021-11-08T14:23:04+00:00</updated>
<author>
<name>Quinn Pham</name>
<email>Quinn.Pham@ibm.com</email>
</author>
<published>2021-11-05T17:33:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=c3b15b71ce009b3dff9fb3bd664d087057b8376e'/>
<id>c3b15b71ce009b3dff9fb3bd664d087057b8376e</id>
<content type='text'>
[NFC] As part of using inclusive language within the llvm project,
this patch replaces master with main when referring to `.chm` files.

Reviewed By: teemperor

Differential Revision: https://reviews.llvm.org/D113299
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[NFC] As part of using inclusive language within the llvm project,
this patch replaces master with main when referring to `.chm` files.

Reviewed By: teemperor

Differential Revision: https://reviews.llvm.org/D113299
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Extension: allow tabs in output format strings</title>
<updated>2021-10-22T22:53:29+00:00</updated>
<author>
<name>peter klausler</name>
<email>pklausler@nvidia.com</email>
</author>
<published>2021-10-21T21:47:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=fbb020fb48be454da35c77798dc63fd3304c0b80'/>
<id>fbb020fb48be454da35c77798dc63fd3304c0b80</id>
<content type='text'>
A CHARACTER variable used as an output format may contain
unquoted tab characters, which are treated as if they had
been quoted.  This is an extension supported by all other
Fortran compilers to which I have access.

Differential Revision: https://reviews.llvm.org/D112350
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A CHARACTER variable used as an output format may contain
unquoted tab characters, which are treated as if they had
been quoted.  This is an extension supported by all other
Fortran compilers to which I have access.

Differential Revision: https://reviews.llvm.org/D112350
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Fix generic resolution case</title>
<updated>2021-10-22T20:38:47+00:00</updated>
<author>
<name>peter klausler</name>
<email>pklausler@nvidia.com</email>
</author>
<published>2021-10-19T18:34:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=14b90d1fe0d79c8adbe8531ebc79199a8892a781'/>
<id>14b90d1fe0d79c8adbe8531ebc79199a8892a781</id>
<content type='text'>
Don't try to convert INTEGER argument expressions to the kind of
the dummy argument when performing generic resolution; specific
procedures may be distinguished only by their kinds.

Differential Revision: https://reviews.llvm.org/D112240
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Don't try to convert INTEGER argument expressions to the kind of
the dummy argument when performing generic resolution; specific
procedures may be distinguished only by their kinds.

Differential Revision: https://reviews.llvm.org/D112240
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Extension to distinguish specific procedures</title>
<updated>2021-10-22T19:38:21+00:00</updated>
<author>
<name>peter klausler</name>
<email>pklausler@nvidia.com</email>
</author>
<published>2021-10-18T17:44:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=c4ba1108dd6065dd3cce5edafcebbb6fe4fb3a0e'/>
<id>c4ba1108dd6065dd3cce5edafcebbb6fe4fb3a0e</id>
<content type='text'>
Allocatable dummy arguments can be used to distinguish
two specific procedures in a generic interface when
it is the case that exactly one of them is polymorphic
or exactly one of them is unlimited polymorphic.  The
standard requires that an actual argument corresponding
to an (unlimited) polymorphic allocatable dummy argument
must also be an (unlimited) polymorphic allocatable, so an
actual argument that's acceptable to one procedure must
necessarily be a bad match for the other.

Differential Revision: https://reviews.llvm.org/D112237
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Allocatable dummy arguments can be used to distinguish
two specific procedures in a generic interface when
it is the case that exactly one of them is polymorphic
or exactly one of them is unlimited polymorphic.  The
standard requires that an actual argument corresponding
to an (unlimited) polymorphic allocatable dummy argument
must also be an (unlimited) polymorphic allocatable, so an
actual argument that's acceptable to one procedure must
necessarily be a bad match for the other.

Differential Revision: https://reviews.llvm.org/D112237
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang][NFC] Document extension: scalars are trivially contiguous</title>
<updated>2021-10-12T23:00:54+00:00</updated>
<author>
<name>peter klausler</name>
<email>pklausler@nvidia.com</email>
</author>
<published>2021-10-12T17:17:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=6ee2aa126cf6bccb6a4af955a663ff3512aecc63'/>
<id>6ee2aa126cf6bccb6a4af955a663ff3512aecc63</id>
<content type='text'>
The Fortran 2018 standard defines the concept of simple contiguity
in subclause 9.5.4 as a characteristic of arrays.  So that scalars
may also be used in contexts where simply contiguous arrays are
allowed, f18 treats them as single-element arrays that are trivially
contiguous.  This patch documents this semantic extension and
also adds comments to the predicate that implements the concept.

Differential Revision: https://reviews.llvm.org/D111679
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The Fortran 2018 standard defines the concept of simple contiguity
in subclause 9.5.4 as a characteristic of arrays.  So that scalars
may also be used in contexts where simply contiguous arrays are
allowed, f18 treats them as single-element arrays that are trivially
contiguous.  This patch documents this semantic extension and
also adds comments to the predicate that implements the concept.

Differential Revision: https://reviews.llvm.org/D111679
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] More work on SYSTEM_CLOCK runtime API and implementation</title>
<updated>2021-10-12T16:24:24+00:00</updated>
<author>
<name>peter klausler</name>
<email>pklausler@nvidia.com</email>
</author>
<published>2021-10-06T21:03:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=f05c95f10fc1d8171071735af8ad3a9e87633120'/>
<id>f05c95f10fc1d8171071735af8ad3a9e87633120</id>
<content type='text'>
To get proper wrap-around behavior for the various kind parameter
values of the optional COUNT= and COUNT_MAX= dummy arguments to
the intrinsic subroutine SYSTEM_CLOCK, add an extra argument to
the APIs for lowering to pass the integer kind of the actual argument.
Avoid confusion by requiring that both actual arguments have the same
kind when both are present.  The results of the runtime functions
remain std::int64_t and lowering should still convert them before
storing to the actual argument variables.

Rework the implementation a bit to accomodate the dynamic
specification of the kind parameter, and to clean up some coding
issues with preprocessing and templates.

Use the kind of the COUNT=/COUNT_MAX= actual arguments to determine
the clock's resolution, where possible, in conformance with other
Fortran implementations.

Differential Revision: https://reviews.llvm.org/D111281
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To get proper wrap-around behavior for the various kind parameter
values of the optional COUNT= and COUNT_MAX= dummy arguments to
the intrinsic subroutine SYSTEM_CLOCK, add an extra argument to
the APIs for lowering to pass the integer kind of the actual argument.
Avoid confusion by requiring that both actual arguments have the same
kind when both are present.  The results of the runtime functions
remain std::int64_t and lowering should still convert them before
storing to the actual argument variables.

Rework the implementation a bit to accomodate the dynamic
specification of the kind parameter, and to clean up some coding
issues with preprocessing and templates.

Use the kind of the COUNT=/COUNT_MAX= actual arguments to determine
the clock's resolution, where possible, in conformance with other
Fortran implementations.

Differential Revision: https://reviews.llvm.org/D111281
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang][NFC] Document behavior for nonspecified/ambiguous cases</title>
<updated>2021-10-11T18:06:07+00:00</updated>
<author>
<name>peter klausler</name>
<email>pklausler@nvidia.com</email>
</author>
<published>2021-10-04T19:40:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=ef44cad53d3a69d52b3131d8eb6f1d1ca8a70e46'/>
<id>ef44cad53d3a69d52b3131d8eb6f1d1ca8a70e46</id>
<content type='text'>
Add explicit documentation for a couple of cases where the Fortran
standard has been observed to be ambiguous or nonspecific and we've
had to choose the behavior of the implementation from some possible
alternatives (and may be distinct from other implementations).

Differential Revision: https://reviews.llvm.org/D111446
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add explicit documentation for a couple of cases where the Fortran
standard has been observed to be ambiguous or nonspecific and we've
had to choose the behavior of the implementation from some possible
alternatives (and may be distinct from other implementations).

Differential Revision: https://reviews.llvm.org/D111446
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Added tests for intrinsic function 'team_number()'</title>
<updated>2021-10-04T19:35:45+00:00</updated>
<author>
<name>Craig Rasmussen</name>
<email>rasmussen17@llnl.gov</email>
</author>
<published>2021-10-04T19:34:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=9dd3965e96d1f31f0d9303d503bbd12129cfe92b'/>
<id>9dd3965e96d1f31f0d9303d503bbd12129cfe92b</id>
<content type='text'>
reviewers: klausler, PeteSteinfeld

Differential Revision: https://reviews.llvm.org/D100897
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
reviewers: klausler, PeteSteinfeld

Differential Revision: https://reviews.llvm.org/D100897
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Front-end and runtime support for CALL EXIT and ABORT</title>
<updated>2021-09-30T18:01:22+00:00</updated>
<author>
<name>peter klausler</name>
<email>pklausler@nvidia.com</email>
</author>
<published>2021-09-23T23:36:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=faa1842875f1dcd241c6b0feab7d684eb97fefc4'/>
<id>faa1842875f1dcd241c6b0feab7d684eb97fefc4</id>
<content type='text'>
Support the extension intrinsic subroutines EXIT([status]) and ABORT()
in the intrinsic table and runtime support library.  Lowering remains
to be done.

Differential Revision: https://reviews.llvm.org/D110741
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Support the extension intrinsic subroutines EXIT([status]) and ABORT()
in the intrinsic table and runtime support library.  Lowering remains
to be done.

Differential Revision: https://reviews.llvm.org/D110741
</pre>
</div>
</content>
</entry>
</feed>
