Commit Graph

391 Commits (f52a141f6e8a7c28182eafa107a9135ecc2ab618)

Author SHA1 Message Date
Jeffrey Walton f52a141f6e
Add separate Polynomial Multiply feature test on POWER8 (GH#742) 2018-11-19 18:31:45 -05:00
Jeffrey Walton 87565dce75
Add POWER3 test for PowerPC
Issue 656 talks about running on a G4 Macbook
2018-11-19 15:23:07 -05:00
Jeffrey Walton 3129ad4d70
Fix LLVM Clang compile on PowerPC 2018-11-19 02:28:29 -05:00
Jeffrey Walton 1ac7207545
Use clean compile as feature test gate on PowerPC (GH #742) 2018-11-18 20:49:55 -05:00
Jeffrey Walton 76cb99ffe8
Add unexpected to BAD_RESULT 2018-11-18 19:40:34 -05:00
Jeffrey Walton 3725c8411b
Move CPU_ProbePower7 and CPU_ProbePower8 into their own source files (GH #742) 2018-11-18 16:35:02 -05:00
Jeffrey Walton 2e68e95a92
Add BLAKE2s and ChaCha CORE SIMD function (GH #656)
The CORE function provides the implementation for ChaCha_OperateKeystream_ALTIVEC, ChaCha_OperateKeystream_POWER7, BLAKE2_Compress32_ALTIVEC and BLAKE2_Compress32_POWER7. Depending on the options used to compile the source files, either POWER7 or ALTIVEC will be used.
This is needed to support the "new toolchain, ancient hardware" use case.
2018-11-18 14:43:48 -05:00
Jeffrey Walton aae108d228
Fix PowerPC-64 detection using Clang 2018-11-18 01:52:42 -05:00
Jeffrey Walton 889c98b9af
Add Newlib test 2018-11-17 15:50:04 -05:00
Jeffrey Walton 0564266151
Cleanup makefile 2018-11-17 15:28:30 -05:00
Jeffrey Walton c4c413e3f3
Drop GCM to POWER7 if POWER8 unavailable 2018-11-17 00:47:17 -05:00
Jeffrey Walton bbc5c63d33
Drop GCM to POWER7 on PowerPC
GCM can do some bulk XOR's using the SIMD unit. However, we still need loads and stores to be fast. Fast loads and stores of unaligned data requires the VSX unit
2018-11-17 00:41:49 -05:00
Jeffrey Walton 4f86bcc39d
Remove -qxlcompatmacros after Commit 96d3fa208e 2018-11-14 20:18:56 -05:00
Jeffrey Walton 7bd02896a0
Fix XLC flags with LLVM front-end 2018-11-14 20:01:05 -05:00
Jeffrey Walton 7c9858f89c
Cleanup PowerPC and XLC feature tests 2018-11-14 08:19:39 -05:00
Jeffrey Walton fc1e98e70d
Make feature test output filename configurable (PR #737, GH #738) 2018-11-13 14:02:40 -05:00
Jeffrey Walton e69106f257
Add "Invalid mnemonic" to bad result on PPC 2018-11-13 01:57:12 -05:00
Jeffrey Walton 9550ccc9a3
Port SIMON64 to Altivec
SIMON64 runs about 4x faster than C++ for POWER4 and friends. If POWER7 is available it goes back to full speed due to efficient unaligned loads
2018-11-12 21:51:11 -05:00
Jeffrey Walton a0608a6b80
Port SPECK64 to Altivec
SPECK64 runs about 4x faster than C++ for POWER4 and friends. If POWER7 is available it goes back to full speed due to efficient unaligned loads
2018-11-12 20:56:15 -05:00
Jeffrey Walton cac97f041d
Rename PPC feature tests to test_ppc_xxx.cxx (PR #737) 2018-11-12 15:43:01 -05:00
Jeffrey Walton ff212dae3e
Rename x86 feature tests to test_x86_xxx.cxx (PR #737) 2018-11-12 15:37:14 -05:00
Jeffrey Walton 41639e5ec6
Fix ARM A-32 and Aarch64 feature tests (PR #737) 2018-11-12 14:59:36 -05:00
Jeffrey Walton 886fd7903d
Remove wildcard from a.out clean recipe 2018-11-12 05:25:01 -05:00
Jeffrey Walton a0f3744ed4
Use __cpp_lib_uncaught_exceptions for CRYPTOPP_CXX17_EXCEPTIONS
Also see https://bugs.llvm.org/show_bug.cgi?id=39631
2018-11-12 03:37:32 -05:00
Jeffrey Walton 499a5e289d
Remove a.out artifacts whenever feature tests run (GH #738) 2018-11-12 01:57:09 -05:00
Jeffrey Walton f91584a7bc
Remove a.out artifacts on OS X during clean (GH #738) 2018-11-12 00:56:54 -05:00
Jeffrey Walton 4e404cceeb
Fix incorrect Macport compiler detection (GH #738) 2018-11-11 13:44:39 -05:00
Jeffrey Walton b163176f82
Fix missing 'no such instruction' in assembler messages (GH #738) 2018-11-11 13:35:03 -05:00
Jeffrey Walton de75959fd7
Move HAS_NEWLIB down to _XOPEN_SOURCE test 2018-11-11 11:54:58 -05:00
Jeffrey Walton 40da78e5ad Cleanup GNUmakefile (PR #737) 2018-11-11 09:59:55 -05:00
Jeffrey Walton 213569a46d
Remove Darwin requirement for Port compilers
I seem to recall someone used one on Linux at one time
2018-11-11 07:53:49 -05:00
Jeffrey Walton 6e94562c52
Move to feature-based availability testing in Makefile (PR #737) 2018-11-11 01:14:43 -05:00
Jeffrey Walton 896225069d
Rename files with dashes to underscores (GH #736)
Also see https://groups.google.com/forum/#!topic/cryptopp-users/HBz-6gZZFOA on the mailing list
2018-11-10 08:00:14 -05:00
Jeffrey Walton aa1d0a5129
Lower Binutil version to 2.23 for AVX 2018-11-08 19:03:33 -05:00
Jeffrey Walton d9011f07d2
Add ChaCha AVX2 implementation (GH #735) 2018-11-08 16:20:31 -05:00
Jeffrey Walton 5dca85b819
Split Blake2 SIMD files into blake2s-simd.cpp and blake2b-simd.cpp (GH #729, GH #731)
The split was required for Blake2b and Power8; Blake2s only requires Power7
2018-11-02 19:09:36 -04:00
Jeffrey Walton 659c0c113c
Add BLAKE2b Power8 implementation (GH #729) 2018-10-30 06:20:31 -04:00
Jeffrey Walton 81db4ea5e3
Switch to pch.cpp for compile tests.
adhoc.cpp was a bit uncomfortable because we had to copy it out from adhoc.cpp.proto. For some reason CMake could not perform the copy, so we started using pch.cpp in CMake. This commit keeps them consistent.
We may have problems with one test, and that is the Newlib tests. I seem to recall they a C++ header included to properly identify its use. We cross that bridge during MinGW testing.
2018-10-29 08:41:54 -04:00
Jeffrey Walton d7d76fa5f7
Add ChaCha Power8 implementation 2018-10-27 08:40:07 -04:00
Jeffrey Walton 21d69598ab
Add CRYPTOPP_DISABLE_ASM to dependency recipe
This stops the inclusion of SSE headers without arch options that break the recipe
2018-10-26 11:10:07 -04:00
Jeffrey Walton 18dcbdf514
Move input xor to ChaCha_OperateKeystream_SSE2
This picks up about 0.2 cpb in ChaCha::OperateKeystream. It may not sound like much but it puts SSE2 intrinsics version on par with the ASM version of Salsa20. Salsa20 leads ChaCha by 0.1 to 0.15 cpb, which equates to about 50 MB/s.
2018-10-24 11:00:35 -04:00
Jeffrey Walton b51faab9b3
Update comments in GNU Makefile 2018-09-09 03:44:50 -04:00
Jeffrey Walton 03297cdfa6
Add -xregs=no%appl for SunCC on Sparc 2018-09-09 03:01:10 -04:00
Jeffrey Walton 243673c32a
Add notes on -stdlib=libc++ for MacOS 2018-08-24 04:43:12 -04:00
Jeffrey Walton f3238742b2
Fix compile with IBM XLC
-pthread was causing "xlC: 1501-210 (W) command option t contains an incorrect subargument"
2018-08-23 04:56:45 -04:00
Jeffrey Walton 899236b99c
Tweak Makefile test to compile but not link (GH #707) 2018-08-21 06:28:28 -04:00
Jeffrey Walton 5489cfe3c6
Remove Asan workaround from VMAC
I was not able to duplicate it under GCC. That includes the GCC's supplied with Debian 8 and Ubuntu 14. It looks like the problem was with Asan insread of the library
2018-08-19 08:32:23 -04:00
Jeffrey Walton 5e3f38cf86
Allow previous version of shared library on Solaris 2018-08-19 07:04:19 -04:00
Jeffrey Walton 3e23c55885
Remove makefile debug print statements 2018-08-19 06:12:09 -04:00
Jeffrey Walton 9886b555d0
Add SONAME to shared object for Solaris
Also see https://blogs.oracle.com/solaris/how-to-name-a-solaris-shared-object-v2
2018-08-19 06:10:30 -04:00