diff options
author | Jeffrey Walton <noloader@gmail.com> | 2017-12-03 02:28:40 -0500 |
---|---|---|
committer | Jeffrey Walton <noloader@gmail.com> | 2017-12-03 02:28:40 -0500 |
commit | 6bb1f1d9c41060e9bc2ebef1d2736b2bdb48cd49 (patch) | |
tree | cb8acf0cc2ab462fe783b96da18499ebef03b370 /speck.h | |
parent | 77ff7aa528cc9302cefb5dfb5f7f61247df218ef (diff) | |
download | cryptopp-git-6bb1f1d9c41060e9bc2ebef1d2736b2bdb48cd49.tar.gz |
Add SPECK-64 SSE intrinsics
Performance went from about 11.9 cpb (C++) to about 4.5 cpb (SSE)
Diffstat (limited to 'speck.h')
-rw-r--r-- | speck.h | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -94,6 +94,9 @@ public: {
protected:
void ProcessAndXorBlock(const byte *inBlock, const byte *xorBlock, byte *outBlock) const;
+#if CRYPTOPP_SPECK_ADVANCED_PROCESS_BLOCKS
+ size_t AdvancedProcessBlocks(const byte *inBlocks, const byte *xorBlocks, byte *outBlocks, size_t length, word32 flags) const;
+#endif
};
/// \brief Provides implementation for encryption transformation
@@ -104,6 +107,9 @@ public: {
protected:
void ProcessAndXorBlock(const byte *inBlock, const byte *xorBlock, byte *outBlock) const;
+#if CRYPTOPP_SPECK_ADVANCED_PROCESS_BLOCKS
+ size_t AdvancedProcessBlocks(const byte *inBlocks, const byte *xorBlocks, byte *outBlocks, size_t length, word32 flags) const;
+#endif
};
typedef BlockCipherFinal<ENCRYPTION, Enc> Encryption;
|