Change-Id: I08fa2940cd3565c578b1b323656a4fa12e0c65bb
GitHub-Last-Rev:
1f673b190ee62fe8158c9e70acf6b0882f6b3f6e
GitHub-Pull-Request: golang/go#73322
Reviewed-on: https://go-review.googlesource.com/c/go/+/664675
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
size += ptrSize - d
}
// Clip to the 64 words that we track.
- min := off
- max := off + size
- if min < 0 {
- min = 0
- }
- if max > 64*ptrSize {
- max = 64 * ptrSize
- }
+ minimum := max(off, 0)
+ maximum := min(off+size, 64*ptrSize)
+
// Clear bits for parts that we are writing (and hence
// will no longer necessarily be zero).
- for i := min; i < max; i += ptrSize {
+ for i := minimum; i < maximum; i += ptrSize {
bit := i / ptrSize
z.mask &^= 1 << uint(bit)
}