| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
This patch fix first point of https://github.com/llvm/llvm-project/issues/60730.
https://flang.llvm.org/docs/ has no build instructions. This doc page is just
a copy of README page so that it can be accessible from website.
Differential Revision: https://reviews.llvm.org/D148070
|
|
|
|
|
|
| |
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D141416
|
|
|
|
|
|
| |
Reviewed By: PeteSteinfeld
Differential Revision: https://reviews.llvm.org/D141126
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In this patch I added support to change the default target triple used
by flang tests using the cmake variable: FLANG_TEST_TARGET_TRIPLE.
This functionality is implemented using the LLVM_TARGET_TRIPLE_ENV
variable, so that must be defined as well.
An example use:
`-DLLVM_TARGET_TRIPLE_ENV="LLVM_TARGET_TRIPLE_ENV" -DFLANG_TEST_TARGET_TRIPLE="aarch64-linux-gnu"`
Differential revision: https://reviews.llvm.org/D138530
Change-Id: I38e4a46a65109d415a9b72c8a0bf8a955e937280
|
|
|
|
|
|
|
| |
Changes to build instructions based on the latest requirements with
compiler-rt.
Differential Revision: https://reviews.llvm.org/D131041
|
|
|
|
|
|
|
|
|
| |
Building Flang on Windows *is supported*. It's been tested there for
quite a while now:
* https://lab.llvm.org/buildbot/#/builders/172
Submitting this without a review as the current note in the readme file
is clearly incorrect.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We are moving away from building the runtimes with LLVM_ENABLE_PROJECTS,
however the documentation was largely outdated. This commit updates all
the documentation I could find to use LLVM_ENABLE_RUNTIMES instead of
LLVM_ENABLE_PROJECTS for building runtimes.
Note that in the near future, libcxx, libcxxabi and libunwind will stop
supporting being built with LLVM_ENABLE_PROJECTS altogether. I don't know
what the plans are for other runtimes like libc, openmp and compiler-rt,
so I didn't make any changes to the documentation that would imply
something for those projects.
Once this lands, I will also cherry-pick this on the release/14.x branch
to make sure that LLVM's documentation is up-to-date and reflects what
we intend to support in the future.
Differential Revision: https://reviews.llvm.org/D119351
|
|
|
|
|
|
|
|
| |
With https://reviews.llvm.org/D116731 merged, installing Clang, MLIR or
LLVM is no longer required for standalone builds. For consistency sake,
remove "installation" from the build instrucitons.
Differential Revision: https://reviews.llvm.org/D117100
|
|
|
|
|
|
|
|
| |
I recently had an email exchange on flang-dev that revealed that the
documentation on how to build flang is incorrect. This update fixes
that.
Differential Revision: https://reviews.llvm.org/D116566
|
|
|
|
|
|
|
| |
This section of the documentation should've been deleted in:
https://reviews.llvm.org/D105811
I am submitting this without a review as it's an obvious omission.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this patch, `FLANG_BUILD_NEW_DRIVER` is set to `On` by default
(i.e. the new driver is enabled). Note that the new driver depends on
Clang and hence with this change you will need to add `clang` to
`LLVM_ENABLE_PROJECTS`.
If you don't want to build the new driver, set `FLANG_BUILD_NEW_DRIVER`
to `Off`. This way you won't be required to include `clang` in
`LLVM_ENABLE_PROJECTS`.
Differential Revision: https://reviews.llvm.org/D101842
|
|
|
|
|
|
|
|
| |
According to the [[ https://foundation.llvm.org/docs/branch-rename/ | status of branch rename ]], the master branch of the LLVM repository is removed on 28 Jan 2021.
Reviewed By: mehdi_amini
Differential Revision: https://reviews.llvm.org/D95766
|
| |
|
|
|
|
|
| |
The CMake variable for the new flang driver is FLANG_BUILD_NEW_DRIVER
rather than BUILD_FLANG_NEW_DRIVER.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This is the first patch implementing the new Flang driver as outlined in [1],
[2] & [3]. It creates Flang driver (`flang-new`) and Flang frontend driver
(`flang-new -fc1`). These will be renamed as `flang` and `flang -fc1` once the
current Flang throwaway driver, `flang`, can be replaced with `flang-new`.
Currently only 2 options are supported: `-help` and `--version`.
`flang-new` is implemented in terms of libclangDriver, defaulting the driver
mode to `FlangMode` (added to libclangDriver in [4]). This ensures that the
driver runs in Flang mode regardless of the name of the binary inferred from
argv[0].
The design of the new Flang compiler and frontend drivers is inspired by it
counterparts in Clang [3]. Currently, the new Flang compiler and frontend
drivers re-use Clang libraries: clangBasic, clangDriver and clangFrontend.
To identify Flang options, this patch adds FlangOption/FC1Option enums.
Driver::printHelp is updated so that `flang-new` prints only Flang options.
The new Flang driver is disabled by default. To enable it, set
`-DBUILD_FLANG_NEW_DRIVER=ON` when configuring CMake and add clang to
`LLVM_ENABLE_PROJECTS` (e.g. -DLLVM_ENABLE_PROJECTS=“clang;flang;mlir”).
[1] “RFC: new Flang driver - next steps”
http://lists.llvm.org/pipermail/flang-dev/2020-July/000470.html
[2] “RFC: Adding a fortran mode to the clang driver for flang”
http://lists.llvm.org/pipermail/cfe-dev/2019-June/062669.html
[3] “RFC: refactoring libclangDriver/libclangFrontend to share with Flang”
http://lists.llvm.org/pipermail/cfe-dev/2020-July/066393.html
[4] https://reviews.llvm.org/rG6bf55804924d5a1d902925ad080b1a2b57c5c75c
co-authored-by: Andrzej Warzynski <andrzej.warzynski@arm.com>
Reviewed By: richard.barton.arm, sameeranjoshi
Differential Revision: https://reviews.llvm.org/D86089
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Need to build sphinx using below flags to Cmake
`-DLLVM_ENABLE_SPHINX=ON -DSPHINX_WARNINGS_AS_ERRORS=OFF`.
Generate html docs using cmake target
`docs-flang-html`
Generated html files should be at `build/tools/flang/docs/html`.
Patch in series from the dicussion on review
https://reviews.llvm.org/D85828
After this patch the markdown docmentation must be written using guide in-
`llvm/docs/MarkdownQuickstartTemplate.md`
Reviewed By: sscalpone
Differential Revision: https://reviews.llvm.org/D86131
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Other LLVM sub-projects use docs/ folder for documentation files.
Follow LLVM project policy.
Modify `documentation/` references in sources to `docs/`.
This patch doesn't modify files to reStructuredText(.rst) file format.
Reviewed By: DavidTruby, sscalpone
Differential Revision: https://reviews.llvm.org/D85884
|
|
|
|
|
|
| |
framework
Review comments addressed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Added support for doxygen-style documentation generation from source code.
Added -DLLVM_ENABLE_DOXYGEN=ON -DFLANG_INCLUDE_DOCS=ON flags to cmake.
Added the target doxygen-flang for building doxygen
Updated README.txt
Reviewers: DavidTruby, richard.barton.arm, sscalpone, mehdi_amini, jdoerfert
Reviewed By: DavidTruby, richard.barton.arm, sscalpone
Previous review: https://github.com/flang-compiler/f18/pull/1065
Differential Revision: https://reviews.llvm.org/D78136
|
|
|
|
|
|
|
|
| |
This changes the references and build instructions for Flang so that
they are correct now that F18 has been rechristened Flang and merged
with LLVM.
Reviewed at: https://github.com/flang-compiler/f18/pull/909
|
|
|
|
| |
Original-commit: flang-compiler/f18@24d23963b879d6586a7e19b89a905341627fe5b1
|
|
|
|
|
|
|
|
|
|
|
| |
This patch is an update of the readme according to compilations done and
also information given in flang dev mailing list.
[F18] Which compilers configurations f18 have being tested/built?
Signed-off-by: Caroline Concatto <caroline.concatto@arm.com>
Original-commit: flang-compiler/f18@3749b463dc6d4e2847c272bf2f6b575478391a2a
Reviewed-on: https://github.com/flang-compiler/f18/pull/1087
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(flang-compiler/f18#1090)
[mlir rebase] Add MLIR config and react to MLIR name changes
Similar to flang-compiler/f18#1085. Now use the MLIR package to set up paths for include files and libraries. Three MLIR names changed:
* VectorOpsDialect to VectorDialect
* AffineOpsDialect to AffineDialect
* createVectorizePass to createSuperVectorizePass
Update README.md to explain how to link with MLIR. Update the example gcc to version 8.3.
Update drone.io config to define -DMLIR_DIR
Co-authored-by: Jean Perier <jperier@nvidia.com>
Original-commit: flang-compiler/f18@116f64315f6218a7f74a8ccdc25f94d322ac6344
Reviewed-on: https://github.com/flang-compiler/f18/pull/1090
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In general all the basic functionality seems to work and removes some redundancy
and more complicated features in favor of borrowing infrastructure from LLVM
build configurations. Here's a quick summary of details and remaining issues:
* Testing has spanned Ubuntu 18.04 & 19.10, CentOS 7, RHEL 8, and
MacOS/darwin. Architectures include x86_64 and Arm. Without
access to Window nothing has been tested there yet.
* As we change file and directory naming schemes (i.e.,
capitalization) some odd things can occur on MacOS systems with
case preserving but not case senstive file system configurations.
Can be painful and certainly something to watch out for as any
any such changes continue.
* Testing infrastructure still needs to be tuned up and worked on.
Note that there do appear to be cases of some tests hanging (on
MacOS in particular). They appear unrelated to the build
process.
* Shared library configurations need testing (and probably fixing).
* Tested both standalone and 'in-mono repo' builds. Changes for
supporting the mono repo builds will require LLVM-level changes that
are straightforward when the time comes.
* The configuration contains a work-around for LLVM's C++ standard mode
passing down into Flang/F18 builds (i.e., LLVM CMake configuration would
force a -std=c++11 flag to show up in command line arguments. The
current configuration removes that automatically and is more strict in
following new CMake guidelines for enforcing C++17 mode across all the
CMake files.
* Cleaned up a lot of repetition in the command line arguments. It
is likely that more work is still needed to both allow for
customization and working around CMake defailts (or those
inherited from LLVM's configuration files). On some platforms agressive
optimization flags (e.g. -O3) can actually break builds due to the inlining
of templates in .cpp source files that then no longer are available for use
cases outside those source files (shows up as link errors). Sticking at -O2
appears to fix this. Currently this CMake configuration forces this in
release mode but at the cost of stomping on any CMake, or user customized,
settings for the release flags.
* Made the lit tests non-source directory dependent where appropriate. This is
done by configuring certain test shell files to refer to the correct paths
whether an in or out of tree build is being performed. These configured
files are output in the build directory. A %B substitution is introduced in
lit to refer to the build directory, mirroring the %S substitution for the
source directory, so that the tests can refer to the configured shell scripts.
Co-authored-by: David Truby <david.truby@arm.com>
Original-commit: flang-compiler/f18@d1c7184159b2d3c542a8f36c58a0c817e7506845
Reviewed-on: https://github.com/flang-compiler/f18/pull/1045
|
|
|
|
|
|
|
|
|
|
| |
Fix omp-nested01.f90 so that it is not an expected failure. The test was
never enabled but I'm guessing this is what it's supposed to do.
Fix the instructions to include "make test" as part of running tests.
Original-commit: flang-compiler/f18@c351181cabb234f73cb09c23e45dfe0bfc2d7219
Reviewed-on: https://github.com/flang-compiler/f18/pull/1075
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(flang-compiler/f18#1035)
Adds FIR library that implements an MLIR dialect to which Fortran
parse-tree will be lowered to.
FIR is defined and documented inside FIROps.td added in this commit.
It is possible to generate a more readable description FIRLangRef.md
from FIROps.td following the related instructions added to the README.md
by this commit.
This patch adds FIR definition and implementation that allow parsing,
printing, and verifying FIR. FIR transformations and lowering to Standard
and LLVM dialects are not part of this patch. The FIR verifiers are verifying
the basic properties of FIR operations in order to provide a sufficient
frame for lowering. Verifiers for more advanced FIR properties can be added
as needed.
Coarrays are not covered by FIR defined in this patch.
This patch also adds tco tool that is meant to process FIR input files and
drives transformations on it. The tco tool is used for testing.
In this patch, it is only used to demonstrate parsing/verifying/
and dumping FIR with round-trip tests.
Note:
This commit does not reflect an actual work log, it is a feature-based split of the
changes done in the FIR experimental branch. The related work log can be found in the
commits between:
https://github.com/schweitzpgi/f18/commit/742edde572bd74d77cf7d447132ccf0949187fce
and
https://github.com/schweitzpgi/f18/commit/2ff55242126d86061f4fed9ef7b59d3636b5fd0b
Changes on top of these original commits were made during this patch review.
Original-commit: flang-compiler/f18@30b428a51e140e5fb12bd53a0619f10ff510f408
Reviewed-on: https://github.com/flang-compiler/f18/pull/1035
|
|
|
|
|
|
|
|
|
| |
* Change README to refer to LLVM_BUILD_DIR.
LLVM_INSTALL_TOOLS doesn't to install llvm-lit. However pointing to the cmake file in the build directory works fine, and lit and FileCheck will be picked up correctly this way.
Original-commit: flang-compiler/f18@3cbe344f82a0898c9e20b6718d5f80d52670838b
Reviewed-on: https://github.com/flang-compiler/f18/pull/1033
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(flang-compiler/f18#861)
The configuration for the tests are in lit.* files.
The lit tests rely on the presence of llvm-lit,FileCheck, not and count.
When building LLVM add:
-DLLVM_INSTALL_UTILS=On at the cmake command.
LLVM_LIT is found by setting LLVM_EXTERNAL_LIT in f18 CMakeLists.txt.
This patch:
* Uses LLVM_EXTERNAL_LIT
* Adds regression tests configurations
* Adds a proof of concept regression test
The regression test needs to have the Utils build in LLVM.
This is done by adding:
-DLLVM_INSTALL_UTILS=On
to the LLVM build cmake.
Signed-off-by: Caroline Concatto <caroline.concatto@arm.com>
Original-commit: flang-compiler/f18@a58c6067a1ab5cd02dfb5b6fb9919a20b960d984
Reviewed-on: https://github.com/flang-compiler/f18/pull/861
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes the license information in many of the flang source files.
- Renamed LICENSE to LICENSE.txt.
- NVIDIA Copyright lines have been removed.
- Initial lines for files follow the LLVM coding convention (file name on the first line; Emacs mode information on the first line).
- License references have been replaced with the abridged LLVM text.
- License information was removed from the test files.
- No file header was placed on test files (these weren't in most LLVM test files).
- License information was added to documentation files where it was missing.
We did not add brief file summaries to the initial line.
See http://llvm.org/docs/DeveloperPolicy.html#new-llvm-project-license-framework
for a description of the new license.
See http://llvm.org/docs/CodingStandards.html#file-headers
for a description of the new LLVM standard file header.
Original-commit: flang-compiler/f18@add6cde7244b926ca457a1c74c21fea071b85329
Reviewed-on: https://github.com/flang-compiler/f18/pull/887
|
|
|
|
|
|
|
| |
the PATH and LD_LIBRARY_PATH. Add concrete example.
Original-commit: flang-compiler/f18@88c34fbe86025cc15d93c2e331a4ceae0d7fe725
Reviewed-on: https://github.com/flang-compiler/f18/pull/344
|
|
|
|
|
|
|
|
|
| |
compile f18. Explain how to configure LLVM on the cmake cmd
line. Add more detail about how to compile with clang++.
Original-commit: flang-compiler/f18@e7f678147bc842188d90beafc77e2c84c614239d
Reviewed-on: https://github.com/flang-compiler/f18/pull/344
Tree-same-pre-rewrite: false
|
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@230e9ad3a0877ce528d3a0fb034677bc9c819dc4
Reviewed-on: https://github.com/flang-compiler/f18/pull/301
Tree-same-pre-rewrite: false
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@f64a9f5b824b5fdff886a0f136681b71ab1f21fd
Reviewed-on: https://github.com/flang-compiler/f18/pull/163
|
|
|
|
|
|
|
| |
Corrected the URL in README.md to point to the correct public URL for this repository.
Original-commit: flang-compiler/f18@7005e9ad7b9597e946dd8ea6bb40a978f8326e03
Reviewed-on: https://github.com/flang-compiler/f18/pull/150
|
|
|
|
|
|
|
|
|
| |
* Update build instructions
Add an overview and update the build instructions for f18.
Original-commit: flang-compiler/f18@a60060cfe110cbb32705408b42755d03f69e3302
Reviewed-on: https://github.com/flang-compiler/f18/pull/94
|
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@f57451d8d4ae47ee19e5428a6120d0fa9e682aa6
Reviewed-on: https://github.com/flang-compiler/f18/pull/84
Tree-same-pre-rewrite: false
|
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@a047f116da80058571ed4834c7f93eed4edd28d2
Reviewed-on: https://github.com/flang-compiler/f18/pull/84
Tree-same-pre-rewrite: false
|
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@32ffc711b61fbfdefee2881cf051e207f6fc9a96
Reviewed-on: https://github.com/flang-compiler/f18/pull/84
Tree-same-pre-rewrite: false
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@1b3332d2adc094a318415609e9ba7e881bf5074a
Reviewed-on: https://github.com/flang-compiler/f18/pull/78
|
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@17ee2d8e3ac5bfb633cc2792ee7873c543696e72
Reviewed-on: https://github.com/flang-compiler/f18/pull/78
Tree-same-pre-rewrite: false
|
|
|
|
|
|
|
|
| |
For source files (C++, Fortran, CMake) add copyright and license.
For documentation files add just copyright.
Original-commit: flang-compiler/f18@38381aed839ef091a44ea8f2ef7bc5346d776c67
Reviewed-on: https://github.com/flang-compiler/f18/pull/74
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@be33dc182a9bcfa664095886ca62b3b1db4eb797
Reviewed-on: https://github.com/flang-compiler/f18/pull/7
|
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@198d2e6c8a8a0ffee461acc76f7d1a252ad366da
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
|
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@60a0123f46b74d3fad942bf359ebe5ba11da5cdd
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
|
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@1d351d2114be216472b89ff2f4a07ceceddddb8d
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
|
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@0fea8bd042469738ab08bdc95fc46b24c6fac3ad
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
|
|
|
|
|
|
| |
Original-commit: flang-compiler/f18@1fc60916fbc3339056fe889e8ac50a2906387c49
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
|
|
Original-commit: flang-compiler/f18@39876049a9d64450329604ec5d3d617cea1608e8
|