summaryrefslogtreecommitdiff
path: root/flang/README.md
Commit message (Collapse)AuthorAgeFilesLines
* [Flang][Docs] Add a GettingStarted.md for build instructionsShivam Gupta2023-04-121-335/+2
| | | | | | | | 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
* [flang] fix FIRLangRef.md pathLeonardo Sandoval2023-01-171-1/+1
| | | | | | Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D141416
* Doc: improve the flang readme pageSylvestre Ledru2023-01-061-8/+8
| | | | | | Reviewed By: PeteSteinfeld Differential Revision: https://reviews.llvm.org/D141126
* [Flang][Test] Add support to change the default target triple for testsUsman Nadeem2022-11-281-0/+6
| | | | | | | | | | | | | | | 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
* [Flang] Update build documentationPeter Steinfeld2022-09-091-31/+93
| | | | | | | Changes to build instructions based on the latest requirements with compiler-rt. Differential Revision: https://reviews.llvm.org/D131041
* [flang][docs] Remove the out-dated note on Windows supportAndrzej Warzynski2022-06-071-3/+0
| | | | | | | | | 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.
* Update all LLVM documentation mentioning runtimes in LLVM_ENABLE_PROJECTSLouis Dionne2022-02-101-4/+5
| | | | | | | | | | | | | | | | | | | 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
* [flang][nfc] Update README.mdAndrzej Warzynski2022-01-131-24/+9
| | | | | | | | 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
* [flang] Fix the documentation on how to build flangPeter Steinfeld2022-01-101-58/+134
| | | | | | | | 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
* [Flang][docs] Remove an out-dated section on the new driverAndrzej Warzynski2021-10-221-8/+0
| | | | | | | 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.
* [flang][cmake] Enable the new driver by defaultAndrzej Warzynski2021-05-111-20/+15
| | | | | | | | | | | | | 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
* [Branch-Rename] Fix some linksxgupta2021-02-011-1/+1
| | | | | | | | 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
* update .txt --> .md linksbrett koonce2020-10-121-2/+2
|
* [flang][NFC] Fix CMake variable name in README.mdAndrzej Warzynski2020-09-241-1/+1
| | | | | The CMake variable for the new flang driver is FLANG_BUILD_NEW_DRIVER rather than BUILD_FLANG_NEW_DRIVER.
* [flang][driver] Add the new flang compiler and frontend driversCaroline Concatto2020-09-111-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* [flang] Spelling and format edits to README.txt. NFC.Richard Barton2020-09-071-4/+7
|
* [FLANG] Pick `.md` files when building sphinx documentation.Sameeran joshi2020-08-241-0/+25
| | | | | | | | | | | | | | | | | 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
* [Flang] Move markdown files(.MD) from documentation/ to docs/sameeran joshi2020-08-181-10/+10
| | | | | | | | | | | | 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
* [flang] unit test support for out-of-tree and in-tree using google tests ↵sameeran joshi2020-06-151-2/+38
| | | | | | framework Review comments addressed.
* [flang][docs] Doxygen support in flang.sameeran joshi2020-04-271-3/+19
| | | | | | | | | | | | | | | | 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
* [flang] [NFC] Adjust README.md for upstreaming.David Truby2020-04-091-111/+50
| | | | | | | | 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
* [flang] Adjust README.md for upstreaming to LLVM.David Truby2020-04-091-11/+3
| | | | Original-commit: flang-compiler/f18@24d23963b879d6586a7e19b89a905341627fe5b1
* [flang] Adjust supported compilers statement in F18 readmeCaroline Concatto2020-04-061-3/+11
| | | | | | | | | | | 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] [mlir rebase] Add MLIR config and react to MLIR name changes ↵Steve Scalpone2020-03-271-13/+21
| | | | | | | | | | | | | | | | | | | | (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
* [flang] A rework of the cmake build components for in and out of tree builds.Patrick McCormick2020-03-261-25/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* [flang] Test cleanupTim Keith2020-03-161-1/+1
| | | | | | | | | | 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] Add Fortran IR (FIR) MLIR dialect implementation ↵jeanPerier2020-03-111-0/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (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
* [flang] Change README to refer to LLVM_BUILD_DIR. (flang-compiler/f18#1033)Steve Scalpone2020-03-051-14/+3
| | | | | | | | | * 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] Regression tests configuration for f18 repository ↵CarolineConcatto2020-01-141-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | (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
* [flang] Flang relicensing changes for LLVM Apache 2.0 licenseGary Klimowicz2019-12-231-2/+6
| | | | | | | | | | | | | | | | | | | | | | 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
* [flang] Reorder the advice about putting GCC bin and lib onSteve Scalpone2019-03-201-8/+6
| | | | | | | 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
* [flang] Update README.md with a list of compilers that are known toSteve Scalpone2019-03-191-49/+99
| | | | | | | | | 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
* [flang] Update README.mdpsteinfeld2019-02-251-4/+8
| | | | | | Original-commit: flang-compiler/f18@230e9ad3a0877ce528d3a0fb034677bc9c819dc4 Reviewed-on: https://github.com/flang-compiler/f18/pull/301 Tree-same-pre-rewrite: false
* [flang] Update README to reflect buildability with GCC 8.2.0.peter klausler2018-08-031-2/+2
| | | | | Original-commit: flang-compiler/f18@f64a9f5b824b5fdff886a0f136681b71ab1f21fd Reviewed-on: https://github.com/flang-compiler/f18/pull/163
* [flang] Update README.md (flang-compiler/f18#150)Austin Wells2018-07-271-1/+1
| | | | | | | 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
* [flang] Update build instructions (flang-compiler/f18#94)Steve Scalpone2018-05-181-30/+97
| | | | | | | | | * 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
* [flang] Update README.md, can build with clang 6.0 + g++ 8.1.0 headers.peter klausler2018-05-081-1/+2
| | | | | | Original-commit: flang-compiler/f18@f57451d8d4ae47ee19e5428a6120d0fa9e682aa6 Reviewed-on: https://github.com/flang-compiler/f18/pull/84 Tree-same-pre-rewrite: false
* [flang] Update README with g++ 8.1.peter klausler2018-05-081-1/+1
| | | | | | Original-commit: flang-compiler/f18@a047f116da80058571ed4834c7f93eed4edd28d2 Reviewed-on: https://github.com/flang-compiler/f18/pull/84 Tree-same-pre-rewrite: false
* [flang] Copyediting of README.md.peter klausler2018-05-071-18/+18
| | | | | | Original-commit: flang-compiler/f18@32ffc711b61fbfdefee2881cf051e207f6fc9a96 Reviewed-on: https://github.com/flang-compiler/f18/pull/84 Tree-same-pre-rewrite: false
* [flang] misc changes in response to pul-request commentsStephane Chauveau2018-05-041-29/+8
| | | | | Original-commit: flang-compiler/f18@1b3332d2adc094a318415609e9ba7e881bf5074a Reviewed-on: https://github.com/flang-compiler/f18/pull/78
* [flang] Manual backport of sch_llvm branchStephane Chauveau2018-05-031-0/+63
| | | | | | Original-commit: flang-compiler/f18@17ee2d8e3ac5bfb633cc2792ee7873c543696e72 Reviewed-on: https://github.com/flang-compiler/f18/pull/78 Tree-same-pre-rewrite: false
* [flang] Add copyright notices.Tim Keith2018-05-011-0/+4
| | | | | | | | 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
* [flang] Revert "Schauveau cmake"Steve Scalpone2018-02-141-72/+0
| | | | | Original-commit: flang-compiler/f18@be33dc182a9bcfa664095886ca62b3b1db4eb797 Reviewed-on: https://github.com/flang-compiler/f18/pull/7
* [flang] Simplified git clone in READMEStephane Chauveau2018-02-091-25/+15
| | | | | | Original-commit: flang-compiler/f18@198d2e6c8a8a0ffee461acc76f7d1a252ad366da Reviewed-on: https://github.com/flang-compiler/f18/pull/6 Tree-same-pre-rewrite: false
* [flang] fix bad indentation in READMEStephane Chauveau2018-02-091-2/+2
| | | | | | Original-commit: flang-compiler/f18@60a0123f46b74d3fad942bf359ebe5ba11da5cdd Reviewed-on: https://github.com/flang-compiler/f18/pull/6 Tree-same-pre-rewrite: false
* [flang] minor changresStephane Chauveau2018-02-091-4/+5
| | | | | | Original-commit: flang-compiler/f18@1d351d2114be216472b89ff2f4a07ceceddddb8d Reviewed-on: https://github.com/flang-compiler/f18/pull/6 Tree-same-pre-rewrite: false
* [flang] updated build instructions in README.mdStephane Chauveau2018-02-091-5/+24
| | | | | | Original-commit: flang-compiler/f18@0fea8bd042469738ab08bdc95fc46b24c6fac3ad Reviewed-on: https://github.com/flang-compiler/f18/pull/6 Tree-same-pre-rewrite: false
* [flang] add preliminary README fileStephane Chauveau2018-02-091-0/+62
| | | | | | Original-commit: flang-compiler/f18@1fc60916fbc3339056fe889e8ac50a2906387c49 Reviewed-on: https://github.com/flang-compiler/f18/pull/6 Tree-same-pre-rewrite: false
* [flang] Add READMETim Keith2018-01-251-0/+1
Original-commit: flang-compiler/f18@39876049a9d64450329604ec5d3d617cea1608e8