1 // Copyright 2016 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.
5 // +build go1.7,amd64,!gccgo,!appengine
10 useAVX2 = supportsAVX2()
11 useAVX = supportsAVX()
12 useSSE4 = supportsSSE4()
16 func supportsSSE4() bool
19 func supportsAVX() bool
22 func supportsAVX2() bool
25 func hashBlocksAVX2(h *[8]uint64, c *[2]uint64, flag uint64, blocks []byte)
28 func hashBlocksAVX(h *[8]uint64, c *[2]uint64, flag uint64, blocks []byte)
31 func hashBlocksSSE4(h *[8]uint64, c *[2]uint64, flag uint64, blocks []byte)
33 func hashBlocks(h *[8]uint64, c *[2]uint64, flag uint64, blocks []byte) {
35 hashBlocksAVX2(h, c, flag, blocks)
37 hashBlocksAVX(h, c, flag, blocks)
39 hashBlocksSSE4(h, c, flag, blocks)
41 hashBlocksGeneric(h, c, flag, blocks)