Documentation

Overview

    package sys contains system- and configuration- and architecture-specific constants used by the runtime.

    Index

    Constants

    View Source
    const (
    	ArchFamily          = AMD64
    	BigEndian           = false
    	DefaultPhysPageSize = 4096
    	PCQuantum           = 1
    	Int64Align          = 8
    	MinFrameSize        = 0
    )
    View Source
    const GOARCH = `amd64`
    View Source
    const GOOS = `linux`
    View Source
    const Goarch386 = 0
    View Source
    const GoarchAmd64 = 1
    View Source
    const GoarchAmd64p32 = 0
    View Source
    const GoarchArm = 0
    View Source
    const GoarchArm64 = 0
    View Source
    const GoarchArm64be = 0
    View Source
    const GoarchArmbe = 0
    View Source
    const GoarchMips = 0
    View Source
    const GoarchMips64 = 0
    View Source
    const GoarchMips64le = 0
    View Source
    const GoarchMips64p32 = 0
    View Source
    const GoarchMips64p32le = 0
    View Source
    const GoarchMipsle = 0
    View Source
    const GoarchPpc = 0
    View Source
    const GoarchPpc64 = 0
    View Source
    const GoarchPpc64le = 0
    View Source
    const GoarchRiscv = 0
    View Source
    const GoarchRiscv64 = 0
    View Source
    const GoarchS390 = 0
    View Source
    const GoarchS390x = 0
    View Source
    const GoarchSparc = 0
    View Source
    const GoarchSparc64 = 0
    View Source
    const GoarchWasm = 0
    View Source
    const GoosAix = 0
    View Source
    const GoosAndroid = 0
    View Source
    const GoosDarwin = 0
    View Source
    const GoosDragonfly = 0
    View Source
    const GoosFreebsd = 0
    View Source
    const GoosHurd = 0
    View Source
    const GoosIllumos = 0
    View Source
    const GoosIos = 0
    View Source
    const GoosJs = 0
    View Source
    const GoosLinux = 1
    View Source
    const GoosNacl = 0
    View Source
    const GoosNetbsd = 0
    View Source
    const GoosOpenbsd = 0
    View Source
    const GoosPlan9 = 0
    View Source
    const GoosSolaris = 0
    View Source
    const GoosWindows = 0
    View Source
    const GoosZos = 0
    View Source
    const PtrSize = 4 << (^uintptr(0) >> 63) // unsafe.Sizeof(uintptr(0)) but an ideal const
    
    View Source
    const RegSize = 4 << (^Uintreg(0) >> 63) // unsafe.Sizeof(uintreg(0)) but an ideal const
    
    View Source
    const SpAlign = 1*(1-GoarchArm64) + 16*GoarchArm64 // SP alignment: 1 normally, 16 for ARM64
    
    View Source
    const StackGuardMultiplier = StackGuardMultiplierDefault*(1-GoosAix) + 2*GoosAix

      AIX requires a larger stack for syscalls.

      Variables

      View Source
      var DefaultGoroot string // set at link time
      

      Functions

      func Bswap32

      func Bswap32(x uint32) uint32

        Bswap32 returns its input with byte order reversed 0x01020304 -> 0x04030201

        func Bswap64

        func Bswap64(x uint64) uint64

          Bswap64 returns its input with byte order reversed 0x0102030405060708 -> 0x0807060504030201

          func Ctz32

          func Ctz32(x uint32) int

            Ctz32 counts trailing (low-order) zeroes, and if all are zero, then 32.

            func Ctz64

            func Ctz64(x uint64) int

              Ctz64 counts trailing (low-order) zeroes, and if all are zero, then 64.

              func Ctz8

              func Ctz8(x uint8) int

                Ctz8 returns the number of trailing zero bits in x; the result is 8 for x == 0.

                func LeadingZeros64

                func LeadingZeros64(x uint64) int

                  LeadingZeros64 returns the number of leading zero bits in x; the result is 64 for x == 0.

                  func LeadingZeros8

                  func LeadingZeros8(x uint8) int

                    LeadingZeros8 returns the number of leading zero bits in x; the result is 8 for x == 0.

                    func Len64

                    func Len64(x uint64) (n int)

                      len64 returns the minimum number of bits required to represent x; the result is 0 for x == 0.

                      func Len8

                      func Len8(x uint8) int

                        Len8 returns the minimum number of bits required to represent x; the result is 0 for x == 0.

                        func OnesCount64

                        func OnesCount64(x uint64) int

                          OnesCount64 returns the number of one bits ("population count") in x.

                          func TrailingZeros64

                          func TrailingZeros64(x uint64) int

                            TrailingZeros64 returns the number of trailing zero bits in x; the result is 64 for x == 0.

                            func TrailingZeros8

                            func TrailingZeros8(x uint8) int

                              TrailingZeros8 returns the number of trailing zero bits in x; the result is 8 for x == 0.

                              Types

                              type ArchFamilyType

                              type ArchFamilyType int
                              const (
                              	AMD64 ArchFamilyType = iota
                              	ARM
                              	ARM64
                              	I386
                              	MIPS
                              	MIPS64
                              	PPC64
                              	RISCV64
                              	S390X
                              	WASM
                              )

                              type Uintreg

                              type Uintreg uint64