Commit Graph

4368 Commits (9ddd6dc93c4f3e0cfe290b33b5af3d544971fe6f)

Author SHA1 Message Date
Jeffrey Walton 9ddd6dc93c
Fix CPU_ProbeDARN test
The DARN probe used 64-bit version of the instruction. I think it would have been OK  32-bit binaries, but the 32-bit version is always safe.
2018-11-27 04:46:51 -05:00
Jeffrey Walton 3db34abf2f
Add Power9 Random Number Generator support (GH #747, PR #748) 2018-11-27 02:54:26 -05:00
Jeffrey Walton 1966d13617
Cleanup BLAKE2 m_keyLength and m_digestSize 2018-11-25 02:05:02 -05:00
Jeffrey Walton cfbe382e0c
Update documentation 2018-11-24 06:04:18 -05:00
Jeffrey Walton a00fd95032
Update documentation 2018-11-24 05:01:43 -05:00
Jeffrey Walton b6a73cadfb
Update documentation 2018-11-24 04:57:45 -05:00
Jeffrey Walton 9a987b4867
Fix compile error with GCC on POWER7 2018-11-24 04:43:14 -05:00
Jeffrey Walton 93a9bfbac2
Update documentation 2018-11-24 03:47:16 -05:00
Jeffrey Walton 758e31d5a0
Add 64-bit element rotates for POWER7 2018-11-24 03:27:12 -05:00
Jeffrey Walton cf3dfa2745
Drop uint64x2_p to POWER7
According to the OpenPOWER specs, unsigned long long vectors first appeared in ISA 2.06, which is POWER7. However some support functions, like vec_add, did not arrive until ISA 2.07, which is POWER8.
2018-11-24 02:53:59 -05:00
Jeffrey Walton a4dc4e2237
Update documentation 2018-11-24 02:23:25 -05:00
Jeffrey Walton ad58f0cbdc
Update comments for PowerPC 2018-11-24 02:14:28 -05:00
Jeffrey Walton 51fea1a15e
Add VecLoadAligned for PowerPC 2018-11-24 01:27:44 -05:00
Jeffrey Walton 727de927cc
Add CRYPTOPP_POWER7_ALTIVEC for XLC 12 on AIX workaround 2018-11-24 01:11:54 -05:00
Jeffrey Walton 064650d31e
Avoid IsAlignedOn in VecLoad_ALTIVEC and VecStore_ALTIVEC 2018-11-23 23:58:30 -05:00
Jeffrey Walton a48e387ead
Add missing offset to VecStoreBE 2018-11-23 15:53:58 -05:00
Jeffrey Walton 39aaec7c59
Use vec_revb when POWER9 is available 2018-11-23 12:16:45 -05:00
Jeffrey Walton 4020ba7058
Fix PowerPC compile on Linux 2018-11-22 23:20:55 -05:00
Jeffrey Walton ae5650d498
Fix PowerPC compile on Linux 2018-11-22 22:51:02 -05:00
Jeffrey Walton bc63a78b69
Move Power8 SHA tests into ppc_power8.cpp 2018-11-22 22:41:56 -05:00
Jeffrey Walton 2b5bea7b12
Fix POWER8 compile when -DCRYPTOPP_DISABLE_ALTIVEC 2018-11-22 22:23:44 -05:00
Jeffrey Walton 3efc7752e4
Remove __IBM_ATTRIBUTES
I believe this is C++ attributes, and not GCC attributes
2018-11-22 20:47:35 -05:00
Jeffrey Walton 3ba4dc6052
Use __IBMCPP_NULLPTR from IBM compiler manual 2018-11-22 19:44:41 -05:00
Jeffrey Walton 652d0e42bf
Use __IBM_ATTRIBUTES and __IBM_ALIGNOF__ from IBM compiler manual 2018-11-22 19:18:08 -05:00
Jeffrey Walton 2fe5177d07
Update documentation 2018-11-22 16:54:28 -05:00
Jeffrey Walton 17b7ebeb39
Update documentation 2018-11-22 16:37:41 -05:00
Jeffrey Walton f6de172367
Fix UBsan finding on PowerPC under Clang 7.0 2018-11-22 16:27:16 -05:00
Jeffrey Walton 568d9376a2 Update documentation
Signed-off-by: Jeffrey Walton <noloader@gmail.com>
2018-11-22 13:54:03 -05:00
Jeffrey Walton 64981be36b
Remove unneeded assert in panama.cpp
The code handles both aligned and unaligned cases
2018-11-22 04:28:38 -05:00
Jeffrey Walton 8d4103fb0c
Fix alignment on AIX (GH #745) 2018-11-22 00:15:37 -05:00
Jeffrey Walton 6cf8895bf1
Add additional assert to FixedSizeAllocatorWithCleanup (GH #745)
This assert checks the array we return to the caller is large enough. Spoiler alert... it is not always large enough, like on 64-bit AIX. The linker on AIX appears to align smaller than 8-bytes
2018-11-21 23:04:00 -05:00
Jeffrey Walton 1e8ac49b49
Guard use of _debug_memset with __DEBUG_ALLOC__
This is engaged with IBM XLC's -qheapdebug option
2018-11-21 21:04:20 -05:00
Jeffrey Walton e26b1a0b2a
Add debug heap support on AIX with IBM XLC 2018-11-21 20:19:06 -05:00
Jeffrey Walton be437504c7 Clear "x" might be used before it is set using IBM XLC 2018-11-21 20:15:00 -05:00
Jeffrey Walton 5492101fc0
Fix XLC 13.1 debug builds on Linux 2018-11-21 17:37:19 -05:00
Jeffrey Walton 2caa62a066
Add TCXXFLAGS for compiler and cpu feature testing (GH #741)
This will allow users to specify agreesive warning flags without accidentally failing a feature test. The feature tests are minimal but the system headers could be noisy under elevated warnings
2018-11-21 16:25:34 -05:00
Jeffrey Walton 4db81f2eba
Improve -fPIC and -pthread rules 2018-11-21 15:16:55 -05:00
Jeffrey Walton 322c67f373
Use previous digest size as a default value in BLAKE2 2018-11-21 13:28:21 -05:00
Jeffrey Walton 0d44176fd1
Cleanup debug information from SIMON source files 2018-11-21 13:05:59 -05:00
Jeffrey Walton 0998b40d2d
Disable Altivec for BLAKE2s on AIX 7.1 and XLC 12.01 (GH #743) 2018-11-21 00:25:05 -05:00
Jeffrey Walton a65d55a3fd
Rewrite BLAKE2 classes
The ParameterBlocks for BLAKE2 had undefined behavior. We relied on the compiler packing the bytes in the structure, then we used the first byte as the start of an array.

This rewrite does things correctly. We don't memset the structure, and we don't treat the structure as a contiguous array.
2018-11-20 23:32:35 -05:00
Jeffrey Walton 13bee44388
Update comments 2018-11-20 00:06:34 -05:00
Jeffrey Walton 3be1ae60f8
Clear warning on unitialized rounds 2018-11-19 23:41:34 -05:00
Jeffrey Walton 778f6f122d
Remove potential UB from CFB_CipherConcretePolicy 2018-11-19 23:40:51 -05:00
Jeffrey Walton 081d9110ee
Call VecStore_ALTIVEC by name
The old form could suffer recursion if teplate deduction fails
2018-11-19 20:59:15 -05:00
Jeffrey Walton e6370f3ea1
Fix typo in VecStore 2018-11-19 20:31:06 -05:00
Jeffrey Walton 66b3ba5d66
Update comments 2018-11-19 20:02:51 -05:00
Jeffrey Walton f52a141f6e
Add separate Polynomial Multiply feature test on POWER8 (GH#742) 2018-11-19 18:31:45 -05:00
Jeffrey Walton 215f9dc164
Fix POWER7 runtime detection test (GH #742) 2018-11-19 18:31:00 -05:00
Jeffrey Walton 0de4556b39
Fix feature test programs for early POWER7 machines 2018-11-19 18:29:46 -05:00