runtime: unify GC interface

Make sure every to-be-implemented GC can use the same interface. As a
result, a 1MB chunk of RAM is allocated on Unix systems on init instead
of allocating on demand.
This commit is contained in:
Ayke van Laethem
2018-11-17 14:11:58 +01:00
parent 4fdffdf8b2
commit 15a4afb22a
9 changed files with 37 additions and 47 deletions
+8 -1
View File
@@ -12,4 +12,11 @@ const GOARCH = "arm"
const TargetBits = 32
//go:extern _heap_start
var heapStart unsafe.Pointer
var heapStartSymbol unsafe.Pointer
var heapStart = uintptr(unsafe.Pointer(&heapStartSymbol))
// Align on word boundary.
func align(ptr uintptr) uintptr {
return (ptr + 3) &^ 3
}