func StoreUintptr(addr *uintptr, val uintptr) { runtime.RaceSemacquire(&mtx) runtime.RaceRead(unsafe.Pointer(addr)) *addr = val runtime.RaceRelease(unsafe.Pointer(addr)) runtime.RaceSemrelease(&mtx) }
func StorePointer(addr *unsafe.Pointer, val unsafe.Pointer) { _ = *addr runtime.RaceSemacquire(&mtx) runtime.RaceRead(unsafe.Pointer(addr)) *addr = val runtime.RaceRelease(unsafe.Pointer(addr)) runtime.RaceSemrelease(&mtx) }
func Release(addr unsafe.Pointer) { runtime.RaceRelease(addr) }
func StoreUint64(addr *uint64, val uint64) { runtime.RaceSemacquire(&mtx) *addr = val runtime.RaceRelease(unsafe.Pointer(addr)) runtime.RaceSemrelease(&mtx) }