This is an archive of the discontinued LLVM Phabricator instance.

[flang][hlfir] Enable WHERE scheduling in LowerHLFIROrderedAssignments
ClosedPublic

Authored by jeanPerier on May 15 2023, 8:26 AM.

Details

Summary

Nothing special is needed, other than adding the logging code for where
masks and to plug the pattern. This tests mainly adds test.

Note that some of the justifications to create temps shows some lacks of
side effect interface on operations (like hlfir.transpose), or on some
transparent llvm intrinsic calls (llvm.stacksave/restore).
I think we should as much as possible try to improve this on the ops
generate code rather than special casing it here.

Depends on D150564

Diff Detail

Event Timeline

jeanPerier created this revision.May 15 2023, 8:26 AM
jeanPerier requested review of this revision.May 15 2023, 8:26 AM
clementval accepted this revision.May 15 2023, 1:09 PM

LGTM

flang/test/HLFIR/order_assignments/where-scheduling.f90
16
This revision is now accepted and ready to land.May 15 2023, 1:09 PM
jeanPerier marked an inline comment as done.
  • Fix typo in test comment.
  • Rebase.
tblah accepted this revision.May 17 2023, 3:37 AM

LGTM

This revision was landed with ongoing or failed builds.May 22 2023, 3:50 AM
This revision was automatically updated to reflect the committed changes.