summaryrefslogtreecommitdiff
path: root/lea.h
diff options
context:
space:
mode:
authorJeffrey Walton <noloader@gmail.com>2018-06-23 20:55:17 -0400
committerJeffrey Walton <noloader@gmail.com>2018-06-23 20:55:17 -0400
commit404e6cfae33c8185ef8752c7d62ce111583d4829 (patch)
tree2fc1cd61356e36442ded8da264101fb4439c4135 /lea.h
parent3af3b8019b96dce493a499e0989e254f1f7911f5 (diff)
downloadcryptopp-git-404e6cfae33c8185ef8752c7d62ce111583d4829.tar.gz
Remove CRYPTOPP_LEA_ARM_SPLAT_ROUNDKEYS
GCC 8 was producing bad decryption results for CBC mode on x86. NEON and Aarch64 was fine. We lose 0.6 cpb so LEA runs around 3.5 cpb instead of 2.9 cpb. It would be nice to pinpoint the GCC issue but it is kind of difficult at the moment.
Diffstat (limited to 'lea.h')
-rw-r--r--lea.h10
1 files changed, 1 insertions, 9 deletions
diff --git a/lea.h b/lea.h
index 5b9f74b0..d8d95700 100644
--- a/lea.h
+++ b/lea.h
@@ -19,19 +19,11 @@
# define CRYPTOPP_LEA_ADVANCED_PROCESS_BLOCKS 1
#endif
-// Define this if you want to pre-splat the round key table
-// for NEON and Aarch64. Pre-splatting the round key increases
-// performance by about 0.7 cpb on ARM server boards like an
-// AMD Opteron A1100. However, it crushes performance on ARM
-// dev-boards like LeMaker HiKey and Pine64. HiKey and Pine64
-// run about 8 cpb slower when pre-splatting the round keys.
-// # define CRYPTOPP_LEA_ARM_SPLAT_ROUNDKEYS 1
-
NAMESPACE_BEGIN(CryptoPP)
/// \brief LEA block cipher information
/// \since Crypto++ 7.1
-struct LEA_Info : public FixedBlockSize<16>, VariableKeyLength<16,16,32,8>
+struct LEA_Info : public FixedBlockSize<16>, public VariableKeyLength<16,16,32,8>
{
static const std::string StaticAlgorithmName()
{