//go:noescape
func atomicloaduint(ptr *uint) uint
+// TODO: Write native implementations of int64 atomic ops (or improve
+// inliner). These portable ones can't be inlined right now, so we're
+// taking an extra function call hit.
+
+func atomicstoreint64(ptr *int64, new int64) {
+ atomicstore64((*uint64)(unsafe.Pointer(ptr)), uint64(new))
+}
+
+func atomicloadint64(ptr *int64) int64 {
+ return int64(atomicload64((*uint64)(unsafe.Pointer(ptr))))
+}
+
+func xaddint64(ptr *int64, delta int64) int64 {
+ return int64(xadd64((*uint64)(unsafe.Pointer(ptr)), delta))
+}
+
//go:noescape
func setcallerpc(argp unsafe.Pointer, pc uintptr)