github.com/tinygo-org/tinygo@v0.31.3-0.20240404173401-90b0bf646c27/src/runtime/arch_amd64.go (about) 1 package runtime 2 3 const GOARCH = "amd64" 4 5 // The bitness of the CPU (e.g. 8, 32, 64). 6 const TargetBits = 64 7 8 const deferExtraRegs = 0 9 10 const callInstSize = 5 // "call someFunction" is 5 bytes 11 12 // Align a pointer. 13 // Note that some amd64 instructions (like movaps) expect 16-byte aligned 14 // memory, thus the result must be 16-byte aligned. 15 func align(ptr uintptr) uintptr { 16 return (ptr + 15) &^ 15 17 } 18 19 func getCurrentStackPointer() uintptr { 20 return uintptr(stacksave()) 21 }