[llvm-dev] Flang landing in the monorepo - next Monday!

Gregory Rodgers via llvm-dev llvm-dev at lists.llvm.org
Wed Jan 8 11:15:40 PST 2020


Hal, Eric, Johannes, David and Peter,

I lead the development of OpenMP for AMD GPUs and work with others at AMD
who support OpenMP on AMD CPUs. On behalf of our development teams, we
greatly appreciate your efforts to move the development of flang into a
subproject in the llvm-project repository and to integrate this development
effort into the overall LLVM development community.

Like most commercial companies, we have certain procedures (some legal) to
participate in open source projects.  Since AMD has already engaged in LLVM
development, adding flang as an LLVM subproject makes it much easier to
participate in the development of flang.    I look forward to my team
getting more involved in the development of flang now that it is part of
LLVM.

I would respectfully disagree with "There's nothing llvm about it".  Flang
uses the clang offloading architecture used by cuda, hip, and
openmp-target.  And the runtime will use both libomp and libomptarget
runtimes found in the llvm project openmp.   While flang frontend may not
immediately use clang -cc1 parsing and codegen, the upstream clang driver
already supports a flang toolchain. See clang/lib/Driver/Types.cpp and
clang/lib/Driver/ToolChains/Flang.cpp.

I think it is better for flang to join LLVM sooner than later.  This will
help flang developers better adopt llvm development practices.  For
example, an earlier variant of flang written in c, generated LLVM-IR
without using llvm::IRBuilder.  This is because the origin of that source
was from a non-LLVM project. This architecture was rejected partly because
it was not llvm enough.  This lead to the creation of the f18 C++ project
which will use llvm::IRbuilder.  F18 is the flang that I expect and hope to
land in monorepo next Monday.

I am also AMD's representative to the OpenMP Architecture Review Board.
Adding flang is an important step to completely cover the OpenMP
specification for c, C++, and FORTRAN in LLVM.

I agree, flang has a long way to go.  But I believe there is enough
critical mass with flang to join the LLVM development now.

Thank you

Greg Rodgers
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200108/0a7a4104/attachment.html>


More information about the llvm-dev mailing list