This is an archive of the discontinued LLVM Phabricator instance.

[OPENMP][NVPTX]Fix critical region codegen.
ClosedPublic

Authored by ABataev on Aug 23 2019, 12:12 PM.

Details

Summary

Previously critical regions were emitted with the barrier making it a
worksharing construct though it is not. Also, it leads to incorrect
behavior in Cuda9+. Patch fixes this problem.

Diff Detail

Repository
rL LLVM

Event Timeline

ABataev created this revision.Aug 23 2019, 12:12 PM

I guess IR test should be affected already and it would be good to have the run time test that breaks with barriers.

ABataev updated this revision to Diff 216934.Aug 23 2019, 1:19 PM

Fix the test

I guess IR test should be affected already and it would be good to have the run time test that breaks with barriers.

Runtime test is libomptarget/deviceRTLs/nvptx/test/parallel/spmd_parallel_regions.cpp

This revision is now accepted and ready to land.Aug 26 2019, 8:29 AM
This revision was automatically updated to reflect the committed changes.
Herald added a project: Restricted Project. · View Herald TranscriptAug 26 2019, 12:06 PM