Commit Graph

2708 Commits (de1270656c275074dfc6c013484c157e9d62277b)

Author SHA1 Message Date
Jeffrey Walton de1270656c
Avoid extra ByteReverse when using Intel SHA extensions
This gains about 0.6 cpb. SHA-1 is down to 1.7 to 1.9 cpb. SHA-256 is not affected
2017-05-26 01:51:44 -04:00
Jeffrey Walton bd7aa155a6 Revert "Avoid extra ByteReverse"
This reverts commit 3b56ba118f. It broke Tiger and SEAL. Arg...
2017-05-25 06:46:40 -04:00
Jeffrey Walton b447a7bf15
Add missing header 2017-05-25 06:26:43 -04:00
Jeffrey Walton 3b56ba118f
Avoid extra ByteReverse
This gains about 0.6 cpb. SHA-1 is down to 1.9 cpb. SHA-256 is not affected
2017-05-25 06:20:00 -04:00
Jeffrey Walton b65ec291ea
Updated test script 2017-05-25 00:04:45 -04:00
Jeffrey Walton 830c06e922
Fixed copy/paste typo 2017-05-23 23:05:31 -04:00
Jeffrey Walton 34ac34c0b4
Cleared C4459 under MSVC (Issue 412) 2017-05-23 23:03:47 -04:00
Jeffrey Walton ff7f40cabe
Cleared C4505 under MSVC (Issue 412) 2017-05-23 23:00:58 -04:00
Jeffrey Walton bc40d36075
Fixed ARIA self test failures under SunCC 2017-05-22 04:34:57 -04:00
Jeffrey Walton f40c55810d
Add method for sanitizer suppression 2017-05-21 21:51:31 -04:00
Jeffrey Walton 0c4b80c995
Remove unaligned access safety with Asan and UBsan
NO_UNALIGNED_DATA_ACCESS is now the norm. Those who allow unaligned data accesses are the special case.
2017-05-21 20:45:08 -04:00
Jeffrey Walton 1be7d29af9
Update test script to exercise -DDISABLE_NATIVE_ARCH=1 2017-05-21 14:52:20 -04:00
Jeffrey Walton 2f58912fdd
Enable RDSEED and SHA for AMD processors
AMD donated a AMD Ryzen 7 1700X to the GCC Compile Farm. We were able to verify compatibility and correctness. Many thanks to AMD for the donation
2017-05-21 11:38:56 -04:00
Jeffrey Walton 5fd202077c
Add additional compilers for inline ASM (Issue 428) 2017-05-20 18:32:48 -04:00
Jeffrey Walton 9d2455a699
Add inline ASM for missing CRC intrinsics (Issue 428) 2017-05-20 18:03:53 -04:00
Jeffrey Walton bc0f943c6b
Add defines for GCC_INLINE and GCC_INLINE_ATTRIB (Issues 427 and 428) 2017-05-20 17:59:21 -04:00
Jeffrey Walton 8c02c60584
Add missing <sstream> header
This failed under C++03 builds. C++11 was OK, so it slipped past the initial smoke tests
2017-05-20 04:09:17 -04:00
Jeffrey Walton 1427f5ecf9
Clear coverity finding FORWARD_NULL (CID 147865) 2017-05-20 02:37:51 -04:00
Jeffrey Walton 1abb5c36bd Revert "Clear coverity finding FORWARD_NULL (CID 147865)"
This broke some self tests.
2017-05-20 02:20:25 -04:00
Jeffrey Walton 0bdbde2c21
Clear coverity finding FORWARD_NULL (CID 147865) 2017-05-20 02:12:43 -04:00
Jeffrey Walton 25fcb7bef8
Clear coverity finding CHECKED_RETURN (CID 147833) 2017-05-20 01:42:20 -04:00
Jeffrey Walton 555617d456
Clear coverity finding CONSTANT_EXPRESSION_RESULT (CID 147833) 2017-05-20 01:35:39 -04:00
Jeffrey Walton e0d856d0ca
Clear coverity finding CONSTANT_EXPRESSION_RESULT (CID 179384) 2017-05-20 01:27:23 -04:00
Jeffrey Walton 4fef9b8837
Rework benchmark code
This change moves test selections from test.cpp into bench.cpp. It also allows us finer control over test classes and algorithms
2017-05-19 23:29:59 -04:00
Jeffrey Walton 82accdc13b
Sort source list (Pull Request 426) 2017-05-19 20:12:29 -04:00
Bernhard M. Wiedemann 033fed8c92 have constant link order (#426)
Make builds reproducible
See https://reproducible-builds.org/ for why this is good.

Without this patch g++ would order functions in libcryptopp.so.5.6.5
depending on random order of files in the build system's filesystem.
2017-05-19 18:34:08 -04:00
Jeffrey Walton 9dcb72f9e5
Fix "error LNK2019: unresolved external symbol TestAutoSeededX917()" under Windows Phone 2017-05-18 09:35:09 -04:00
Jeffrey Walton a090aad8d2
Fix "warning C4702: unreachable code" under Windows Phone 2017-05-18 08:45:07 -04:00
Jeffrey Walton ddcd70b152
Fix "error C2065: prng undeclared identifier" under Windows Phone 2017-05-18 08:36:00 -04:00
Jeffrey Walton 3fe188ba89
Updated README with additional algorithms 2017-05-18 00:59:11 -04:00
Jeffrey Walton 1b1c32d7cf
Build RDRAND for all platofrms (Issue 419, PR 424)
We have not been able to determine a reliable way to detect cpu's and platforms with Cmake. We are side stepping the Cmake problem by building rdrand.cpp all the time. If its not avilable for a cpu or platform, then RDRAND or RDSEED throw an exception.
2017-05-17 16:21:20 -04:00
Jeffrey Walton 03a6a8fb73
Add separate Enc and Dec classes to Threefish
The change speeds up benchmarks for Threefish-256 and Threefish-512 by about 10 MiB/s on a 6th gen Skylake
2017-05-17 14:38:37 -04:00
Jeffrey Walton 5b81b5c66c
Updated test scripts for ARM NEON 2017-05-17 10:59:22 -04:00
Jeffrey Walton a59e32be73
Add missing Threefish test vectors to Filelist (Isse 422) 2017-05-16 04:49:33 -04:00
Jeffrey Walton c9d4ebb3d4
Cleared C4250 under MSVC (Issue 412) 2017-05-16 04:21:27 -04:00
Jeffrey Walton 5f0cbde980
Removed MSVC warning suppression for many warnings (Issue 412)
Most of these appear to have been cleared over the last couple of years.

C4127 is too prevelant. We are probably going to have to live with it.

We may be able to clear C4250 with a using statement. For example 'using ASN1CryptoMaterial::Load'.

MSVC resisted clearing C4661 by pushing/poping in iterhash.h and osrng.h. It was like MSVC simply ignored it.
2017-05-16 03:52:03 -04:00
Jeffrey Walton b083390d4f
Added some intelligence to truncated Gzip stream test 2017-05-16 01:59:09 -04:00
Jeffrey Walton 5bf43f4ef3
Add additional Threefish test vectors
The test vectors came from NIST submission archive (NIST_CD_102610), skein_golden_kat_short_internals.txt
2017-05-15 22:55:33 -04:00
Jeffrey Walton ae09662f43
Update Makefile to trim data files 2017-05-15 22:53:44 -04:00
Jeffrey Walton 30ac53ff41
Add support for word32 and word64 parsing 2017-05-15 21:55:39 -04:00
Jeffrey Walton 4da06919eb
Switch conversion switch from 'ce' to 'cvt'
There were some collisions in the RSA test vectors
2017-05-15 21:02:47 -04:00
Jeffrey Walton 30ac06dd0d
Fix substring length 2017-05-15 20:41:32 -04:00
Jeffrey Walton 7fd5c13e06
Fix PutDecodedDatumInto on OS X 2017-05-15 20:14:22 -04:00
Jeffrey Walton a61c97f7ee
Re-enable the Tweak on Threefish
We also add a helper to PutDecodedDatumInto which reverses the little-endian values from the Threefish test vectors. Test vectors will follow at next check-in.
2017-05-15 18:42:20 -04:00
Jeffrey Walton f60f212687
Remove Tweak handling.
We are arriving at incorrect result for G2 after the first Key Injection, and its not readily apparent why.
2017-05-15 14:38:24 -04:00
Jeffrey Walton b3399b4f86
Remove SSE2 intrinsics from Threefish
The benchmarks showed things ran slower with GCC and MSVC
2017-05-14 16:59:04 -04:00
Jeffrey Walton 54ca8b3a16
Whitespace check-in 2017-05-14 15:30:59 -04:00
Jeffrey Walton 32ab4af5ff
Add Threefish to project files
Whitespace check-in
2017-05-14 15:27:50 -04:00
Jeffrey Walton 8c34a5f7f5
Add Threefish block cipher (Issue 422) 2017-05-14 13:51:41 -04:00
Jeffrey Walton 7ee87af86b
Don't latch BlockSize or BlockPaddingScheme across tests 2017-05-14 05:26:33 -04:00