On Monday, 1 February 2021 at 06:38:16 UTC, Basile B. wrote:
On Monday, 1 February 2021 at 06:12:59 UTC, vitamin wrote:
On Monday, 1 February 2021 at 05:23:52 UTC, rikki cattermole wrote:
The only difference between dmd, ldc and gdc (in effect) is the backend. While druntime and Phobos will be patched for other platform targets, over all its the same library.

The same goes for core.atomic. You should not need to know that it has been patched. If you can call it and it gives you the right results, you can assume it worked.

Oh and $ dub build --compiler=ldc2

problem is when I build with ldc then id doesn't work and with dmd it does:

try compile this with ldc:
https://run.dlang.io/is/gngLFu

error on webite run.dlang.io is same as I have.

LDC has all LLVM intrinsics so try

---
import ldc.intrinsics;
ldc.intrinsics.llvm_atomic_rmw_add(...);
---

It look like atomicFetchAdd a atomicFetchSub was added to ldc 8 days ago and my distro has old version. I replace core.internal.atomic with this https://raw.githubusercontent.com/ldc-developers/druntime/ldc/src/core/internal/atomic.d and now everything works.

Reply via email to