27 lines
1.0 KiB
Go
27 lines
1.0 KiB
Go
// Copyright 2026 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package cpu
|
|
|
|
//go:generate go run golang.org/x/sys/windows/mkwinsyscall -systemdll=false -output zcpu_windows.go cpu_windows.go
|
|
|
|
//sys isProcessorFeaturePresent(ProcessorFeature uint32) (ret bool) = kernel32.IsProcessorFeaturePresent
|
|
|
|
// The processor features to be tested for IsProcessorFeaturePresent, see
|
|
// https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-isprocessorfeaturepresent
|
|
const (
|
|
_PF_ARM_V8_CRYPTO_INSTRUCTIONS_AVAILABLE = 30
|
|
_PF_ARM_V8_CRC32_INSTRUCTIONS_AVAILABLE = 31
|
|
_PF_ARM_V81_ATOMIC_INSTRUCTIONS_AVAILABLE = 34
|
|
_PF_ARM_V82_DP_INSTRUCTIONS_AVAILABLE = 43
|
|
|
|
_PF_ARM_V83_JSCVT_INSTRUCTIONS_AVAILABLE = 44
|
|
_PF_ARM_V83_LRCPC_INSTRUCTIONS_AVAILABLE = 45
|
|
_PF_ARM_SVE_INSTRUCTIONS_AVAILABLE = 46
|
|
_PF_ARM_SVE2_INSTRUCTIONS_AVAILABLE = 47
|
|
|
|
_PF_ARM_SHA3_INSTRUCTIONS_AVAILABLE = 64
|
|
_PF_ARM_SHA512_INSTRUCTIONS_AVAILABLE = 65
|
|
)
|