[Openmp-commits] [openmp] [libomptarget][nextgen-plugin] Use SCRELEASE/SCACQUIRE in packet headers (PR #85678)
Joseph Huber via Openmp-commits
openmp-commits at lists.llvm.org
Tue Mar 19 12:39:55 PDT 2024
jhuber6 wrote:
> > It is, I should probably update it as well. I think I originally copied part of that from the old plugins somewhere.
>
> That's ok no problem, I can make it consistent.
```
diff --git a/libc/utils/gpu/loader/amdgpu/Loader.cpp b/libc/utils/gpu/loader/amdgpu/Loader.cpp
index e3911eda2bd8..7fd45acfd47e 100644
--- a/libc/utils/gpu/loader/amdgpu/Loader.cpp
+++ b/libc/utils/gpu/loader/amdgpu/Loader.cpp
@@ -276,7 +276,8 @@ hsa_status_t launch_kernel(hsa_agent_t dev_agent, hsa_executable_t executable,
(HSA_FENCE_SCOPE_SYSTEM << HSA_PACKET_HEADER_SCACQUIRE_FENCE_SCOPE) |
(HSA_FENCE_SCOPE_SYSTEM << HSA_PACKET_HEADER_SCRELEASE_FENCE_SCOPE);
uint32_t header_word = header | (setup << 16u);
- __atomic_store_n((uint32_t *)&packet->header, header_word, __ATOMIC_RELEASE);
+ __atomic_store_n(reinterpret_cast<uint32_t *>(packet), header_word,
+ __ATOMIC_RELEASE);
hsa_signal_store_relaxed(queue->doorbell_signal, packet_id);
// Wait until the kernel has completed execution on the device. Periodically
```
Is what I'd do.
https://github.com/llvm/llvm-project/pull/85678
More information about the Openmp-commits
mailing list