mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
runtime: move a few atomic fields up
Moving them up makes them properly aligned on 32-bit systems. There are some odd fields above them right now (like fixalloc and mutex maybe). Change-Id: I57851a5bbb2e7cc339712f004f99bb6c0cce0ca5 Reviewed-on: https://go-review.googlesource.com/9889 Reviewed-by: Austin Clements <austin@google.com>
This commit is contained in:
parent
fc595b78d2
commit
363fd1dd1b
1 changed files with 9 additions and 9 deletions
|
|
@ -28,6 +28,15 @@ type mheap struct {
|
||||||
spans **mspan
|
spans **mspan
|
||||||
spans_mapped uintptr
|
spans_mapped uintptr
|
||||||
|
|
||||||
|
// Proportional sweep
|
||||||
|
pagesSwept uint64 // pages swept this cycle; updated atomically
|
||||||
|
sweepPagesPerByte float64 // proportional sweep ratio; written with lock, read without
|
||||||
|
|
||||||
|
// Malloc stats.
|
||||||
|
largefree uint64 // bytes freed for large objects (>maxsmallsize)
|
||||||
|
nlargefree uint64 // number of frees for large objects (>maxsmallsize)
|
||||||
|
nsmallfree [_NumSizeClasses]uint64 // number of frees for small objects (<=maxsmallsize)
|
||||||
|
|
||||||
// range of addresses we might see in the heap
|
// range of addresses we might see in the heap
|
||||||
bitmap uintptr
|
bitmap uintptr
|
||||||
bitmap_mapped uintptr
|
bitmap_mapped uintptr
|
||||||
|
|
@ -50,15 +59,6 @@ type mheap struct {
|
||||||
specialfinalizeralloc fixalloc // allocator for specialfinalizer*
|
specialfinalizeralloc fixalloc // allocator for specialfinalizer*
|
||||||
specialprofilealloc fixalloc // allocator for specialprofile*
|
specialprofilealloc fixalloc // allocator for specialprofile*
|
||||||
speciallock mutex // lock for sepcial record allocators.
|
speciallock mutex // lock for sepcial record allocators.
|
||||||
|
|
||||||
// Proportional sweep
|
|
||||||
pagesSwept uint64 // pages swept this cycle; updated atomically
|
|
||||||
sweepPagesPerByte float64 // proportional sweep ratio; written with lock, read without
|
|
||||||
|
|
||||||
// Malloc stats.
|
|
||||||
largefree uint64 // bytes freed for large objects (>maxsmallsize)
|
|
||||||
nlargefree uint64 // number of frees for large objects (>maxsmallsize)
|
|
||||||
nsmallfree [_NumSizeClasses]uint64 // number of frees for small objects (<=maxsmallsize)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var mheap_ mheap
|
var mheap_ mheap
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue