diff options
author | Jeffrey Walton <noloader@gmail.com> | 2017-09-05 16:28:00 -0400 |
---|---|---|
committer | Jeffrey Walton <noloader@gmail.com> | 2017-09-05 16:28:00 -0400 |
commit | 37e02f9e0e2ee627f0f95b7bc0a09f4ba1ce562e (patch) | |
tree | c8b8cc1e9b0b56998eed479f29aa6f3da33f1755 /strciphr.h | |
parent | 23b939c62b7f497d6f99bfe97ad639b35287ac61 (diff) | |
download | cryptopp-git-37e02f9e0e2ee627f0f95b7bc0a09f4ba1ce562e.tar.gz |
Revert AltiVec and Power8 commits
The strategy of "cleanup under-aligned buffers" is not scaling well. Corner cases are still turing up. The library has some corner-case breaks, like old 32-bit Intels. And it still has not solved the AltiVec and Power8 alignment problems.
For now we are backing out the changes and investigating other strategies
Diffstat (limited to 'strciphr.h')
-rw-r--r-- | strciphr.h | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -187,12 +187,13 @@ struct CRYPTOPP_NO_VTABLE AdditiveCipherConcretePolicy : public BASE typedef WT WordType;
CRYPTOPP_CONSTANT(BYTES_PER_ITERATION = sizeof(WordType) * W)
+#if !(CRYPTOPP_BOOL_X86 || CRYPTOPP_BOOL_X64)
//! \brief Provides data alignment requirements
//! \returns data alignment requirements, in bytes
//! \details Internally, the default implementation returns 1. If the stream cipher is implemented
- //! using an SSE2 ASM or intrinsics, then the value returned is usually 16. If the cipher is
- //! AES on AltiVec or Power 8 then 16 is returned.
+ //! using an SSE2 ASM or intrinsics, then the value returned is usually 16.
unsigned int GetAlignment() const {return GetAlignmentOf<WordType>();}
+#endif
//! \brief Provides number of bytes operated upon during an iteration
//! \returns bytes operated upon during an iteration, in bytes
@@ -339,7 +340,7 @@ protected: inline byte * KeystreamBufferBegin() {return this->m_buffer.data();}
inline byte * KeystreamBufferEnd() {return (this->m_buffer.data() + this->m_buffer.size());}
- AlignedSecByteBlock m_buffer;
+ SecByteBlock m_buffer;
size_t m_leftOver;
};
|