Home
last modified time | relevance | path

Searched full:flang (Results 1 – 25 of 1486) sorted by relevance

12345678910>>...60

/llvm-project/flang/docs/
H A DGettingStarted.md17 ## Building flang
18 There are two ways to build flang. The first method is to build it at the same
21 all of the projects on which flang depends. Then, after creating this base
22 build, only build the flang code itself. This is called building standalone.
33 ### Building flang in tree
34 Building flang in tree means building flang along with all of the projects on
35 which it depends. These projects include mlir, clang, flang, openmp, and
84 -DLLVM_ENABLE_PROJECTS="clang;mlir;flang;openmp" \
91 On Darwin, to make flang able to link binaries with the default sysroot without
95 By default flang tests that do not specify an explicit `--target` flag use
[all …]
H A DFlangDriver.md9 # Flang drivers
17 There are two main drivers in Flang:
18 * the compiler driver, `flang`
19 * the frontend driver, `flang -fc1`
24 Fortran compilation job and delegates it to `flang -fc1`, the frontend
31 not yet available in Flang, but will be relatively easy to support once such
32 libraries become available. Flang's compiler driver is intended for Flang's
33 end-users - its interface needs to remain stable. Otherwise, Flang's users will
38 | *Flang
[all...]
H A DGettingInvolved.md16 The Flang Project welcomes contributions of all kinds.
17 Please feel free to join the mailing list or the slack channel for discussions related to development of Flang.
18 To understand the status of various developments in Flang please join the respective call.
22 Contributions to Flang are done using GitHub Pull Requests and follow the
27 [Forum](https://discourse.llvm.org/c/subprojects/flang)
29 Flang forums are for technical discussions, questions about writing code for, or using Flang tools.
32 [Commits Archive (flang-commits)](http://lists.llvm.org/pipermail/flang-commits)
34 This list contains all commit messages that are made when Flang developer
[all...]
H A DCMakeLists.txt28 set(FLANG_DOXYGEN_QCH_FILENAME "org.llvm.flang.qch" CACHE STRING
30 set(FLANG_DOXYGEN_QHP_NAMESPACE "org.llvm.flang" CACHE STRING
32 set(FLANG_DOXYGEN_QHP_CUST_FILTER_NAME "FLANG ${FLANG_VERSION}" CACHE STRING
34 set(FLANG_DOXYGEN_QHP_CUST_FILTER_ATTRS "FLANG,${FLANG_VERSION}" CACHE STRING
78 add_custom_target(doxygen-flang
81 COMMENT "Generating flang doxygen documentation." VERBATIM)
82 set_target_properties(doxygen-flang PROPERTIES FOLDER "Flang/Docs")
84 add_dependencies(doxygen doxygen-flang)
109 add_sphinx_target(html flang SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/Source")
111 add_dependencies(docs-flang-html copy-flang-src-docs)
[all …]
H A DReal16MathSupport.md9 # Flang support for REAL(16) math intrinsics
11 To support most `REAL(16)` (i.e. 128-bit float) math intrinsics Flang relies
16 to GCC `libquadmath` library. A Flang driver built with this option
20 can find it. The `libquadmath` library installation into Flang project
24 accuracy issues, so it is recommended to distribute the Flang
27 Care must be taken by the distributors of a Flang package built
30 of `libquadmath` to the Flang users' programs may imply some
32 any legal advice on distributing such a Flang compiler.
34 Flang compiler targeting systems with `LDBL_MANT_DIG == 113`
38 for building Flang compilers for such targets.
/llvm-project/flang/test/Driver/
H A Dfdefault.f905 ! FLANG DRIVER (flang)
7 ! RUN: rm -rf %t/dir-flang && mkdir -p %t/dir-flang && %flang -fsyntax-only -module-dir %t/dir-flang %s 2>&1
8 ! RUN: cat %t/dir-flang/m.mod | FileCheck %s --check-prefix=NOOPTION
9 ! RUN: rm -rf %t/dir-flang && mkdir -p %t/dir-flang && %flang
[all...]
H A Dmissing-input.f902 ! that with the compiler driver (flang), the input _has_ to be specified.
5 ! (compile? preprocess? link?). The frontend driver (flang -fc1) simply
9 ! FLANG DRIVER (flang)
11 ! RUN: not %flang 2>&1 | FileCheck %s --check-prefix=FLANG-NO-FILE
12 ! RUN: not %flang %t.f90 2>&1 | FileCheck %s --check-prefix=FLANG-NONEXISTENT-FILE
15 ! FLANG FRONTEND DRIVER (flang
[all...]
H A Dflarge-sizes.f905 ! FLANG DRIVER (flang)
7 ! RUN: rm -rf %t/dir-flang && mkdir -p %t/dir-flang && %flang -fsyntax-only -module-dir %t/dir-flang %s 2>&1
8 ! RUN: cat %t/dir-flang/m.mod | FileCheck %s --check-prefix=NOLARGE
9 ! RUN: rm -rf %t/dir-flang && mkdir -p %t/dir-flang && %flang
[all...]
H A Domp-driver-offload.f901 ! Test that flang OpenMP and OpenMP offload related
3 ! for flang -fc1 as expected. Assumes a gfx90a, aarch64,
10 ! RUN: %flang -### -fopenmp %s 2>&1 | FileCheck --check-prefixes=CHECK-OPENMP %s
11 ! CHECK-OPENMP: "{{[^"]*}}flang" "-fc1" {{.*}} "-fopenmp" {{.*}}.f90"
12 ! CHECK-OPENMP-NOT: "{{[^"]*}}flang" "-fc1" {{.*}} "-fopenmp" {{.*}} "-fopenmp-is-target-device" {{.*}}.f90"
15 ! RUN: %flang -S -### %s -o %t 2>&1 \
20 ! RUN: %flang -S -### %s -o %t 2>&1 \
25 ! OFFLOAD-HOST-AND-DEVICE: "{{[^"]*}}flang" "-fc1" "-triple" "aarch64-unknown-linux-gnu"
26 ! OFFLOAD-HOST-AND-DEVICE-NEXT: "{{[^"]*}}flang" "-fc1" "-triple" "amdgcn-amd-amdhsa"
27 ! OFFLOAD-HOST-AND-DEVICE-NEXT: "{{[^"]*}}flang" "
[all...]
H A Dmcmodel.f901 ! RUN: not %flang -### -c --target=i686 -mcmodel=medium %s 2>&1 | FileCheck --check-prefix=ERR-MEDI…
2 ! RUN: %flang --target=x86_64 -### -c -mcmodel=tiny %s 2>&1 | FileCheck --check-prefix=TINY %s
3 ! RUN: %flang --target=x86_64 -### -c -mcmodel=small %s 2>&1 | FileCheck --check-prefix=SMALL %s
4 ! RUN: %flang --target=x86_64 -### -S -mcmodel=kernel %s 2>&1 | FileCheck --check-prefix=KERNEL %s
5 ! RUN: %flang --target=x86_64 -### -c -mcmodel=medium %s 2>&1 | FileCheck --check-prefix=MEDIUM %s
6 ! RUN: %flang --target=x86_64 -### -S -mcmodel=large %s 2>&1 | FileCheck --check-prefix=LARGE %s
7 ! RUN: not %flang -### -c --target=powerpc-linux-gnu -mcmodel=medium %s 2>&1 | FileCheck --check-pr…
8 ! RUN: %flang --target=powerpc-unknown-aix -### -S -mcmodel=small %s 2>&1 | FileCheck --check-prefi…
9 ! RUN: %flang --target=powerpc-unknown-aix -### -S -mcmodel=large %s 2>&1 | FileCheck --check-prefi…
10 ! RUN: %flang --target=powerpc-unknown-aix -### -S -mcmodel=medium %s 2> %t.log
[all …]
H A Dfopenmp.f901 ! RUN: %flang -target x86_64-linux-gnu -fopenmp=libomp -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-OPENMP
2 ! RUN: %flang -target x86_64-linux-gnu -fopenmp=libgomp -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-NO-OPENMP
3 ! RUN: %flang -target x86_64-linux-gnu -fopenmp=libiomp5 -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-OPENMP
4 ! RUN: %flang -target x86_64-apple-darwin -fopenmp=libomp -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-OPENMP
5 ! RUN: %flang -target x86_64-apple-darwin -fopenmp=libgomp -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-NO-OPENMP
6 ! RUN: %flang -target x86_64-apple-darwin -fopenmp=libiomp5 -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-OPENMP
7 ! RUN: %flang -target x86_64-freebsd -fopenmp=libomp -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-OPENMP
8 ! RUN: %flang -target x86_64-freebsd -fopenmp=libgomp -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-NO-OPENMP
9 ! RUN: %flang -target x86_64-freebsd -fopenmp=libiomp5 -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-OPENMP
10 ! RUN: %flang
[all...]
H A Dhlfir-no-hlfir-error.f901 ! Test that -flang-experimental-hlfir and -flang-deprecated-no-hlfir
5 ! FLANG DRIVER (flang)
7 ! RUN: not %flang -flang-experimental-hlfir -flang-deprecated-no-hlfir %s 2>&1 | FileCheck %s
10 ! FRONTEND FLANG DRIVER (flang -fc1)
12 ! RUN: not %flang_fc1 -emit-llvm -flang
[all...]
H A Dwrite-module.f909 ! RUN: rm -rf %t && mkdir -p %t/dir-flang
10 ! RUN: cd %t && %flang -fsyntax-only -module-dir %t/dir-flang %s
11 ! RUN: ls %t/dir-flang/testmodule.mod && not ls %t/testmodule.mod
17 ! RUN: rm -rf %t && mkdir -p %t/dir-flang
18 ! RUN: cd %t && %flang -fsyntax-only -module-dir%t/dir-flang %s
19 ! RUN: ls %t/dir-flang/testmodule.mod && not ls %t/testmodule.mod
25 ! RUN: rm -rf %t && mkdir -p %t/dir-flang
26 ! RUN: cd %t && %flang -fsyntax-only -J %t/dir-flang %s
27 ! RUN: ls %t/dir-flang/testmodule.mod && not ls %t/testmodule.mod
33 ! RUN: rm -rf %t && mkdir -p %t/dir-flang
[all …]
H A Dversion-loops.f901 ! Test that flang forwards the -f{no-,}version-loops-for-stride
2 ! options correctly to flang -fc1 for different variants of optimisation
5 ! RUN: %flang -### %s -o %t 2>&1 -O3 \
8 ! RUN: %flang -### %s -o %t 2>&1 -O2 \
11 ! RUN: %flang -### %s -o %t 2>&1 -O2 -fversion-loops-for-stride \
14 ! RUN: %flang -### %s -o %t 2>&1 -O4 \
17 ! RUN: %flang -### %s -o %t 2>&1 -Ofast \
20 ! RUN: %flang -### %s -o %t 2>&1 -Ofast -fno-version-loops-for-stride \
23 ! RUN: %flang -### %s -o %t 2>&1 -O3 -fno-version-loops-for-stride \
26 ! CHECK: "{{.*}}flang" "
[all...]
H A Dmultiple-input-files.f903 ! FLANG DRIVER (flang)
8 ! RUN: %flang -E %s %S/Inputs/hello.f90 | FileCheck %s --match-full-lines -check-prefix=FLANG
11 ! RUN: not %flang -E -o - %S/Inputs/hello.f90 %s 2>&1 | FileCheck %s --match-full-lines -check-prefix=ERROR
12 ! RUN: not %flang -E -o %t %S/Inputs/hello.f90 %s 2>&1 | FileCheck %s --match-full-lines -check-prefix=ERROR
15 ! FLANG FRONTEND DRIVER (flang -fc1)
30 ! TEST 1: By default, `flang` prints the output from all input files to
32 ! FLANG
[all...]
H A Dfveclib.f901 ! RUN: %flang -### -c -fveclib=none %s 2>&1 | FileCheck -check-prefix CHECK-NOLIB %s
2 ! RUN: %flang -### -c -fveclib=Accelerate %s 2>&1 | FileCheck -check-prefix CHECK-ACCELERATE %s
3 ! RUN: %flang -### -c -fveclib=libmvec %s 2>&1 | FileCheck -check-prefix CHECK-libmvec %s
4 ! RUN: %flang -### -c -fveclib=MASSV %s 2>&1 | FileCheck -check-prefix CHECK-MASSV %s
5 ! RUN: %flang -### -c -fveclib=Darwin_libsystem_m %s 2>&1 | FileCheck -check-prefix CHECK-DARWIN_LIBSYSTEM_M %s
6 ! RUN: %flang -### -c --target=aarch64-none-none -fveclib=SLEEF %s 2>&1 | FileCheck -check-prefix CHECK-SLEEF %s
7 ! RUN: %flang -### -c --target=aarch64-none-none -fveclib=ArmPL %s 2>&1 | FileCheck -check-prefix CHECK-ARMPL %s
8 ! RUN: %flang -### -c --target=aarch64-apple-darwin -fveclib=none %s 2>&1 | FileCheck -check-prefix CHECK-NOLIB-DARWIN %s
9 ! RUN: not %flang -c -fveclib=something %s 2>&1 | FileCheck -check-prefix CHECK-INVALID %s
22 ! RUN: not %flang
[all...]
H A Dmisc-flags.f901 ! Make sure that `-l` is "visible" to Flang's driver
2 ! RUN: %flang -lpgmath -### %s
4 ! Make sure that `-Wl` is "visible" to Flang's driver
5 ! RUN: %flang -Wl,abs -### %s
7 ! Make sure that `-fuse-ld' is "visible" to Flang's driver
8 ! RUN: %flang -fuse-ld= -### %s
10 ! Make sure that `-L' is "visible" to Flang's driver
11 ! RUN: %flang -L/ -### %s
/llvm-project/flang/
H A DCMakeLists.txt2 set(LLVM_SUBPROJECT_TITLE "Flang")
12 # Flang requires C++17.
18 # To match with the flang guidelines we currently disable
20 message(FATAL_ERROR "Flang does not currently support building with \
22 flang.")
35 option(FLANG_ENABLE_WERROR "Fail and stop building flang if a warning is triggered." OFF)
51 message("Building Flang as a standalone project.")
52 project(Flang) project
71 message(FATAL_ERROR "Flang cannot be built with clang and the MSVC 17.12 "
79 message(FATAL_ERROR "flang is
[all...]
H A DREADME.md1 # Flang chapter
3 Flang is a ground-up implementation of a Fortran front end written in modern
4 C++. It started off as the f18 project (https://github.com/flang-compiler/f18)
5 with an aim to replace the previous flang project
6 (https://github.com/flang-compiler/flang) and address its various deficiencies.
7 F18 was subsequently accepted into the LLVM project and rechristened as Flang.
9 Please note that flang is not ready yet for production usage.
13 Read more about flang in the [docs directory](docs).
17 and the specific grammar accepted by flang,
20 flang's specifications of the [Fortran grammar](docs/f2018-grammar.md)
[all …]
/llvm-project/flang/test/
H A DCMakeLists.txt1 # Test runner infrastructure for Flang. This configures the Flang test trees
61 flang
95 add_custom_target(flang-test-depends DEPENDS ${FLANG_TEST_DEPENDS})
96 set_target_properties(flang-test-depends PROPERTIES FOLDER "Flang/Meta")
98 add_lit_testsuite(check-flang "Running the Flang regression tests"
103 set_target_properties(check-flang PROPERTIES FOLDER "Flang/Met
[all...]
/llvm-project/flang/lib/FrontendTool/
H A DExecuteCompilerInvocation.cpp10 // minimize the impact of pulling in essentially everything else in Flang.
18 #include "flang/Frontend/CompilerInstance.h"
19 #include "flang/Frontend/FrontendActions.h"
20 #include "flang/Frontend/FrontendPluginRegistry.h"
153 bool executeCompilerInvocation(CompilerInstance *flang) { in executeCompilerInvocation() argument
155 if (flang->getFrontendOpts().showHelp) { in executeCompilerInvocation()
157 llvm::outs(), "flang -fc1 [options] file...", "LLVM 'Flang' Compiler", in executeCompilerInvocation()
164 if (flang->getFrontendOpts().showVersion) { in executeCompilerInvocation()
170 for (const std::string &path : flang in executeCompilerInvocation()
[all...]
/llvm-project/clang/test/Driver/flang/
H A Dflang.f901 ! Check that flang -fc1 is invoked when in --driver-mode=flang.
4 ! differentiates between F90 and f90 files. Flang will not treat these files
15 ! All invocations should begin with flang -fc1, consume up to here.
16 ! ALL-LABEL: "{{[^"]*}}flang{{[^"/]*}}" "-fc1"
19 ! ... in --driver-mode=flang.
20 ! RUN: %clang --driver-mode=flang -### -E %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-E %s
25 ! RUN: %clang --driver-mode=flang -### -fsyntax-only %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-SYNTAX-ONLY %s
29 ! RUN: %clang --driver-mode=flang -### -emit-llvm -S %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-EMIT-LLVM-IR %s
33 ! RUN: not %clang --driver-mode=flang
[all...]
H A Dflang_ucase.F901 ! Check that flang -fc1 is invoked when in --driver-mode=flang.
3 ! This is a copy of flang.f90 because the driver has logic in it which
4 ! differentiates between F90 and f90 files. Flang will not treat these files
15 ! All invocations should begin with flang -fc1, consume up to here.
16 ! ALL-LABEL: "{{[^"]*}}flang{{[^"/]*}}" "-fc1"
19 ! ... in --driver-mode=flang.
20 ! RUN: %clang --driver-mode=flang -### -E %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-E %s
25 ! RUN: %clang --driver-mode=flang -### -fsyntax-only %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-SYNTAX-ONLY %s
29 ! RUN: %clang --driver-mode=flang
[all...]
/llvm-project/flang/tools/flang-driver/
H A DCMakeLists.txt1 # Infrastructure to build flang driver entry point. Flang driver depends on
15 add_flang_tool(flang
20 target_link_libraries(flang
26 clang_target_link_libraries(flang
35 set_target_properties(flang PROPERTIES VERSION ${FLANG_EXECUTABLE_VERSION})
38 option(FLANG_PLUGIN_SUPPORT "Build Flang with plugin support." ON)
40 # Enable support for plugins, which need access to symbols from flang
42 export_executable_symbols_for_plugins(flang)
45 install(TARGETS flang DESTINATIO
[all...]
H A Dfc1_main.cpp1 //===-- fc1_main.cpp - Flang FC1 Compiler Frontend ------------------------===//
9 // This is the entry point to the flang -fc1 functionality, which implements the
19 #include "flang/Frontend/CompilerInstance.h"
20 #include "flang/Frontend/CompilerInvocation.h"
21 #include "flang/Frontend/TextDiagnosticBuffer.h"
22 #include "flang/FrontendTool/Utils.h"
55 std::unique_ptr<CompilerInstance> flang(new CompilerInstance()); in fc1_main()
58 flang->createDiagnostics(); in fc1_main()
59 if (!flang->hasDiagnostics()) in fc1_main()
73 bool success = CompilerInvocation::createFromArgs(flang in fc1_main()
35 std::unique_ptr<CompilerInstance> flang(new CompilerInstance()); fc1_main() local
[all...]

12345678910>>...60