[llvm-dev] FC : A MLIR+LLVM based Fortran front end

Prashanth N R via llvm-dev llvm-dev at lists.llvm.org
Thu Jan 23 08:12:40 PST 2020

Hi Chris/Hal-

As agreed we are open sourcing implementation of 5 Openmp constructs i.e.
omp.parallel, omp.single, omp.do, omp.master and omp.parallel_do. The
latest code can be accessed at
https://github.com/compiler-tree-technologies/fc .  Along with LLVM fork
the repository can be accessed at
https://github.com/compiler-tree-technologies/ .  Testing infrastructure
has been upgraded to Lit framework. Openmp test cases can be accessed at
https://github.com/compiler-tree-technologies/fc/tree/master/test/openmp .
Implementation of rest of the constructs will be open sourced in a later
release.  Please give feedback on the implementation and report any issues
you encounter.

A detailed design note along with the issues considered will be sent
shortly to the group for discussion.


PS: In the next release we will opensource implementation of some loop
transforms like Loop Blocking, Loop Permute(generalized interchange) etc.

On Mon, Jan 13, 2020 at 11:17 AM Chris Lattner <clattner at nondot.org> wrote:

> Agreed!  Is the code already available?  What are your plans for it, and
> are you interested in collaboration with the rest of the LLVM community?
> -Chris
> On Jan 11, 2020, at 11:58 AM, Finkel, Hal J. via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
> Hi, Prashanth,
> That's great news! It sounds like you've made a lot of progress, and I
> certainly hope that you can make your source available under the LLVM
> license and that we can all work together going forward.
>  -Hal
> On 1/11/20 12:52 PM, Prashanth N R via llvm-dev wrote:
> Hi-
> In August we made an announcement  of "FC: A new fortran front end"  [1].
> At that time to get an end-to-end solution, we made FC to emit LLVM IR
> directly.  At present, we have upgraded FC to emit MLIR. Currently the
> language supported is close to Fortran-95. Apart from 400+ unit test cases,
> out framework passes two SPEC-2017 benchmarks successfully.  Currently we
> are cleaning up the code and plan to open source the same in a week or so.
> Apart from the front end changes, we have defined a new high level dialect
> in MLIR for representing Fortran. We have defined a new Loop Nest
> Optimization framework along with one Loop Nest Optimization in it for the
> time being. Also we have supported 4 OpenMP constructs and way to express
> the same in MLIR framework.
> Entire code is in the spirit of LLVM. If the community is interested, we
> would like to work with the community and move forward.
> thanks,
> -Prashanth
> PS: We did try to use F18 for a while and hit the issues raised in [2],
> [3].
> 1. http://lists.llvm.org/pipermail/llvm-dev/2019-August/134620.html
> 2. http://lists.llvm.org/pipermail/llvm-dev/2020-January/138069.html
> 3.
> http://lists.llvm.org/pipermail/flang-dev/attachments/20191202/6e7c1e51/attachment-0001.pdf
> OR http://lists.llvm.org/pipermail/flang-dev/2019-December/000089.html
> _______________________________________________
> LLVM Developers mailing listllvm-dev at lists.llvm.orghttps://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
> --
> Hal Finkel
> Lead, Compiler Technology and Programming Languages
> Leadership Computing Facility
> Argonne National Laboratory
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200123/83af7795/attachment.html>

More information about the llvm-dev mailing list