It was testing the mark bits on what roots pointed at,
but not the remainder of the live heap, because in
CL 2991 I accidentally inverted this check during
refactoring.
The next CL will turn it back off by default again,
but I want one run on the builders with the full
checkmark checks.
Change-Id: Ic166458cea25c0a56e5387fc527cb166ff2e5ada
Reviewed-on: https://go-review.googlesource.com/9824
Run-TryBot: Russ Cox <rsc@golang.org>
Reviewed-by: Rick Hudson <rlh@golang.org>
Reviewed-by: Austin Clements <austin@google.com>
throw("checkmark found unmarked object")
}
- if !hbits.isCheckmarked() {
+ if hbits.isCheckmarked() {
return
}
hbits.setCheckmarked()
}
func parsedebugvars() {
+ debug.gccheckmark=1
for p := gogetenv("GODEBUG"); p != ""; {
field := ""
i := index(p, ",")