[flang-dev] Flang Biweekly Sync - Notes from the February 19th, 2020 call

Gary Klimowicz via flang-dev flang-dev at lists.llvm.org
Mon Feb 24 07:29:27 PST 2020


Flang team,

Here are the notes from the February 19th, 2020 Flang biweekly call.

The next Flang Technical Community call is scheduled for Monday, February 24th, 8:30 AM Pacific Time. We will probably continue discussions about the status of the flang upload to the LLVM monorepo. Craig Rasmussen will also give a brief overview of the source transformation work that they are doing, and solicit feedback on that.

The next Flang biweekly call will be Wednesday, March 2nd, 2020 at 8:30 AM Pacific Time.

Logistics information for these calls is at the end of this email.

Thank you.

Gary Klimowicz


Agenda

  *   ECP Annual Meeting Feb 3-7
  *   Euro LLVM April 6-7, Paris, France
  *   Continue discussing merging process and status
  *   F18 development update
  *   Flang development update


Highlights


  *   ECP Annual Meeting February 3-7, 2020, Houston Texas
     *   The Compiler Will Help You! The LLVM Compiler Infrastructure in ECP, Thursday Feb 6, 2020, 1:30 PM - 3:00 PM
     *   A Flang poster (Alexis Perry-Holby and Flang team) was presented.
     *   There was an informal Flang side meeting right after Thursday's LLVM breakout session.


  *   Euro LLVM
     *   Let us know about the talks and meetings and we will publicize them here.
     *   See the details below for the list of talks.


  *   Flang Community Technical Biweekly Call
     *   The next call is scheduled for Monday, February 24th.
     *   Status update on the process for uploading Flang to the LLVM monorepo.
     *   Using flang in a source-to-source rewriting scheme (Craig Rasmussen and Kate Rasmussen)


  *   New Flang update
     *   We continue to work through expectations and issues regarding Flang’s readiness to be pulled into the LLVM monorepo. This was the bulk of the topic of today’s call.
     *   Arm is looking at how to handle line endings with the LLVM file I/O library.
     *   We are working through more feedback on changes from clang-format settings.
     *   Porting of test suite is almost done.
     *   Other requests include things like greater use of LLVM data structures. Several suggestions are being incorporated into flang. It looks like std::list will continue to be used in the parser for now.
     *   See the detailed notes below for other Flang development updates.


  *   Original Flang Dev news and updates
     *   We will be providing access for additional committers to the project. There was discussion today around this process. Arm has submitted a list of additional committers for current Flang.
     *   Each team will continue to test their proposed changes internally using their internal test infrastructure.
     *   This should help with the queue of pull requests that are outstanding for Flang.
     *   NVIDIA will continue to push fixes for GitHub issues to flang.


Where we can use your help

  *   Topics for the biweekly calls and technical community calls.
  *   Let us know if you have presentations or meetings relevant to the Flang community. We will publicize these in these notes.


Details (Updates below are in bold)


  1.  Flang on GitHub
