[Openmp-commits] [PATCH] D73076: [libomptarget] Implement hip atomic functions in terms of intrinsics
Jon Chesterfield via Phabricator via Openmp-commits
openmp-commits at lists.llvm.org
Mon Jan 20 18:07:14 PST 2020
JonChesterfield created this revision.
JonChesterfield added reviewers: jdoerfert, ABataev, hfinkel, grokos.
Herald added subscribers: openmp-commits, jfb, mgorny, jvesely.
Herald added a project: OpenMP.
[libomptarget] Implement hip atomic functions in terms of intrinsics
All but atomicInc can be implemented using type generic clang intrinsics.
There is not yet a corresponding intrinsic for atomicInc in clang, only one in
LLVM. This proposal uses an IR source file to fill in that gap as a temporary
measure.
The function takes address space, ordering, scope, volatile. Each carefully
chosen to correspond to the other atomics in use, but using magic numbers as
we can't #include the corresponding C++ header. This argues that the clang
intrinsic is the better solution.
Also happy to leave atomicInc as an unresolved symbol for now.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D73076
Files:
openmp/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt
openmp/libomptarget/deviceRTLs/amdgcn/src/atomic_inc.ll
openmp/libomptarget/deviceRTLs/amdgcn/src/hip_atomics.h
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D73076.239220.patch
Type: text/x-patch
Size: 4530 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20200121/a7f3a933/attachment.bin>
More information about the Openmp-commits
mailing list