[llvm-dev] FW: F18 ready to be merged + preview of merge

Richard Barton via llvm-dev llvm-dev at lists.llvm.org
Wed Apr 8 08:02:02 PDT 2020



From: Eric Schweitz <eschweitz at nvidia.com>
Sent: 8 April, 2020 15:45
To: Mehdi AMINI <joker.eph at gmail.com>; Richard Barton <Richard.Barton at arm.com>
Subject: RE: [llvm-dev] F18 ready to be merged + preview of merge

Hi Mehdi,

This is the same list of failures that we were seeing on our FIR working branch.  One problem seemed to be related to a misconfiguration in the cmake files as to where the system module files were located.  The latest cmake changes seem to have got that straightened out.  We have around 370 passing tests (0 failing) in our working branch.

A more recent run of the test tool, tco, with valgrind does not show any memory leaks. (We have had some bugs, of course.)

--
Eric


From: llvm-dev <llvm-dev-bounces at lists.llvm.org<mailto:llvm-dev-bounces at lists.llvm.org>> On Behalf Of Mehdi AMINI via llvm-dev
Sent: Tuesday, April 7, 2020 4:23 PM
To: Richard Barton <Richard.Barton at arm.com<mailto:Richard.Barton at arm.com>>
Cc: llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org>
Subject: Re: [llvm-dev] F18 ready to be merged + preview of merge

Attached is the log.
I'm building with:

clang version 10.0.0 (https://github.com/llvm/llvm-project/ 3a6da1122b990386edeba0987d0d1fdc9c8dc53d)
Target: x86_64-unknown-linux-gnu
Thread model: posix

On some Ubuntu-like distribution.

I also ran with ASAN once and it found a bunch of leaks in bin/tco.

Best,

--
Mehdi



On Tue, Apr 7, 2020 at 4:36 AM Richard Barton <Richard.Barton at arm.com<mailto:Richard.Barton at arm.com>> wrote:
Hi Medhi

Definitely not expected, the tests should all pass.

As well as what David asked, the verbose output from lit would be helpful for debugging too.

Thanks for giving it a try.
Rich

From: David Truby <David.Truby at arm.com<mailto:David.Truby at arm.com>>
Sent: 7 April, 2020 11:49
To: Richard Barton <Richard.Barton at arm.com<mailto:Richard.Barton at arm.com>>; Mehdi AMINI <joker.eph at gmail.com<mailto:joker.eph at gmail.com>>
Cc: llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org>
Subject: Re: [llvm-dev] F18 ready to be merged + preview of merge

Hi Mehdi,

I can't replicate those failures at my end, could you let me know what OS, compiler and CMake flags you're using so I can try and reproduce?

Thanks!
David Truby
________________________________
From: llvm-dev <llvm-dev-bounces at lists.llvm.org<mailto:llvm-dev-bounces at lists.llvm.org>> on behalf of Mehdi AMINI via llvm-dev <llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org>>
Sent: 07 April 2020 06:44
To: Richard Barton <Richard.Barton at arm.com<mailto:Richard.Barton at arm.com>>
Cc: llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org> <llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org>>
Subject: Re: [llvm-dev] F18 ready to be merged + preview of merge

Hi,

This sounds reasonable to me overall. There are some CMake issue to go through (I need to dig into it a bit).

When I run `ninja check-flang` at the moment (after fixing CMake) I end up with:

Testing Time: 16.22s
********************
Failing Tests (12):
    Flang :: Lower/pre-fir-tree04.f90
    Flang :: Semantics/allocate11.f90
    Flang :: Semantics/allocate13.f90
    Flang :: Semantics/c_f_pointer.f90
    Flang :: Semantics/call04.f90
    Flang :: Semantics/canondo16.f90
    Flang :: Semantics/coarrays01.f90
    Flang :: Semantics/critical02.f90
    Flang :: Semantics/doconcurrent01.f90
    Flang :: Semantics/dosemantics11.f90
    Flang :: Semantics/resolve50.f90
    Flang :: Semantics/resolve87.f90


Are these known issues?


--
Mehdi


On Mon, Apr 6, 2020 at 7:27 AM Richard Barton via llvm-dev <llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org>> wrote:
Hi llvm-dev

We believe we have completed enough of the agreed pre-upstreaming changes to start talking about merging F18 into LLVM. The live status is tracked at [1]. There are a few details that we have not managed to hammer out and we propose to tackle inside the LLVM monorepo. I have put a summary of these at the bottom of this mail.

Does anyone have any objections to flang being merged into LLVM with these issues still in-flight? Obviously we remain committed to solving them after merging into LLVM?

If that is all good then, as previously agreed, we want to give folks something more concrete to review and a bit of time to give feedback on it before we commit. David Truby has just now created a preview of what the LLVM project would look like with F18 merged in as flang. The obvious caveat is that both LLVM and F18 are continuing development so there will be additional commits on both sides of the real merge when it happens.

Here is the merge preview: https://github.com/DavidTruby/llvm-project/

This branch shows:
•         The commit history of F18 re-written as a straight line branch by Peter Waller's script.
•         A commit that tweaks F18's README to rename it as flang and make it more relevant inside the monorepo (being reviewed under https://github.com/flang-compiler/f18/pull/909).
•         The merge commit that adds F18 to the monorepo as flang
•         A patch to the monorepo cmake that adds flang as an optionally built target - see also https://reviews.llvm.org/D72416

I really encourage all folks maintaining buildbots or downstream builds to give this a look over to make sure it works for you. For everyone else, I hope this looks good to you too. All feedback very welcome.

If everyone is happy with that, we'll agree on a new date in the regular F18 community call on Monday. I'll be back in touch after that.

Thanks
Rich

Remaining Details still in-progress

[1] clang-format
F18's clang-format file will have a few differences to the global formatting style. These are mainly ones that control alignment of code. We have not come to an agreement as a community on the best way forward here. This flang-dev thread<http://lists.llvm.org/pipermail/flang-dev/2020-March/000243.html> summarises the debate. We would like to continue this debate after F18 becomes part of the monorepo.

[2] llvm_unreachable
Previously we stated that we would try to use llvm_unreachable in F18 whenever possible. Presently, F18 has a similar function called die, but this is used to cover multiple run-time error cases only some of which should be covered by llvm_unreachable. We would like to handle all cases together which also means coming up with a good system for reporting ICEs. See these code review comments<https://github.com/flang-compiler/f18/issues/966> for details. We propose to start fresh on this work after F18 becomes part of the monorepo.

[3] remove_if vs RemoveCarriageReturns
Whilst removing code that manipulated C-style strings we hit upon a case which seemed to show that std::remove_if was a regression on certain targets over the current algorithm using C standard memmove. This flang-dev thread<http://lists.llvm.org/pipermail/flang-dev/2020-April/000265.html> summarises the situation and we are gathering further data before deciding what to do. We propose to continue to investigate this and make any necessary changes after F18 becomes part of the monorepo.

[4] Doxygen infrastructure
We are still working through the final comments on this patch<https://github.com/flang-compiler/f18/pull/1065> and hope to have it merged before we become part of LLVM. As this patch simply adds the infrastructure to add doxygen comments and there are no doxygen comments in F18 source at present, we think that this should not block F18's inclusion in the monorepo. We commit to finishing this off once F18 becomes part of the monorepo.

Created with Microsoft OneNote 2016.

_______________________________________________
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
________________________________
This email message is for the sole use of the intended recipient(s) and may contain confidential information.  Any unauthorized review, use, disclosure or distribution is prohibited.  If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message.
________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200408/7c575e90/attachment-0001.html>


More information about the llvm-dev mailing list