This is an archive of the discontinued LLVM Phabricator instance.

[flang] Lower procedure ref to user defined elemental procedures (part 1)
ClosedPublic

Authored by jeanPerier on Dec 15 2022, 10:11 AM.

Details

Summary

Lower procedure ref to user defined elemental procedure when:

  • there are no arguments that may be dynamically optional
  • for functions, the result has no length parameters
  • the reference can be unordered
  • there are not character by value arguments

This uses the recently added hlfir.elemental operation and tools.
The "core" of the argument preparation is shared between elemental
and non elemental calls (genUserCalls is code moved without any
functional changes)

Depends on D140099

Diff Detail

Event Timeline

jeanPerier created this revision.Dec 15 2022, 10:11 AM
Herald added a project: Restricted Project. · View Herald TranscriptDec 15 2022, 10:11 AM
jeanPerier requested review of this revision.Dec 15 2022, 10:11 AM

All builds and tests correctly and looks good. But Valentin should take a look and approve.

This revision is now accepted and ready to land.Dec 16 2022, 12:49 AM