From 7fd751ed369ac3fa6964ee8d68bac33de28f663e Mon Sep 17 00:00:00 2001 From: Jeffrey Walton Date: Fri, 5 Jul 2019 11:58:35 -0400 Subject: Revert Asan finding in VMAC change (GH #860) cryptest.sh showed it broke at -O3 --- vmac.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/vmac.cpp b/vmac.cpp index cd5dcbc3..7bf07727 100644 --- a/vmac.cpp +++ b/vmac.cpp @@ -194,11 +194,12 @@ VMAC_Base::VHASH_Update_SSE2(const word64 *data, size_t blocksRemainingInWord64, CRYPTOPP_UNUSED(blocksRemainingInWord64); #ifdef __GNUC__ - + word32 temp; __asm__ __volatile__ ( - AS1( push %%ebx) - AS2( mov %0, %%ebx) + AS2( mov %%ebx, %0) + // AS1( push %%ebx) + AS2( mov %1, %%ebx) INTEL_NOPREFIX #else #if defined(__INTEL_COMPILER) @@ -417,9 +418,10 @@ VMAC_Base::VHASH_Update_SSE2(const word64 *data, size_t blocksRemainingInWord64, AS_POP_IF86( bp) AS1( emms) #ifdef __GNUC__ - AS1( pop %%ebx) ATT_PREFIX - : + // AS1( pop %%ebx) + AS2( mov %0, %%ebx) + : "=m" (temp) : "m" (L1KeyLength), "c" (blocksRemainingInWord64), "S" (data), "D" (nhK+tagPart*2), "d" (m_isFirstBlock), "a" (polyS+tagPart*4) : "memory", "cc" -- cgit v1.2.1