From: Ian Lance Taylor Date: Mon, 7 Feb 2022 03:33:03 +0000 (-0800) Subject: runtime: don't assume that 0.25 * 100 is representable as int X-Git-Tag: go1.18rc1~85 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=8f374aa27f887d78ef709115c140fd5862691df0;p=gostls13.git runtime: don't assume that 0.25 * 100 is representable as int For the gofrontend, it's not; there are some trailing one bits, which is permitted by the spec. Change-Id: I58f5a5347068bb488306ec8e73da7c59376f1ae1 Reviewed-on: https://go-review.googlesource.com/c/go/+/383635 Trust: Ian Lance Taylor Run-TryBot: Ian Lance Taylor TryBot-Result: Gopher Robot Reviewed-by: Michael Knyszek --- diff --git a/src/runtime/mgcpacer.go b/src/runtime/mgcpacer.go index 6df8af45a8..f06560201a 100644 --- a/src/runtime/mgcpacer.go +++ b/src/runtime/mgcpacer.go @@ -677,7 +677,8 @@ func (c *gcControllerState) endCycle(now int64, procs int, userForced bool) floa if debug.gcpacertrace > 0 { printlock() - print("pacer: ", int(utilization*100), "% CPU (", int(gcGoalUtilization*100), " exp.) for ") + goal := gcGoalUtilization * 100 + print("pacer: ", int(utilization*100), "% CPU (", int(goal), " exp.) for ") print(c.heapScanWork.Load(), "+", c.stackScanWork.Load(), "+", c.globalsScanWork.Load(), " B work (", c.lastHeapScan+c.stackScan+c.globalsScan, " B exp.) ") print("in ", c.trigger, " B -> ", c.heapLive, " B (∆goal ", int64(c.heapLive)-int64(c.heapGoal), ", cons/mark ", oldConsMark, ")") println()