This is an archive of the discontinued LLVM Phabricator instance.

[flang][openacc] Lower data clause on compute construct to data operand ops
ClosedPublic

Authored by clementval on May 3 2023, 2:09 PM.

Details

Summary

This patch lowers the data clause on the OpenACC compute construct
to their corresponding acc data operand operation.
The decomposition is the same as in D149673.

Note that private and firstprivate are not lowered to data operand operation as they do not have one and will likely have dedicated design/process.

Depends on D149673

Diff Detail

Event Timeline

clementval created this revision.May 3 2023, 2:09 PM
Herald added projects: Restricted Project, Restricted Project. · View Herald TranscriptMay 3 2023, 2:09 PM
clementval requested review of this revision.May 3 2023, 2:09 PM
razvanlupusoru accepted this revision.May 3 2023, 9:53 PM

Looks pretty great. Only issue I found is incorrect dataClause for create(zero:).

flang/test/Lower/OpenACC/acc-kernels-loop.f90
353

Should be dataClause = 5

flang/test/Lower/OpenACC/acc-kernels.f90
216

Should be dataClause = 5

This revision is now accepted and ready to land.May 3 2023, 9:53 PM
clementval updated this revision to Diff 519526.May 4 2023, 9:24 AM

Fix the dataclause for copyout(zero:)