Skip to content

Flang is a Fortran language front-end designed for integration with LLVM.

License

Notifications You must be signed in to change notification settings

CarolineConcatto/flang

This branch is 752 commits behind flang-compiler/flang:master.

Folders and files

NameName
Last commit message
Last commit date
Jun 20, 2017
May 3, 2019
Dec 14, 2018
May 2, 2019
Apr 18, 2019
May 3, 2019
May 3, 2018
May 11, 2017
Nov 16, 2018
May 11, 2017
Mar 29, 2018

Repository files navigation

Flang

Flang is a Fortran compiler targeting LLVM.

Visit the flang wiki for more information:

https://github.com/flang-compiler/flang/wiki

We have mailing lists for announcements and developers. Here's the link with the sign-up information:

http://lists.flang-compiler.org/mailman/listinfo

We have a flang-compiler channel on Slack. Slack is invitation only but anyone can join. Here's the link:

https://join.slack.com/t/flang-compiler/shared_invite/MjExOTEyMzQ3MjIxLTE0OTk4NzQyNzUtODQzZWEyMjkwYw

Building Flang

Instructions for building Flang can be found on the Flang wiki: https://github.com/flang-compiler/flang/wiki/Building-Flang

Compiler Options

For a list of compiler options, enter

% flang -help

The Flang compiler supports accepts all clang 4.0 compiler options and supports many, as well as the following flang-specific compiler options:

-noFlangLibs          Do not link against Flang libraries
-mp                   Enable OpenMP and link with with OpenMP library libomp
-nomp                 Do not link with OpenMP library libomp
-Mbackslash           Treat backslash character like a C-style escape character
-Mno-backslash        Treat backslash like any other character
-Mbyteswapio          Swap byte-order for unformatted input/output
-Mfixed               Assume fixed-format source
-Mextend              Allow source lines up to 132 characters
-Mfreeform            Assume free-format source
-Mpreprocess          Run preprocessor for Fortran files
-Mrecursive           Generate code to allow recursive subprograms
-Mstandard            Check standard conformance
-Msave                Assume all variables have SAVE attribute
-module               path to module file (-I also works)
-Mallocatable=95      Select Fortran 95 semantics for assignments to allocatable objects (Default)
-Mallocatable=03      Select Fortran 03 semantics for assignments to allocatable objects
-static-flang-libs    Link using static Flang libraries
-M[no]daz             Treat denormalized numbers as zero
-M[no]flushz          Set SSE to flush-to-zero mode
-Mcache_align         Align large objects on cache-line boundaries
-M[no]fprelaxed       This option is ignored
-fdefault-integer-8   Treat INTEGER and LOGICAL as INTEGER*8 and LOGICAL*8
-fdefault-real-8      Treat REAL as REAL*8
-i8                   Treat INTEGER and LOGICAL as INTEGER*8 and LOGICAL*8
-r8                   Treat REAL as REAL*8
-fno-fortran-main     Don't link in Fortran main

About

Flang is a Fortran language front-end designed for integration with LLVM.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 43.0%
  • Fortran 28.1%
  • C++ 15.0%
  • Roff 5.1%
  • Makefile 4.3%
  • Shell 3.2%
  • Other 1.3%