·         There have been 1,676 total commits (no change since the previous update).
·         There are 517 people who have “starred” the flang repo and 73 forks.
·         223 people are following f18 in 45 forks. There have been 3,002 commits.


  1.  Flang Community Technical Call

  *   The next call is scheduled for February 24th, 8:30 AM PT.
     *   LLVM transition (continuation of discussions about uploading flang to the GitHub monorepo)
     *   Using flang in a source-to-source rewriting scheme (Craig Rasmussen and Kate Rasmussen). They have been looking at flang for Fortran source-to-source translation. This is in conjunction with the work to do semantic analysis and support of coarrays. Craig and Kate will present an overview of this work, ask questions, and solicit feedback.
  *   Future Topics and tentative dates:
     *   Potential topics for future calls include build times for the compiler and status updates on MLIR.


  1.  Flang community

  *   Website: www.flang-compiler.org<http://www.flang-compiler.org> redirects to http://github.com/flang-compiler/flang.
  *   Wiki: https://github.com/flang-compiler/flang/wiki is the Flang wiki page where the most up-to-date build instructions and news can be found.
  *   Issues: Bug reports for current Flang can be reported to https://github.com/flang-compiler/flang/issues.
  *   LLVM mailing lists: There are now two mailing lists hosted by llvm.org:
     *   The flang-dev mailing list has been set up. Subscribe at https://lists.llvm.org/cgi-bin/mailman/listinfo/flang-dev. These biweekly notes are now sent to this email list.
     *   The flang-commits mailing list has been set up. Subscribe at https://lists.llvm.org/cgi-bin/mailman/listinfo/flang-commits.
  *   Slack: flang-compiler.slack.com is used for informal real-time communication in the Flang community. Add yourself via the invite <https://join.slack.com/t/flang-compiler/shared_invite/enQtMjExOTEyMzQ3MjIxLTZkMDNlODc2YjgxZDY1NTQ2YWJiZWVhOGU2YWY0NDNiOWY0ZjQzNjYyZTNlZjBlNjgxY2U1ZjFjMmY5NzIwMzA> link.
  *   Euro LLVM April 6-7, 2020 in Paris, France.
     *   OpenACC MLIR dialect for Flang and maybe more – Valentin Clement (Oak Ridge National Laboratory), Jeffrey S. Vetter (Oak Ridge National Laboratory)
        *   http://www.llvm.org/devmtg/2020-04/talks.html#LightningTalk_9
     *   OpenMP (Target Offloading) in LLVM [Panel/BoF] — Johannes Doerfert (ANL)
        *   https://www.llvm.org/devmtg/2020-04/talks.html#Panel_82
     *   OpenMP codegen in Flang using MLIR – Kiran Chandramohan (Arm Ltd)
        *   https://www.llvm.org/devmtg/2020-04/talks.html#Poster_77
     *   Flang Update – Steve Scalpone (NVIDIA / Flang)
        *   https://www.llvm.org/devmtg/2020-04/talks.html#LightningTalk_35
     *   Flang roundtable (to be scheduled)



  1.  What we’re up to with new LLVM Flang Fortran 2018 compiler

  *   On GitHub: The source code f18 is available on flang-compiler.github.com/f18<https://github.com/flang-compiler/f18/>. It’s recommended to start in the “documentation” directory.
  *   Status: We continue development on the new Fortran 2018 front-end. Recent work includes:

     *   We continue to follow the MLIR project updates for FIR.
     *   Porting of test suite is almost done. Many tests in preprocessor that don't run (compile to an image and run the image; since we don't lower yet, these don't work). We would prefer to run with -E and check results with FileCheck (presumably). Only other tests in the old structure are C++ runtime library. Maybe we should port our tests to gtest. Patch from Arm should be available in next few days.
     *   Continued work on FIR/MLIR and the lowering bridge. We continue to refine the commits into about a dozen changes to merge into f18.
     *   Worked on I/O runtime library. Output side is coded (except for NAMELIST, EX & DT editing, and UTF-8 encodings), reviewed, documented, and merged. Input side is in progress; INQUIRE and file positioning statements remain. A little testing has been done for sanity. The code is thread-safe, does not require linking with a C++ runtime library binary.
     *   Continued work on lowering control flow operations to FIR. Conversion of IF constructs, CYCLE, EXIT. Some progress on DO.
     *   Continued work on OpenMP; PR#976<https://github.com/flang-compiler/f18/pull/976> for predetermined rules for associated loop index variables.
     *   Continuing work on Clause 7 (types) semantic checks.
     *   Turned on semantic analysis by default.


  *   LLVM Project:

     *   The flang-dev email list has been set up on llvm.org. You can subscribe here: https://lists.llvm.org/cgi-bin/mailman/listinfo/flang-dev.
     *   The flang-commits email list has also been set up. There is no content yet, as we haven’t migrated to the LLVM monorepo.
     *   Continuing work on preparing flang for migration to the LLVM monorepo. We have renamed all .cc files to .cpp. We’ve incorporated a CMake change. David Truby has set up a project area for the work to do at https://github.com/orgs/flang-compiler/projects/8.
     *


  1.  What we’re up to with current Flang

     *   We are in the process of incorporating changes to support LLVM 9.0.
     *   We will be opening up Flang to more committers soon. We would like to get the license changes into Flang before adding committers.
     *   We have decoupled PGI and Flang development to shorten turnaround on pull requests and other development activity.
     *   Recent fixes pushed to Flang
        *   None


     *   Upcoming changes to Flang (in review, pending migration to Flang):
        *   #787<https://github.com/flang-compiler/flang/issues/787> ICE with array operations inside NORM2
        *   #825<https://github.com/flang-compiler/flang/issues/825> Defect #2 in recent polymorphic assignment feature
        *   #826<https://github.com/flang-compiler/flang/issues/826> Defect #3 in recent polymorphic assignment feature (fixed with #825)
        *   #827<https://github.com/flang-compiler/flang/issues/827> Defect #4 in recent polymorphic assignment feature
        *   #829<https://github.com/flang-compiler/flang/issues/829> Defect #5 in recent polymorphic assignment feature (fixed with #827)
        *   #830<https://github.com/flang-compiler/flang/issues/830> Defect #6 in recent polymorphic assignment feature
        *   #832<https://github.com/flang-compiler/flang/issues/832> Defect #8 in recent polymorphic assignment feature (fixed with #826)
        *   #842<https://github.com/flang-compiler/flang/issues/842> Loop in OMP DO statement not executed with dynamic scheduling


     *   Assigned for work:
        *   #664<https://github.com/flang-compiler/flang/issues/664> bind & save for variable (triaging)
        *   #667<https://github.com/flang-compiler/flang/issues/667> bind & shared library behavior bug (investigating a fix)
        *   #822<https://github.com/flang-compiler/flang/issues/822> Recent Arm ABI changes leads to compilation error (investigating)


  *   Outstanding pull requests:

  *   See https://github.com/flang-compiler/flang/pulls for the current list of pull requests.


  *   Public plan: NVIDIA has published a brief plan for upcoming Flang work on github.io at https://github.com/flang-compiler/flang/wiki/Roadmap. This reflects current Flang and F18 priorities and to provide better context for the project and its long-term goals.


  *   Creating pull requests: Contributor license agreements are no longer be required for the current flang compiler. We are defining the process by which pull requests are validated and reviewed before merging into Flang.


  *   OpenMP 4.5 support:
