[llvm-dev] FC : A MLIR+LLVM based Fortran front end
Petr Penzin via llvm-dev
llvm-dev at lists.llvm.org
Wed Feb 19 22:27:14 PST 2020
Hi Prashanth,
Do those benchmarks run? They seem to be relatively short (bwaves [1],
exchange [2]), but if the runs verify correctly that would be pretty good.
Do you plan on supporting any of the Fortran 2003 features?
-Petr
[1]: https://www.spec.org/cpu2017/Docs/runcpu-avoidance.html#pickone
[2]: https://www2.hawaii.edu/~nreed/ics606/papers/Metcalf06Sudoku.pdf
On 2/17/20 9:19 AM, Prashanth N R wrote:
> Hi Petr-
>
> 1. We compile SPEC benchmarks bwaves and xchange currently. We are
> close to compiling fotonik at this point.
> 2. We released the source as experimental for the community to take a
> look. Soon we will open source the entire history of development(we
> are working on the script to upload the history).
>
> thanks,
> -Prashanth
>
> On Mon, Feb 10, 2020 at 4:20 AM Petr Penzin via llvm-dev
> <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
>
>
> *FC*
> https://github.com/compiler-tree-technologies/fc
> Not related to any of the above, but seems to be in some ways
> similar to Clang/(old)Flang/Fort. Recursive descent parser; emits
> MLIR. Does not use tablegen, has a different way of throwing
> errors, has no builtin diagnostics, also no driver. Project has
> only seven commits to this date. Not clear on the Fortran standard
> support (has flags to support f77 and f95), the claim that it can
> compile a couple of larger application from SPEC, but I can't find
> which ones.
>
>
> On 1/13/20 9:02 AM, James Y Knight via llvm-dev wrote:
>> Neat, another fortran compiler option.
>>
>> Does anyone have a list/comparison of all the LLVM fortran
>> compilers? I'm not really tracking this, since Fortran isn't
>> really my area of expertise, but I've seen the following. Perhaps
>> there are even more?
>>
>> "Flang". The original of the name, I think? Abandoned.
>> https://github.com/llvm-flang/flang
>> "Fort" -- fork of the above flang, renamed. Seems active.
>> https://github.com/llvm-fortran/fort/
>>
>> "Flag". Different from the other "flang". Active, but deprecated
>> in favor of f18.
>> https://github.com/flang-compiler/flang
>> "f18". Rewrite-from-scratch (?) of adjacent "flang". Active, but
>> not fully-functional yet (I think?).
>> https://github.com/flang-compiler/f18
>>
>> "FC". Newly-developed, independent of the other compilers.
>> Active. (But this source-code dates from the previous
>> announcement, not yet updated with latest developments):
>> https://github.com/compiler-tree-technologies/fc
>>
>> I don't know how any of these compare with each other, nor why we
>> have so many. I have no opinion on which or whether any of these
>> should be "blessed", nor do I really want to become educated
>> enough on this topic to gain such an opinion personally.
>>
>> But, given that there appear to be at least 3 fortran compilers
>> under active development by different people, I would love to be
>> reassured that such a comparison has been done, and that we are
>> selecting one of them for good reasons. It'd be great if someone
>> (or multiple someones) could post a summary/comparison of what
>> these things all are, and why one is the right path forward vs
>> another.
>>
>> On Mon, Jan 13, 2020 at 2:46 AM Prashanth N R via llvm-dev
>> <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
>>
>> Hi Chris-
>> We are mostly cleaning up the code for open sourcing. Early
>> code drop will happen in a day or two and will continue
>> through this week. We would love to work with the rest of the
>> community on this.
>>
>> thanks,
>> -Prashanth
>>
>> On Mon, Jan 13, 2020 at 11:17 AM Chris Lattner
>> <clattner at nondot.org <mailto: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
>>> <mailto: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 list
>>>> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>
>>>> https://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 <mailto:llvm-dev at lists.llvm.org>
>>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>
>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>
>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org <mailto: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/20200219/f3276f23/attachment.html>
More information about the llvm-dev
mailing list