-6db7e35d3bcd75ab3cb15296a5ddc5178038c9c1
+771668f7137e560b2ef32c8799e5f8b4c4ee14a9
The first line of this file holds the git revision number of the last
merge done from the gofrontend repository.
package runtime
-import "unsafe"
-
-const (
- _AT_PLATFORM = 15 // introduced in at least 2.6.11
-
- _HWCAP_VFP = 1 << 6 // introduced in at least 2.6.11
- _HWCAP_VFPv3 = 1 << 13 // introduced in 2.6.30
- _HWCAP_IDIVA = 1 << 17
-)
-
var randomNumber uint32
-var armArch uint8 = 6 // we default to ARMv6
-var hwcap uint32 // set by archauxv
-var hardDiv bool // set if a hardware divider is available
func archauxv(tag, val uintptr) {
switch tag {
// it as a byte array.
randomNumber = uint32(startupRandomData[4]) | uint32(startupRandomData[5])<<8 |
uint32(startupRandomData[6])<<16 | uint32(startupRandomData[7])<<24
-
- case _AT_PLATFORM: // v5l, v6l, v7l
- t := *(*uint8)(unsafe.Pointer(val + 1))
- if '5' <= t && t <= '7' {
- armArch = t - '0'
- }
-
- case _AT_HWCAP: // CPU capability bit flags
- hwcap = uint32(val)
- hardDiv = (hwcap & _HWCAP_IDIVA) != 0
}
}