aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/runtime/arch_amd64.go
blob: 3bb03e3c71d13742cccb22b9c9dad3d5bdc23faa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package runtime

const GOARCH = "amd64"

// The bitness of the CPU (e.g. 8, 32, 64).
const TargetBits = 64

const deferExtraRegs = 0

const callInstSize = 5 // "call someFunction" is 5 bytes

const linux_MAP_ANONYMOUS = 0x20

// Align a pointer.
// Note that some amd64 instructions (like movaps) expect 16-byte aligned
// memory, thus the result must be 16-byte aligned.
func align(ptr uintptr) uintptr {
	return (ptr + 15) &^ 15
}

func getCurrentStackPointer() uintptr {
	return uintptr(stacksave())
}