o    No update



  *   Outstanding issues:

     *   Please refer to the Issues section on GitHub for flang-compiler/flang<https://github.com/flang-compiler/flang/issues> and flang-compiler/flang-driver<https://github.com/flang-compiler/clang/issues>.


  *   Debug Metadata:
     *   LLVM Debug metadata changes posted to LLVM Phabricator for review; responding to review comments. The last remaining pull request can be found at https://reviews.llvm.org/D54114 [CHARACTER intrinsic data type]. Review for this is not complete, and we would like to get additional comments or alternate proposals.


  *   Packaging and Binary Releases:

  *   Binary release: We post binary releases at least quarterly. March binary releases of Flang for x86-64 and OpenPOWER (LLVM 7.0) have been posted to http://github.com/flang-compiler/flang/releases.
  *   Spack: Spack packages for Flang have been reviewed by the Spack team and pulled into Spack for flang_20180921. We are still working through issues with defining the spack package for flang. Brian Homerding and Nichols Romero are working on Spack changes for the LLVM and Flang for the LLVM Git monorepo.


  *   Testing updates:

  *   No update.


  *   Application updates:
     *   No update.



  1.  Fortran 2008 features

  *   Pointer default initialization. Work continues. Support for procedure pointer default initialization in modules and submodules has been pushed to Flang. We plan to work on scalar pointer initialization next.

The following items are considered complete. Please report GitHub issues if you identify any problems.

  *   EXECUTE_COMMAND_LINE intrinsic.
  *   BLOCK construct.
  *   Allocation of polymorphic variables.
  *   G0 edit descriptor
  *   NORM2 intrinsic
  *   ERROR STOP
  *   Pointers to internal procedures
  *   SUBMODULE
  *   Serial implementation of F2018 DO CONCURRENT
  *   BACK optional argument support for MINLOC/MAXLOC



  1.  Call Logistics
Flang Community Biweekly Call

     *   General updates on the Flang project, both LLVM Flang and current Flang.
     *   Biweekly WebEx hosted by NVIDIA (which these notes cover).
     *   The meeting link for this biweekly call is https://nvmeet.webex.com/nvmeet/j.php?MTID=mb4edb8c799f69ec2dc0554acc969a162.

Flang Community Technical Biweekly Call

     *   Technical topics call.
     *   Hal Finkel hosts this call on Bluejeans<https://bluejeans.com/625064848>, Mondays 8:30 Pacific Time, on the weeks alternating with regular Flang biweekly call. The notes for all these calls can be found in Google Docs here<https://docs.google.com/document/d/1Z2U5UAtJ-Dag5wlMaLaW1KRmNgENNAYynJqLW2j2AZQ/>.
Meeting URL: https://bluejeans.com/625064848?src=join_info
Meeting ID: 625 064 848
Want to dial in from a phone? Dial one of the following numbers:
+1.408.317.9254 (US (San Jose))
+1.866.226.4650 (US Toll Free)
(see all numbers - https://www.bluejeans.com/premium-numbers)
Enter the meeting ID and passcode followed by #
Connecting from a room system?
Dial: bjn.vc or 199.48.152.152 and enter your meeting ID & passcode


-----------------------------------------------------------------------------------
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/flang-dev/attachments/20200224/1835841e/attachment-0001.html>


More information about the flang-dev mailing list