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
5package runtime
6
7import (
8	"internal/cpu"
9)
10
11var useAVXmemmove bool
12
13func init() {
14	// Let's remove stepping and reserved fields
15	processor := processorVersionInfo & 0x0FFF3FF0
16
17	isIntelBridgeFamily := isIntel &&
18		processor == 0x206A0 ||
19		processor == 0x206D0 ||
20		processor == 0x306A0 ||
21		processor == 0x306E0
22
23	useAVXmemmove = cpu.X86.HasAVX && !isIntelBridgeFamily
24}
25