diff options
author | Christopher Speller <crspeller@gmail.com> | 2017-05-17 16:51:25 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-17 16:51:25 -0400 |
commit | d103ed6ca97ca5a2669f6cf5fe4b3d2a9c945f26 (patch) | |
tree | dbde13123c6add150448f7b75753ac022d862475 /vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_amd64.s | |
parent | cd23b8139a9463b67e3096744321f6f4eb0ca40a (diff) | |
download | chat-d103ed6ca97ca5a2669f6cf5fe4b3d2a9c945f26.tar.gz chat-d103ed6ca97ca5a2669f6cf5fe4b3d2a9c945f26.tar.bz2 chat-d103ed6ca97ca5a2669f6cf5fe4b3d2a9c945f26.zip |
Upgrading server dependancies (#6431)
Diffstat (limited to 'vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_amd64.s')
-rw-r--r-- | vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_amd64.s | 45 |
1 files changed, 19 insertions, 26 deletions
diff --git a/vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_amd64.s b/vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_amd64.s index 39c58b44a..1c57e3894 100644 --- a/vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_amd64.s +++ b/vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_amd64.s @@ -278,15 +278,8 @@ TEXT ·chacha20Poly1305Open(SB), 0, $288-97 MOVQ ad+72(FP), adp // Check for AVX2 support - CMPB runtime·support_avx2(SB), $0 - JE noavx2bmi2Open - - // Check BMI2 bit for MULXQ. - // runtime·cpuid_ebx7 is always available here - // because it passed avx2 check - TESTL $(1<<8), runtime·cpuid_ebx7(SB) - JNE chacha20Poly1305Open_AVX2 -noavx2bmi2Open: + CMPB ·useAVX2(SB), $1 + JE chacha20Poly1305Open_AVX2 // Special optimization, for very short buffers CMPQ inl, $128 @@ -1491,16 +1484,8 @@ TEXT ·chacha20Poly1305Seal(SB), 0, $288-96 MOVQ src_len+56(FP), inl MOVQ ad+72(FP), adp - // Check for AVX2 support - CMPB runtime·support_avx2(SB), $0 - JE noavx2bmi2Seal - - // Check BMI2 bit for MULXQ. - // runtime·cpuid_ebx7 is always available here - // because it passed avx2 check - TESTL $(1<<8), runtime·cpuid_ebx7(SB) - JNE chacha20Poly1305Seal_AVX2 -noavx2bmi2Seal: + CMPB ·useAVX2(SB), $1 + JE chacha20Poly1305Seal_AVX2 // Special optimization, for very short buffers CMPQ inl, $128 @@ -2709,13 +2694,21 @@ sealAVX2Tail512LoopB: JMP sealAVX2SealHash -// func haveSSSE3() bool -TEXT ·haveSSSE3(SB), NOSPLIT, $0 - XORQ AX, AX - INCL AX +// func cpuid(eaxArg, ecxArg uint32) (eax, ebx, ecx, edx uint32) +TEXT ·cpuid(SB), NOSPLIT, $0-24 + MOVL eaxArg+0(FP), AX + MOVL ecxArg+4(FP), CX CPUID - SHRQ $9, CX - ANDQ $1, CX - MOVB CX, ret+0(FP) + MOVL AX, eax+8(FP) + MOVL BX, ebx+12(FP) + MOVL CX, ecx+16(FP) + MOVL DX, edx+20(FP) RET +// func xgetbv() (eax, edx uint32) +TEXT ·xgetbv(SB),NOSPLIT,$0-8 + MOVL $0, CX + XGETBV + MOVL AX, eax+0(FP) + MOVL DX, edx+4(FP) + RET |