We need to unify interface of atomic operations between runtime package and sync/atomic
package. And then teach gc to replace functions in both packages with intrinsics where
This is followup to https://golang.org/issue/4947 which was about
atomic intrinsics for runtime C code.
The text was updated successfully, but these errors were encountered:
They are for 1.8. We intrinsify both sync/atomic and runtime/internal/atomic for a bunch of architectures.
The APIs are not unified (e.g. LoadUint32 in sync/atomic is Load in runtime/internal/atomic).
We should probably leave this bug open for that unification. It shouldn't be hard.
@randall77, I've had a change to intrinsify atomics for ppc64x that worked fine a few months ago. When I tried to rebase it, now it hangs during the build. I've tracked it down to commit 8a9dc05 to allow inlining of functions with intrinsics in them. If I remove the code from that commit, then my change to intrinsify atomics works again.