Speaker
Description
We'll present the goals, current status and future plans for Flang, the LLVM Fortran front-end.
Flang is the new LLVM-based Fortran front-end supporting full Fortran 2018. It is being written from scratch in modern C++ and will make extensive use of existing LLVM tools (MLIR, LLVM IR, utility libraries, and so on). We expect this to be the last Fortran front-end that will ever need to be written.
The primary goals of Flang are
- Build a robust Fortran compiler using modern compiler techniques (parser combinators, multi-level intermediate representations) that encompasses all of the Fortran 2018 standard.
- Develop an active community of developers (now DOE, NVIDIA, Arm, AMD and others).
- Provide support for Fortran tool development.
- Provide support for Fortran language experimentation for features proposed for future Fortran standards.
60,000+ lines of the compiler have been upstreamed to the flang/ directory of the LLVM monorepo. Its build integrates with the rest of LLVM (as an optional component). This covers parsing, semantic analysis and the start on lowering to an MLIR dialect called FIR.
We will also briefly discuss the next steps for the project.