]> Cypherpunks repositories - gostls13.git/commit
[dev.garbage] runtime: mark/allocation helper functions
authorRick Hudson <rlh@golang.org>
Tue, 9 Feb 2016 14:38:44 +0000 (09:38 -0500)
committerRick Hudson <rlh@golang.org>
Wed, 27 Apr 2016 21:54:44 +0000 (21:54 +0000)
commitdc65a82eff0a3af5a26f6c6d31c53bdac9b31168
treeb88bf861d559a33371cfb02fbd425860633056e5
parente1c4e9a754833e169a41ea98a49c3712513879ab
[dev.garbage] runtime: mark/allocation helper functions

The gcmarkBits is a bit vector used by the GC to mark
reachable objects. Once a GC cycle is complete the gcmarkBits
swap places with the allocBits. allocBits is then used directly
by malloc to locate free objects, thus avoiding the
construction of a linked free list. This CL introduces a set
of helper functions for manipulating gcmarkBits and allocBits
that will be used by later CLs to realize the actual
algorithm. Minimal attempts have been made to optimize these
helper routines.

Change-Id: I55ad6240ca32cd456e8ed4973c6970b3b882dd34
Reviewed-on: https://go-review.googlesource.com/19420
Reviewed-by: Austin Clements <austin@google.com>
Run-TryBot: Rick Hudson <rlh@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
src/runtime/malloc.go
src/runtime/mbitmap.go
src/runtime/mcentral.go