]> Cypherpunks repositories - gostls13.git/commit
runtime: eliminate most uses of mheap_.arena_*
authorAustin Clements <austin@google.com>
Tue, 19 Dec 2017 04:35:34 +0000 (20:35 -0800)
committerAustin Clements <austin@google.com>
Thu, 15 Feb 2018 21:12:22 +0000 (21:12 +0000)
commit45ffeab549fa4b03b231a0872025364e13c7f7f0
tree540a0326b7838f62c26fd1ce10b8116ecda5f8af
parentd6e821858157b7cb4ece22fcc1a5c8604478ebaa
runtime: eliminate most uses of mheap_.arena_*

This replaces all uses of the mheap_.arena_* fields outside of
mallocinit and sysAlloc. These fields fundamentally assume a
contiguous heap between two bounds, so eliminating these is necessary
for a sparse heap.

Many of these are replaced with checks for non-nil spans at the test
address (which in turn checks for a non-nil entry in the heap arena
array). Some of them are just for debugging and somewhat meaningless
with a sparse heap, so those we just delete.

Updates #10460.

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