github.com/cristalhq/base64@v0.1.2/utils_le.go (about)

     1  //go:build 386 || amd64 || amd64p32 || arm || arm64 || mipsle || mips64le || mips64p32le || ppc64le || riscv || riscv64 || wasm
     2  // +build 386 amd64 amd64p32 arm arm64 mipsle mips64le mips64p32le ppc64le riscv riscv64 wasm
     3  
     4  package base64
     5  
     6  import (
     7  	"math/bits"
     8  	"unsafe"
     9  )
    10  
    11  //go:nosplit
    12  func bswap32(ptr uintptr) uint32 {
    13  	return bits.ReverseBytes32(*(*uint32)(unsafe.Pointer(ptr)))
    14  }
    15  
    16  //go:nosplit
    17  func stou32(cp uintptr, x uint32) {
    18  	*(*uint32)(unsafe.Pointer(cp)) = x
    19  }
    20  
    21  //go:nosplit
    22  func ctou32(cp uintptr) uint32 {
    23  	return *(*uint32)(unsafe.Pointer(cp))
    24  }