- Sort Score
- Result 10 results
- Languages All
Results 1 - 3 of 3 for bulkBarrierPreWrite (0.38 sec)
-
src/runtime/mbarrier.go
return } if writeBarrier.enabled && typ.Pointers() { // This always copies a full value of type typ so it's safe // to pass typ along as an optimization. See the comment on // bulkBarrierPreWrite. bulkBarrierPreWrite(uintptr(dst), uintptr(src), typ.PtrBytes, typ) } // There's a race here: if some other goroutine can write to // src, it may change some pointer in src after we've
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 29 17:58:53 UTC 2024 - 15.7K bytes - Viewed (0) -
src/runtime/slice.go
// // It's safe to pass a type to this function as an optimization because // from and to only ever refer to memory representing whole values of // type et. See the comment on bulkBarrierPreWrite. bulkBarrierPreWriteSrcOnly(uintptr(to), uintptr(from), copymem, et) } } if raceenabled { callerpc := getcallerpc() pc := abi.FuncPCABIInternal(makeslicecopy)
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 29 16:25:21 UTC 2024 - 12.2K bytes - Viewed (0) -
src/runtime/chan.go
// happen when the goroutine is running and are only done by that // goroutine. Using a write barrier is sufficient to make up for // violating that assumption, but the write barrier has to work. // typedmemmove will call bulkBarrierPreWrite, but the target bytes // are not in the heap, so that will not help. We arrange to call // memmove and typeBitsBulkBarrier instead. func sendDirect(t *_type, sg *sudog, src unsafe.Pointer) {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu May 23 01:16:50 UTC 2024 - 25.9K bytes - Viewed (0)