summaryrefslogtreecommitdiffstats
path: root/src/runtime/mem_wasm.go
blob: d9d32705bb6a068cef4d93ea5658f4c1f9955c79 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Copyright 2023 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

package runtime

import "unsafe"

func sbrk(n uintptr) unsafe.Pointer {
	grow := divRoundUp(n, physPageSize)
	size := growMemory(int32(grow))
	if size < 0 {
		return nil
	}
	resetMemoryDataView()
	return unsafe.Pointer(uintptr(size) * physPageSize)
}

// Implemented in src/runtime/sys_wasm.s
func growMemory(pages int32) int32