Commit Graph

230 Commits

Author SHA1 Message Date
Frank Denis
3295752821 Of course, GNU ld doesn't know about .private_extern 2016-03-22 21:26:39 +01:00
Frank Denis
bafc9c70e1 Only use .private_extern if this is supported 2016-03-22 20:42:07 +01:00
Frank Denis
0131a72082 BLAKE2b AVX2 implementation
By the marvellous Samuel Neves - https://github.com/sneves/blake2-avx2
2016-03-17 16:24:04 +01:00
Frank Denis
7611ea6018 Add AVX2 detection 2016-03-17 11:15:18 +01:00
Frank Denis
f92cfae9d8 Have --enable-opt use -O3, not -Ofast 2016-03-08 12:53:34 +01:00
Frank Denis
aafff07689 Add support for running the test suite with Valgrind 2016-03-06 01:35:06 +01:00
Frank Denis
846a84b721 Version bump (not released yet) 2016-01-13 09:49:20 +01:00
Frank Denis
a78161981c Check for _mm_set_epi64x() usability in the SSE2 test 2015-12-29 23:18:28 +01:00
Frank Denis
d740901df0 Have --enable-opt imply -Ofast 2015-12-29 15:46:23 +01:00
Frank Denis
953e959fba Try --high-entropy-va on MinGW 2015-12-27 20:53:08 +01:00
Frank Denis
c08c21887e Version bump 2015-12-23 21:15:12 +01:00
Frank Denis
90c49184fa --enable-opt now enables -save-temps; remove -flto 2015-12-18 01:11:41 +01:00
Frank Denis
3796145631 autoconf: check that named registers work 2015-12-06 18:30:00 +01:00
Frank Denis
5b62287f98 Add a --enable-opt compile-time switch 2015-12-05 17:56:42 +01:00
Frank Denis
1e71f849b5 1.0.7 (not released yet) 2015-11-25 16:12:42 +01:00
Frank Denis
b74f644d3f Replace CPU_ALIGNED_ACCESS_REQUIRED with CPU_UNALIGNED_ACCESS
Instead of defining a macro when aligned memory access is required,
define one when unaligned memory access is supported.

Safer when cross-compiling or not using autoconf
2015-11-16 22:01:19 +01:00
Frank Denis
eb8119d65c Enable 128-bit arithmetic if __int128 is available 2015-11-15 18:16:15 +01:00
Frank Denis
dd238f518d Bump major 2015-11-14 15:33:15 +01:00
Frank Denis
fb28119a38 Check inline assembly code using __asm__ __volatile__ 2015-11-14 01:21:55 +01:00
Frank Denis
18906a078c Unfortunately, some assemblers still don't know about AVX opcodes 2015-11-04 23:29:27 +01:00
Frank Denis
3f3969ffae EMSCRIPTEN -> __EMSCRIPTEN__ 2015-11-04 22:43:25 +01:00
Frank Denis
049fd8fd6a Add sodium_runtime_has_avx() 2015-11-03 14:19:22 +01:00
Frank Denis
2a77b18ad8 Version bump (not released yet) 2015-11-01 15:45:36 +01:00
Frank Denis
19308c5d5b Bump the library major version, since some functions have been removed
Even though these functions were exported, the number of applications
using them directly is very likely to be zero.

Still, bump the major library version to be safe and compliant.
2015-11-01 12:23:21 +01:00
Frank Denis
920c459ac3 Link optimized compression functions for Blake2b 2015-11-01 06:09:04 +01:00
Frank Denis
26fdfec99b Add sodium_runtime_has_ssse3() and sodium_runtime_has_sse41() 2015-10-31 23:42:44 +01:00
Frank Denis
f11da70ce2 Package version bump. No ABI version changes required. 2015-10-24 19:12:49 +02:00
Frank Denis
e2124999cc doesn't -> does not 2015-10-19 00:24:39 +02:00
Frank Denis
ec7b8e5605 Version bump [but still not released] 2015-10-14 14:43:22 +02:00
Frank Denis
84d92fc1bf Try to enable specific cflags before testing each intructions set 2015-10-10 20:10:26 +02:00
Frank Denis
f267352eec Use SIMD-specific compiler flags only for files needing them 2015-10-10 19:24:30 +02:00
Frank Denis
d4ff80e7a0 Define __SSSE3__ if required 2015-10-10 18:32:10 +02:00
Frank Denis
6ca06314fc Do not try to compile aesni code if this is not going to compile 2015-10-10 18:22:03 +02:00
Frank Denis
e83e9b2d8e Check for AESNI & PCLMUL presence/usability 2015-10-10 17:57:47 +02:00
Frank Denis
ab2e86748e Replace the aes256gcm implementation with Romain Dolbeau's implementation
which is slightly faster than mine.
Reimplement features from the previous implementation: add batch mode and
use two passes in the decryption function in order to check the tag before
decrypting.
2015-10-10 16:21:08 +02:00
Frank Denis
571bfc99c8 Check for ssse3 presence 2015-10-07 23:26:13 +02:00
Frank Denis
e8e5d2fc18 Add crypto_aead_aes256gcm_aesni_*
Requires a CPU with aesni and pclmulqdq
This is a private branch for a reason. It is not going to be merged as-is.
2015-10-07 23:09:19 +02:00
Frank Denis
46f71fba9e Check for getpid(2) presence instead of checking for Visual Studio 2015-09-13 15:04:26 +02:00
Frank Denis
c1f749e68a Keep shell variables names consistent with their related C macros. 2015-09-04 15:37:31 +02:00
Matthijs van Duin
cfa9e95b6c improve test for unaligned access
check target attribute on ARM
2015-09-04 02:29:34 +02:00
Frank Denis
7fca230be8 Nits after pnacl merge 2015-08-02 13:53:22 +02:00
Frank Denis
f610f781f2 Merge remote-tracking branch 'arbinger/pnacl' into nacl
* arbinger/pnacl:
  removed comment
  Added .final and .nexe output files to CLEANFILES
  revert original hack
  Initial patch for Chrome NaCl implementation
  Added patch to obtain random bytes for Chrome NaCl via IRT -- allows build with NaCl SDK toolchain
2015-08-02 12:54:05 +02:00
Syrone Wong
4074470a31 Fix _FORTIFY_SOURCE redefined issue 2015-08-02 09:36:52 +08:00
James Robson
34a4931d9a Initial patch for Chrome NaCl implementation 2015-06-22 13:02:21 -05:00
Frank Denis
b5fff1fcf5 Version bump 2015-04-26 17:09:00 +02:00
Frank Denis
33357dc52e Running the JS tests requires the filesystem. 2015-01-18 00:46:48 +01:00
Frank Denis
98c96f4c99 No browser, no filesystem support required 2015-01-18 00:42:34 +01:00
Frank Denis
e7f410de10 Emscripten: don't use a memory init file any more.
It doesn't take that long to load the module, and it's going to make
users' life way easier.
2015-01-17 22:11:10 +01:00
Frank Denis
201821065d Reserve slots for function pointers 2015-01-17 18:33:25 +01:00
Frank Denis
2c15c81ba5 Revert 17932c782e
It broke compilation on OpenBSD.
2015-01-15 16:21:09 +01:00