1 // Copyright 2015 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 // +build !gccgo 6 7 package main 8 9 func cpuid(info *[4]uint32, ax uint32) 10 11 func cansse2() bool { 12 if gohostarch != "386" && gohostarch != "amd64" { 13 return false 14 } 15 16 var info [4]uint32 17 cpuid(&info, 1) 18 return info[3]&(1<<26) != 0 // SSE2 19 } 20 21 // useVFPv1 tries to execute one VFPv1 instruction on ARM. 22 // It will crash the current process if VFPv1 is missing. 23 func useVFPv1() 24 25 // useVFPv3 tries to execute one VFPv3 instruction on ARM. 26 // It will crash the current process if VFPv3 is missing. 27 func useVFPv3() 28 29 // useARMv6K tries to run ARMv6K instructions on ARM. 30 // It will crash the current process if it doesn't implement 31 // ARMv6K or above. 32 func useARMv6K() 33