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

Prashanth N R via llvm-dev llvm-dev at lists.llvm.org
Mon Jan 13 13:12:54 PST 2020


Hi-

The code has been open sourced at
https://github.com/compiler-tree-technologies. There are two repositories.
1. The Fortran front end, aka FC, at
https://github.com/compiler-tree-technologies/fc.
2. Associated LLVM changes including MLIR at
https://github.com/compiler-tree-technologies/llvm-project.

Build instructions are given at the website. There is a document at
https://github.com/compiler-tree-technologies/fc/blob/master/docs/FC_MLIR.pdf
which
gives low level implementation details. As the week progresses, we might
clean up the code and upstream. In the meantime, if there are any
questions, please do let me know.

thanks,
-Prashanth


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/20200114/970c89e9/attachment.html>


More information about the llvm-dev mailing list