Commit Graph

3149 Commits (f56e4e193fb6a6e59212bf6ffd5e0f12b457db2e)

Author SHA1 Message Date
Jeffrey Walton 1c41da35bc
Use AOSP_CPU_OBJ instead of cpu-features.o 2017-09-13 18:58:07 -04:00
Jeffrey Walton 4c6a866a8d
Remove debug info statement from makefile 2017-09-13 18:51:45 -04:00
Jeffrey Walton 8d98417306
Add Aarch64 specific defines to Android cross-compile
Move <arm_acle.h> logic into "sonfig.h". Detecting when we can/should include <arm_acle.h> is proving to be troublesome
2017-09-13 17:16:57 -04:00
Jeffrey Walton 40859a80da
Improve detection of ANDROID_NDK_ROOT
We were searching for R10 NDK's, but Android is at R15 in 2017
2017-09-13 17:00:52 -04:00
Jeffrey Walton fca8adc549
Fix CMAC 256-bit polynomial
Also see GH #423
2017-09-13 08:41:39 -04:00
Jeffrey Walton 172ab40874
Fix missing closing paren for Android Aarch64 (GH #491) 2017-09-13 07:32:08 -04:00
Jeffrey Walton 6e1a07025c
Build Android cpu-features from sources (GH #491)
Thanks to Deadpikle for suggesting the strategy
2017-09-13 07:16:41 -04:00
Jeffrey Walton fcee76594c
Make armv7a-neon the default in 2017 with NDK R15 2017-09-13 05:22:19 -04:00
Jeffrey Walton b255bf26ec
Fix missing cpu-features.h for Android 2017-09-13 04:18:04 -04:00
Jeffrey Walton 2375e87a5c
Fix unterminated close paren 2017-09-13 04:09:44 -04:00
Jeffrey Walton 397ccd7e49
remove commented code for Power8 2017-09-13 03:59:25 -04:00
Jeffrey Walton 6d459afa15 Revert "Bump Visual Studio version number for checked iterators (GH #496)"
This reverts commit 3b6e17b1. The version in Master was correct. The version the OP was using was incorrect.
2017-09-13 02:03:35 -04:00
Jeffrey Walton 3b6e17b1b4
Bump Visual Studio version number for checked iterators (GH #496) 2017-09-13 00:30:57 -04:00
Jeffrey Walton 502fdc61c9
Add -msse2 to i586 build (Issue 494) 2017-09-12 21:23:23 -04:00
Jeffrey Walton 2b24f5b9fe
VectorLoadAligned → VectorLoadKey
Add comments for the Load and Store functions
2017-09-12 20:38:58 -04:00
Jeffrey Walton 5659acb704
Cleanup vector casts 2017-09-12 19:44:34 -04:00
Jeffrey Walton 6899d3f8bb
Add AdvancedProcessBlocks for Power8
This increases performance to about 1.6 cpb. We are about 0.5 cpb behind Botan, and about 1.0 cpb behind OpenSSL. However, it beats the snot out of C/C++, which runs at 20 to 30 cpb
2017-09-12 18:15:55 -04:00
Jeffrey Walton 2ebd30d43c
Remove -mvsx option from Linux Power8 builds
This option is not needed
2017-09-12 18:10:07 -04:00
Jeffrey Walton b090e5f69f
Add Power8 AES decryption 2017-09-12 05:53:17 -04:00
Jeffrey Walton cfb63decec
Guard probe functions
This broke Aarch64
2017-09-12 05:49:38 -04:00
Jeffrey Walton d748d4cfbe
Update header guards for x86 2017-09-12 05:39:33 -04:00
Jeffrey Walton 17bf824790
Guard <arm_acle.h> include for GCC 4.8
Use system includes for <arm_neon.h> and <arm_acle.h>
2017-09-12 05:29:51 -04:00
Jeffrey Walton 81a272b046
Update comments 2017-09-12 00:30:48 -04:00
Jeffrey Walton 7fb34e9b08
Add Power8 AES encryption
This is the forward direction on encryption only.  Crypto++ uses the "Equivalent Inverse Cipher" (FIPS-197, Section 5.3.5, p.23), and it is not compatible with IBM hardware. The library library will need to re-work the decryption key scheduling routines. (We may be able to work around it another way, but I have not investigated it).
2017-09-11 22:52:22 -04:00
Jeffrey Walton 9c9d5ebe87
Undef vector, bool and pixel 2017-09-11 22:39:59 -04:00
Jeffrey Walton 120b415e27
Clear compile error on AIX
Truncation due to -1
2017-09-11 04:10:02 -04:00
Jeffrey Walton e2072ae635
Update documentation 2017-09-11 03:43:37 -04:00
Jeffrey Walton fb78afba29
Add PowerPC support to cpu.h and validate.cpp 2017-09-11 03:05:04 -04:00
Jeffrey Walton 9276b95221
Add Power8 support to Makefile 2017-09-09 20:33:06 -04:00
Jeffrey Walton 66c84a9af4
Fix failed feature detections under IBM XL C/C++ compiler 2017-09-09 18:44:08 -04:00
Jeffrey Walton ba569b55ca
Reduce IBM XL C/C++ compiler to -O2
Early versions of IBM XL C/C++ for AIX, V13.1 fail some self tests, like TEA and XTEA
2017-09-09 17:22:42 -04:00
Jeffrey Walton e6f19111e0
Fix IBM XL C/C++ compiler version output in test script 2017-09-09 16:26:16 -04:00
Jeffrey Walton 263c38d681
Avoid pthread gear for IBM XL C/C++ compiler on AIX 2017-09-09 16:25:15 -04:00
Jeffrey Walton 38de6b0436
Fix RTTI and PIC under IBM XL C/C++ on AIX 2017-09-09 16:24:01 -04:00
Jeffrey Walton b974c7f98e
Avoid -pipe for IBM XL C/C++ compiler 2017-09-09 15:10:32 -04:00
Jeffrey Walton 2118ce8fea
Add Power8 support to cryptest.sh 2017-09-09 14:56:47 -04:00
Deadpikle 3771bc1305 Check for old vs new LLVM include dir (#492) 2017-09-08 21:28:24 -04:00
Deadpikle b14d65850d Fix missing header for Android cpu features (#489)
Thank you very much.
2017-09-08 15:43:06 -04:00
Jeffrey Walton b6f79af343
Clear GCC warnings with -Wall -Wextra 2017-09-05 18:03:46 -04:00
Jeffrey Walton f19b23d5b5
Clear GCC warnings with -Wall -Wextra 2017-09-05 16:50:23 -04:00
Jeffrey Walton 09023bf45e
Align buffers for Poly1305 and VMAC 2017-09-05 16:43:29 -04:00
Jeffrey Walton 37e02f9e0e
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
2017-09-05 16:28:00 -04:00
Jeffrey Walton 23b939c62b
Clear warnings under GCC with -Wall -Wextra 2017-09-05 12:23:12 -04:00
Jeffrey Walton b0f3b8ce17
Aligned buffers in AuthenticatedSymmetricCipherBase 2017-09-04 20:36:43 -04:00
Jeffrey Walton b18f74130b
Aligned buffers in CTR mode 2017-09-04 20:36:08 -04:00
Jeffrey Walton e2933070b6
Removed alignment asserts
Rijndael class will assert when it detects a problem.
2017-09-04 20:35:15 -04:00
Jeffrey Walton efe88c043b
Use aligned buffer for datatest.cpp 2017-09-04 20:07:47 -04:00
Jeffrey Walton a2223356b0
Use aligned buffer for CMAC 2017-09-04 19:49:45 -04:00
Jeffrey Walton d0eefdf32a
Use aligned buffer for Poly1305 nonce 2017-09-04 19:28:19 -04:00
Jeffrey Walton fe0a5ee8e8
Warn of under-aligned buffers when using AES in debug mode
This commit supports the upcoming AltiVec and Power8 processor. This commit affects a number of classes due to the ubiquitous use of AES. The commit adds debug asserts to warn of under-aligned and misaligned buffers in debug builds.
2017-09-04 12:01:44 -04:00