This is an archive of the discontinued LLVM Phabricator instance.

[OpenMP] Add tests on task in_reduction and depend clause
ClosedPublic

Authored by animeshk-amd on Mar 23 2023, 3:00 AM.

Details

Summary

The working of depend clause can be correctly tested by
means of execution tests and not at the LLVM IR level.
The in_reduction clause wasn't being tested with task
construct in the context of a target region. These tests
are imported/inspired from the SOLLVE tests.

SOLLVE repo: https://github.com/SOLLVE/sollve_vv

Diff Detail

Event Timeline

animeshk-amd created this revision.Mar 23 2023, 3:00 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 23 2023, 3:00 AM
animeshk-amd requested review of this revision.Mar 23 2023, 3:00 AM
Herald added a project: Restricted Project. · View Herald Transcript
JonChesterfield accepted this revision.Mar 23 2023, 3:57 AM

More tests, great! Do you know how the first one fails on amdgpu?

This revision is now accepted and ready to land.Mar 23 2023, 3:57 AM

More tests, great! Do you know how the first one fails on amdgpu?

Thanks. The target_task_reductions.c fails on the amdgcn-amd-amdhsa with the following error:
ld.lld: error: undefined symbol: __kmpc_taskred_modifier_init

Do we support in reduction yet?

Do we support in reduction yet?

Right. I believed it's supported on nvptx and not on amdgpu. It turns out it's supported on neither. Please help me decide what should I do?

  1. Delete the added test target_task_reductions.c.
  2. Keep the test but add nvptx target as well in the list of UNSUPPORTED.

Rebase the patch and delete the target_task_reductions.c because
this test is not worth testing. It is neither supported on nvptx
nor on amdgpu. I had originally assumed that such a test should be
relevant because it exists in SOLLVE suite.

This revision was automatically updated to reflect the committed changes.