diff options
Diffstat (limited to '')
-rw-r--r-- | src/runtime/asm_amd64.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/runtime/asm_amd64.h b/src/runtime/asm_amd64.h new file mode 100644 index 0000000..b263ade --- /dev/null +++ b/src/runtime/asm_amd64.h @@ -0,0 +1,28 @@ +// Copyright 2021 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. + +// Define features that are guaranteed to be supported by setting the AMD64 variable. +// If a feature is supported, there's no need to check it at runtime every time. + +#ifdef GOAMD64_v2 +#define hasPOPCNT +#define hasSSE42 +#endif + +#ifdef GOAMD64_v3 +#define hasAVX +#define hasAVX2 +#define hasPOPCNT +#define hasSSE42 +#endif + +#ifdef GOAMD64_v4 +#define hasAVX +#define hasAVX2 +#define hasAVX512F +#define hasAVX512BW +#define hasAVX512VL +#define hasPOPCNT +#define hasSSE42 +#endif |