From e18de4d5f9960dbad9587de25124d0c3fbefa9ba Mon Sep 17 00:00:00 2001 From: Jeffrey Walton Date: Fri, 29 Jun 2018 21:02:53 -0400 Subject: [PATCH] Re-engage SSE2 ASM for SHA-256 (GH# 674) I'm not usre where exactly the break occured, but it was probably due to the BASE+SIMD rewrite. Thanks to tesbayda for tracking it down. --- sha.cpp | 2 +- x64dll.asm | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sha.cpp b/sha.cpp index f8c8979d..34bb4b7a 100644 --- a/sha.cpp +++ b/sha.cpp @@ -710,7 +710,7 @@ size_t SHA256::HashMultipleBlocks(const word32 *input, size_t length) return length & (SHA256::BLOCKSIZE - 1); } #endif -#if CRYPTOPP_SSE2_ASM_AVAILABLE +#if CRYPTOPP_SSE2_ASM_AVAILABLE || CRYPTOPP_X64_MASM_AVAILABLE if (HasSSE2()) { const size_t res = length & (SHA256::BLOCKSIZE - 1); diff --git a/x64dll.asm b/x64dll.asm index 97c9aba3..6f90239c 100644 --- a/x64dll.asm +++ b/x64dll.asm @@ -676,7 +676,7 @@ ret GCM_AuthenticateBlocks_64K ENDP ALIGN 8 -SHA256_SSE_HashMultipleBlocks PROC FRAME +SHA256_HashMultipleBlocks_SSE2 PROC FRAME rex_push_reg rsi push_reg rdi push_reg rbx @@ -1962,7 +1962,7 @@ pop rbx pop rdi pop rsi ret -SHA256_SSE_HashMultipleBlocks ENDP +SHA256_HashMultipleBlocks_SSE2 ENDP _TEXT ENDS END