Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Flang] Fix release blocker issue #46931 related to documentation.
Summary: Fixes bug : https://bugs.llvm.org/show_bug.cgi?id=46931 This commit add a new flag -DLLVM_ENABLE_SPHINX=ON to cmake command to generate sphinx documentation, along with new cmake targets `docs-flang-html`. `ninja docs-flang-html` - generates sphinx documentation. Generated release notes are present in <builddir>/tools/flang/docs/html/ folder. Reviewers: richard.barton.arm, DavidTruby Tags: #flang Differential Revision: https://reviews.llvm.org/D85470 (cherry picked from commit 2fc86cc)
- Loading branch information
1 parent
7bcb12a
commit b0b18ec
Showing
9 changed files
with
858 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
======================================== | ||
Flang 11.0.0 (In-Progress) Release Notes | ||
======================================== | ||
|
||
.. contents:: | ||
:local: | ||
:depth: 2 | ||
|
||
.. warning:: | ||
|
||
These are in-progress notes for the upcoming LLVM 11.0.0 release. | ||
Release notes for previous releases can be found on | ||
`the Download Page <https://releases.llvm.org/download.html>`_. | ||
|
||
Introduction | ||
============ | ||
|
||
This document contains the release notes for the Flang Fortran | ||
frontend, part of the LLVM Compiler Infrastructure, release 11.0.0. Here we | ||
describe the status of Flang in some detail, including major | ||
improvements from the previous release and new feature work. For the | ||
general LLVM release notes, see `the LLVM | ||
documentation <https://llvm.org/docs/ReleaseNotes.html>`_. All LLVM | ||
releases may be downloaded from the `LLVM releases web | ||
site <https://llvm.org/releases/>`_. | ||
|
||
Note that if you are reading this file from a Git checkout, this document | ||
applies to the *next* release, not | ||
the current one. To see the release notes for a specific release, please | ||
see the `releases page <https://llvm.org/releases/>`_. | ||
|
||
Known Issues | ||
============ | ||
|
||
These are issues that couldn't be fixed before the release. See the bug reports for the latest status. | ||
|
||
- ... | ||
|
||
Introducing Flang | ||
================= | ||
|
||
Flang is LLVM's Fortran front end and is new for the LLVM 11 release. | ||
|
||
Flang is still a work in progress for this release and is included for | ||
experimentation and feedback. | ||
|
||
Flang status | ||
------------ | ||
|
||
Flang is able to parse a comprehensive subset of the Fortran language | ||
and check it for correctness. Flang is not yet able to generate LLVM IR for | ||
the source code and thus is unable to compile a running binary. | ||
|
||
Flang is able to unparse the input source code into a canonical form and emit | ||
it to allow testing. Flang can also invoke an external Fortran compiler on this | ||
canonical input. | ||
|
||
Flang's parser has comprehensive support for: | ||
- Fortran 2018 | ||
- OpenMP 4.5 | ||
- OpenACC 3.0 | ||
|
||
Major missing features | ||
---------------------- | ||
|
||
- Flang is not supported on Windows platforms. | ||
|
||
Using Flang | ||
=========== | ||
|
||
Usage: ``flang hello.f90 -o hello.bin`` | ||
|
||
Flang will parse the Fortran file ``hello.f90`` then unparse it to a canonical | ||
Fortran source file. Flang will then invoke an external Fortran compiler to | ||
compile this source file and link it, placing the resulting executable | ||
in ``hello.bin``. | ||
|
||
To specify the external Fortran compiler, set the ``F18_FC`` environment | ||
variable to the name of the compiler binary and ensure it is on your ``PATH``. | ||
The default value for ``F18_FC`` is ``gfortran``. | ||
|
||
When invoked with no source input, Flang will wait for input on standard in. | ||
When invoked in this way, Flang performs the same actions as if called with | ||
``-fdebug-measure-parse-tree -funparse`` and does not invoke ``F18_FC``. | ||
|
||
For a full list of options that Flang supports, run ``flang --help``. | ||
|
||
Additional Information | ||
====================== | ||
|
||
Flang's documentation is located in the ``flang/docs/`` directory in | ||
the LLVM monorepo. | ||
|
||
If you have any questions or comments about Flang, please feel free to | ||
contact us via the `mailing | ||
list <https://lists.llvm.org/mailman/listinfo/flang-dev>`_. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
/* | ||
* LLVM documentation style sheet | ||
*/ | ||
|
||
/* Common styles */ | ||
.body { color: black; background: white; margin: 0 0 0 0 } | ||
|
||
/* No borders on image links */ | ||
a:link img, a:visited img { border-style: none } | ||
|
||
address img { float: right; width: 88px; height: 31px; } | ||
address { clear: right; } | ||
|
||
table { text-align: center; border: 2px solid black; | ||
border-collapse: collapse; margin-top: 1em; margin-left: 1em; | ||
margin-right: 1em; margin-bottom: 1em; } | ||
tr, td { border: 2px solid gray; padding: 4pt 4pt 2pt 2pt; } | ||
th { border: 2px solid gray; font-weight: bold; font-size: 105%; | ||
background: url("lines.gif"); | ||
font-family: "Georgia,Palatino,Times,Roman,SanSerif"; | ||
text-align: center; vertical-align: middle; } | ||
/* | ||
* Documentation | ||
*/ | ||
/* Common for title and header */ | ||
.doc_title, .doc_section, .doc_subsection, h1, h2, h3 { | ||
color: black; background: url("lines.gif"); | ||
font-family: "Georgia,Palatino,Times,Roman,SanSerif"; font-weight: bold; | ||
border-width: 1px; | ||
border-style: solid none solid none; | ||
text-align: center; | ||
vertical-align: middle; | ||
padding-left: 8pt; | ||
padding-top: 1px; | ||
padding-bottom: 2px | ||
} | ||
|
||
h1, .doc_title, .title { text-align: left; font-size: 25pt } | ||
|
||
h2, .doc_section { text-align: center; font-size: 22pt; | ||
margin: 20pt 0pt 5pt 0pt; } | ||
|
||
h3, .doc_subsection { width: 75%; | ||
text-align: left; font-size: 12pt; | ||
padding: 4pt 4pt 4pt 4pt; | ||
margin: 1.5em 0.5em 0.5em 0.5em } | ||
|
||
h4, .doc_subsubsection { margin: 2.0em 0.5em 0.5em 0.5em; | ||
font-weight: bold; font-style: oblique; | ||
border-bottom: 1px solid #999999; font-size: 12pt; | ||
width: 75%; } | ||
|
||
.doc_author { text-align: left; font-weight: bold; padding-left: 20pt } | ||
.doc_text { text-align: left; padding-left: 20pt; padding-right: 10pt } | ||
|
||
.doc_footer { text-align: left; padding: 0 0 0 0 } | ||
|
||
.doc_hilite { color: blue; font-weight: bold; } | ||
|
||
.doc_table { text-align: center; width: 90%; | ||
padding: 1px 1px 1px 1px; border: 1px; } | ||
|
||
.doc_warning { color: red; font-weight: bold } | ||
|
||
/* <div class="doc_code"> would use this class, and <div> adds more padding */ | ||
.doc_code, .literal-block | ||
{ border: solid 1px gray; background: #eeeeee; | ||
margin: 0 1em 0 1em; | ||
padding: 0 1em 0 1em; | ||
display: table; | ||
} | ||
|
||
blockquote pre { | ||
padding: 1em 2em 1em 1em; | ||
border: solid 1px gray; | ||
background: #eeeeee; | ||
margin: 0 1em 0 1em; | ||
display: table; | ||
} | ||
|
||
h2+div, h2+p {text-align: left; padding-left: 20pt; padding-right: 10pt;} | ||
h3+div, h3+p {text-align: left; padding-left: 20pt; padding-right: 10pt;} | ||
h4+div, h4+p {text-align: left; padding-left: 20pt; padding-right: 10pt;} | ||
|
||
/* It is preferable to use <pre class="doc_code"> everywhere instead of the | ||
* <div class="doc_code"><pre>...</ptr></div> construct. | ||
* | ||
* Once all docs use <pre> for code regions, this style can be merged with the | ||
* one above, and we can drop the [pre] qualifier. | ||
*/ | ||
pre.doc_code, .literal-block { padding: 1em 2em 1em 1em } | ||
|
||
.doc_notes { background: #fafafa; border: 1px solid #cecece; | ||
display: table; padding: 0 1em 0 .1em } | ||
|
||
table.layout { text-align: left; border: none; border-collapse: collapse; | ||
padding: 4px 4px 4px 4px; } | ||
tr.layout, td.layout, td.left, td.right | ||
{ border: none; padding: 4pt 4pt 2pt 2pt; vertical-align: top; } | ||
td.left { text-align: left } | ||
td.right { text-align: right } | ||
th.layout { border: none; font-weight: bold; font-size: 105%; | ||
text-align: center; vertical-align: middle; } | ||
|
||
/* Left align table cell */ | ||
.td_left { border: 2px solid gray; text-align: left; } | ||
|
||
/* ReST-specific */ | ||
.title { margin-top: 0 } | ||
.topic-title{ display: none } | ||
div.contents ul { list-style-type: decimal } | ||
.toc-backref { color: black; text-decoration: none; } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
{# | ||
sphinxdoc/layout.html | ||
~~~~~~~~~~~~~~~~~~~~~ | ||
|
||
Sphinx layout template for the sphinxdoc theme. | ||
|
||
:copyright: Copyright 2007-2010 by the Sphinx team, see AUTHORS. | ||
:license: BSD, see LICENSE for details. | ||
#} | ||
{% extends "basic/layout.html" %} | ||
|
||
{% block relbar1 %} | ||
<div class="logo"> | ||
<a href="{{ pathto('index') }}"> | ||
<img src="{{pathto("_static/logo.png", 1) }}" | ||
alt="LLVM Logo" width="250" height="88"/></a> | ||
</div> | ||
{{ super() }} | ||
{% endblock %} | ||
|
||
{# put the sidebar before the body #} | ||
{% block sidebar1 %}{{ sidebar() }}{% endblock %} | ||
{% block sidebar2 %}{% endblock %} |
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.