This is an archive of the discontinued LLVM Phabricator instance.

[flang][fir] Add array value operations.
ClosedPublic

Authored by schweitz on Feb 24 2021, 3:56 PM.

Details

Summary

We lower expressions with rank > 0 to a set of high-level array operations.
These operations are then analyzed and refined to more primitve
operations in subsequent pass(es).

This patch upstreams these array operations and some other helper ops.

Authors: Eric Schweitz, Rajan Walia, Kiran Chandramohan, et.al.

Diff Detail

Event Timeline

schweitz created this revision.Feb 24 2021, 3:56 PM
schweitz requested review of this revision.Feb 24 2021, 3:56 PM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 24 2021, 3:56 PM
jeanPerier accepted this revision.Feb 25 2021, 12:13 PM

Looks good to me.

This revision is now accepted and ready to land.Feb 25 2021, 12:13 PM
mehdi_amini added inline comments.Feb 25 2021, 1:33 PM
flang/lib/Optimizer/Dialect/FIROps.cpp
129

The ODS definition specifies the operand as AnyRefOrBox, I'd think that should be enough to have a constraint already enforced. Do you have a test which would show this line reachable?

schweitz added inline comments.Feb 25 2021, 7:15 PM
flang/lib/Optimizer/Dialect/FIROps.cpp
129

Removed. Thanks.

This revision was landed with ongoing or failed builds.Feb 25 2021, 7:17 PM
This revision was automatically updated to reflect the committed changes.