diff options
author | Michael Anthony Knyszek <mknyszek@google.com> | 2021-10-21 21:19:23 +0000 |
---|---|---|
committer | Michael Knyszek <mknyszek@google.com> | 2021-11-05 22:56:55 +0000 |
commit | 2f71c86370a2c3bf2827e8d9f9080d9bf92a5317 (patch) | |
tree | 89cbac3a1a7fe1e3dcf4f1c996bffa30a36157bd /src/runtime/mgc.go | |
parent | e83a2047e0332e45c20fb1bcdb984e9cc74ffb1f (diff) | |
download | go-2f71c86370a2c3bf2827e8d9f9080d9bf92a5317.tar.gz go-2f71c86370a2c3bf2827e8d9f9080d9bf92a5317.zip |
runtime: retype gcControllerState.gcPercent as atomic.Int32
[git-generate]
cd src/runtime
mv export_test.go export.go
GOROOT=$(dirname $(dirname $PWD)) rf '
add gcControllerState.gcPercent \
// Initialized from GOGC. GOGC=off means no GC. \
gcPercent_ atomic.Int32
ex {
import "runtime/internal/atomic"
var t gcControllerState
var v, w int32
var d int32
t.gcPercent -> t.gcPercent_.Load()
t.gcPercent = v -> t.gcPercent_.Store(v)
atomic.Loadint32(&t.gcPercent) -> t.gcPercent_.Load()
atomic.Storeint32(&t.gcPercent, v) -> t.gcPercent_.Store(v)
atomic.Xaddint32(&t.gcPercent, d) -> t.gcPercent_.Add(d)
atomic.Casint32(&t.gcPercent, v, w) -> t.gcPercent_.CompareAndSwap(v, w)
atomic.Xchgint32(&t.gcPercent, v) -> t.gcPercent_.Swap(v)
}
rm gcControllerState.gcPercent
mv gcControllerState.gcPercent_ gcControllerState.gcPercent
'
mv export.go export_test.go
Change-Id: I1aae34a3f782d096c6b6233bbf7986e67ce9c5f9
Reviewed-on: https://go-review.googlesource.com/c/go/+/357794
Trust: Michael Knyszek <mknyszek@google.com>
Reviewed-by: Michael Pratt <mpratt@google.com>
Diffstat (limited to 'src/runtime/mgc.go')
-rw-r--r-- | src/runtime/mgc.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/runtime/mgc.go b/src/runtime/mgc.go index 96f4157b59..d75893dc43 100644 --- a/src/runtime/mgc.go +++ b/src/runtime/mgc.go @@ -545,7 +545,7 @@ func (t gcTrigger) test() bool { // own write. return gcController.heapLive >= gcController.trigger case gcTriggerTime: - if atomic.Loadint32(&gcController.gcPercent) < 0 { + if gcController.gcPercent.Load() < 0 { return false } lastgc := int64(atomic.Load64(&memstats.last_gc_nanotime)) |