summaryrefslogtreecommitdiff
path: root/sha.cpp
diff options
context:
space:
mode:
authorJeffrey Walton <noloader@gmail.com>2019-05-25 06:23:19 -0400
committerJeffrey Walton <noloader@gmail.com>2019-05-25 06:23:19 -0400
commitfc10a7f1ea56b0c3c3ca7db8fa4de868cf3daad2 (patch)
treec86d705156d874fe672223c6d81394c3179a6ca8 /sha.cpp
parent92df2a685f55a4777a897f0a921ed06e3e21401a (diff)
downloadcryptopp-git-fc10a7f1ea56b0c3c3ca7db8fa4de868cf3daad2.tar.gz
Fix SHA512 on ARM benchmarks
This was a mistake when porting from Cryptogams to Crypto++. The macros VFP_ABI_PUSH and VFP_ABI_POP needed to be defined because they save and restore SIMD register state. They were originally missing during the port. The benchmarks would hang because the doubles we used for benchmarking were blown away in sha512_block_data_order_neon.
Diffstat (limited to 'sha.cpp')
-rw-r--r--sha.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/sha.cpp b/sha.cpp
index eef0538e..ce742b2a 100644
--- a/sha.cpp
+++ b/sha.cpp
@@ -998,7 +998,7 @@ std::string SHA512_AlgorithmProvider()
if (HasSSE2())
return "SSE2";
#endif
-#if CRYPTOGAMS_ARM_SHA512 && 0
+#if CRYPTOGAMS_ARM_SHA512
if (HasNEON())
return "NEON";
if (HasARMv7())
@@ -1310,7 +1310,7 @@ void SHA512::Transform(word64 *state, const word64 *data)
return;
}
#endif
-#if CRYPTOGAMS_ARM_SHA512 && 0
+#if CRYPTOGAMS_ARM_SHA512
if (HasARMv7())
{
# if (CRYPTOPP_LITTLE_ENDIAN)