Jeffrey Walton
a84f568ee2
Add subfunc to CpuId for AVX and above
2017-08-11 22:56:01 -04:00
Jeffrey Walton
f02503d08f
Sync with Upstream master
2017-08-11 17:27:19 -04:00
Jeffrey Walton
f5aa6f1f06
Cast enums to int for comparison
2017-08-11 17:15:13 -04:00
Jeffrey Walton
953252e44d
Move from 'static' to 'enum' for class constants
...
Enums don't take up space in class objects. Its should result in smaller objects and faster code
2017-08-11 17:13:15 -04:00
Jeffrey Walton
9ab233b52a
Switch from 'static const' to 'enum' for class constants
...
Enums do not take up space in a class. It should lead to smaller objects and faster runtimes
2017-08-11 16:09:28 -04:00
Jeffrey Walton
93a8f9e9b7
Fix compile with GCC on Solaris
2017-08-11 16:08:28 -04:00
Jeffrey Walton
5b945a5412
Update for earlier Apple compilers, like Apple Clang 6 and 8
2017-08-11 14:24:05 -04:00
Jeffrey Walton
8a66353b2c
Test <arm_acle.h> include under Apple
...
This is a compile test
2017-08-11 12:31:04 -04:00
Jeffrey Walton
22b7d74e1f
Test Apple ARM64 runtime detection
...
This is a compile test
2017-08-11 11:57:30 -04:00
Jeffrey Walton
a46377caf7
Clear "C4189: 'keys': local variable is initialized but not referenced"
2017-08-11 08:32:09 -04:00
Jeffrey Walton
f7978a6529
Sync with Upstream master
2017-08-11 07:53:37 -04:00
Jeffrey Walton
28a1fc2c60
Sync with Upstream master
2017-08-11 07:36:27 -04:00
Jeffrey Walton
173dd0b530
Add AES for ARMv8 (Issue 458)
2017-08-11 07:31:09 -04:00
Jeffrey Walton
6c28b521bd
Fix Illegal Instruction under SSE2+SSSE3
...
It appears SSE4.1 crept into our SSE2+SSSE3 implementation. We'll revisit it in the future
2017-08-11 06:43:14 -04:00
Jeffrey Walton
0c194bbc46
Fix "SSE4.2 instruction set not enabled"
...
Also see https://gcc.gnu.org/ml/gcc-help/2017-08/msg00015.html
2017-08-11 05:28:36 -04:00
Jeffrey Walton
ce96a7974d
Sync with Upstream master
2017-08-10 23:04:12 -04:00
Jeffrey Walton
e5b1be035e
Add iOS testing to Travis
2017-08-10 22:59:00 -04:00
Jeffrey Walton
70a0ca0826
Try to enable Travis iOS testing
...
Take 18
2017-08-10 22:37:20 -04:00
Jeffrey Walton
7907742c1a
Try to enable Travis iOS testing
...
Take 17
2017-08-10 22:10:47 -04:00
Jeffrey Walton
0b31e7ff5e
Fix broken compiler under Apple Clang for ARMv8
...
Undefined symbols for architecture arm64:
"CryptoPP::CRC32_Update_ARMV8(unsigned char const*, unsigned long, unsigned int&)", referenced from:
CryptoPP::CRC32::Update(unsigned char const*, unsigned long) in libcryptopp.a(crc.o)
"CryptoPP::CRC32C_Update_ARMV8(unsigned char const*, unsigned long, unsigned int&)", referenced from:
CryptoPP::CRC32C::Update(unsigned char const*, unsigned long) in libcryptopp.a(crc.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [cryptest.exe] Error 1
2017-08-10 22:08:40 -04:00
Jeffrey Walton
4a6cdc34a5
Try to enable Travis iOS testing
...
Take 16
2017-08-10 21:19:29 -04:00
Jeffrey Walton
c99beec2cd
Fix "error: use of undeclared identifier 'NULL'" on iOS
2017-08-10 21:18:29 -04:00
Jeffrey Walton
7cbadb43f9
Try to enable Travis iOS testing
...
Take 15
2017-08-10 21:11:33 -04:00
Jeffrey Walton
9df1c3b09b
Try to enable Travis iOS testing
...
Take 14
2017-08-10 21:07:20 -04:00
Jeffrey Walton
cea2249608
Try to enable Travis iOS testing
...
Take 13
2017-08-10 21:01:24 -04:00
Jeffrey Walton
2d97cf8bf8
Try to enable Travis iOS testing
...
Take 12
2017-08-10 20:51:07 -04:00
Jeffrey Walton
eae89e2af0
Try to enable Travis iOS testing
...
Take 11
2017-08-10 20:33:39 -04:00
Jeffrey Walton
6392bcc69d
Try to enable Travis iOS testing
...
Take 10
2017-08-10 20:24:15 -04:00
Jeffrey Walton
b5e2980664
Try to enable Travis iOS testing
...
Take 8
2017-08-10 20:18:56 -04:00
Jeffrey Walton
60ec7dff59
Try to enable Travis iOS testing
...
Take 7
2017-08-10 20:14:18 -04:00
Jeffrey Walton
c9ad2dbb51
Try to enable Travis iOS testing
...
Take 6
2017-08-10 20:08:10 -04:00
Jeffrey Walton
d9b15e8ab7
Try to enable Travis iOS testing
...
Take 6
2017-08-10 20:06:19 -04:00
Jeffrey Walton
89b937bbd7
Try to enable Travis iOS testing
...
Take 5
2017-08-10 19:58:43 -04:00
Jeffrey Walton
d79d14b3ef
Try to enable Travis iOS testing
...
Take 4
2017-08-10 19:55:09 -04:00
Jeffrey Walton
12064f03ee
Try to enable Travis iOS testing
...
Take 3
2017-08-10 19:53:09 -04:00
Jeffrey Walton
bf47e175e3
Try to enable Travis iOS testing
...
Take 2
2017-08-10 19:50:41 -04:00
Jeffrey Walton
e5d99322fd
Try to enable Travis iOS testing
...
Take 1
2017-08-10 14:35:41 -04:00
Jeffrey Walton
69b3a7a664
Fix compile on Solaris 11.3 under GCC and SunCC
2017-08-09 00:14:54 -04:00
Jeffrey Walton
b7c7874d15
Defer on cast from wor32* to __m128i*
...
It appears this is optimized better, and it saves 0.1 cpb
2017-08-08 20:49:44 -04:00
Jeffrey Walton
0b8d6465bd
Use consistent naming of <class>_<inner class>_<func>_<arch>
2017-08-08 19:10:56 -04:00
Jeffrey Walton
e797418fbf
Fix Visual Studio 2017 MSC version number
2017-08-08 06:54:57 -04:00
Jeffrey Walton
6590a928ce
Add Android ARMv8 guards
2017-08-07 21:04:23 -04:00
Jeffrey Walton
b4172f3dd0
Sync with Upstream master
2017-08-07 19:05:01 -04:00
Jeffrey Walton
24bc2b8567
Add HMAC(SHA256) benchmark
2017-08-07 19:04:14 -04:00
Jeffrey Walton
c45c262d2c
Update Android defines
2017-08-07 13:43:40 -04:00
Jeffrey Walton
a8cbfc52fc
__android__ → __ANDROID__
...
Also see https://stackoverflow.com/q/6374523/608639
2017-08-07 12:18:39 -04:00
Jeffrey Walton
42d91b76fc
Fix compile under Clang 3.5 due to use of SSE4.1
...
Both Apple and LLVM Clang want -msse4.2 even when only SSE4.1 is used. Sidestep it because we don't know how it will affect some of the lower end Atoms.
84877:/usr/include/clang/3.5.0/include/nmmintrin.h:28:2: error: "SSE4.2 instruction set not enabled"
84878:#error "SSE4.2 instruction set not enabled"
84880:rijndael-simd.cpp:466:26: error: use of undeclared identifier '_mm_extract_epi32'; did you mean '_mm_extract_epi16'?
84887:rijndael-simd.cpp:480:11: error: use of undeclared identifier '_mm_insert_epi32'; did you mean '_mm_insert_epi16'?
84894:rijndael-simd.cpp:485:11: error: use of undeclared identifier '_mm_insert_epi32'; did you mean '_mm_insert_epi16'?
...
2017-08-07 12:03:17 -04:00
Jeffrey Walton
a8b3327265
Add Android CPU feature detection for NEON
...
Also see https://developer.android.com/ndk/guides/cpu-features.html
2017-08-07 11:33:12 -04:00
Jeffrey Walton
d95a38a9fc
Add Android CPU feature detection code
...
Also see https://developer.android.com/ndk/guides/cpu-features.html
2017-08-07 11:20:14 -04:00
Jeffrey Walton
a04dda56fa
Separate Aarch32 and Aarch64 guards
...
Also see https://sourceware.org/ml/libc-help/2017-08/msg00012.html
2017-08-07 10:37:02 -04:00