From 52f91804ff67246deab3d98c790f8b6b845afcde Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Fri, 8 Apr 2016 15:53:31 +0200 Subject: Some improvements: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Improve .gitignore - Improve portability of the makefile - Bring the translations, for gmp and tommath, used by the benchmark up to date Signed-off-by: Mattias Andrée --- bench/libtommath.h | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'bench/libtommath.h') diff --git a/bench/libtommath.h b/bench/libtommath.h index 4a81373..25da3ff 100644 --- a/bench/libtommath.h +++ b/bench/libtommath.h @@ -30,8 +30,15 @@ zunsetup(void) } #define FAST_RANDOM 0 +#define SECURE_RANDOM 0 +#define DEFAULT_RANDOM 0 +#define FASTEST_RANDOM 0 +#define LIBC_RAND_RANDOM 0 +#define LIBC_RANDOM_RANDOM 0 +#define LIBC_RAND48_RANDOM 0 #define QUASIUNIFORM 0 #define UNIFORM 1 +#define MODUNIFORM 2 #define zperror(x) ((void)0) #define zinit(a) mp_init(a) @@ -76,12 +83,18 @@ zunsetup(void) #define zstr_length(a, b) (mp_radix_size(a, b, &_tmp), _tmp) #define zstr(a, s) mp_toradix(a, s, 10) #define zptest(w, a, t) (mp_prime_is_prime(a, t, &_tmp), _tmp) /* Note, the witness is not returned. */ -#define zsave(a, s) ((_tmp = ((s) ? mp_signed_bin_size(a) : mp_to_signed_bin(a, s)))) -#define zload(a, s) mp_read_signed_bin(a, s, _tmp) +#define zload(a, s) mp_read_signed_bin(a, (unsigned char *)s, _tmp) #define zdiv(r, a, b) mp_div(a, b, r, 0) #define zmod(r, a, b) mp_mod(a, b, r) #define zdivmod(q, r, a, b) mp_div(a, b, q, r) +static int +zsave(z_t a, char *buf) +{ + _tmp = buf ? mp_signed_bin_size(a) : mp_to_signed_bin(a, (unsigned char *)buf); + return _tmp; +} + static void zsetu(z_t r, unsigned long long int val) { @@ -183,6 +196,12 @@ zrand(z_t r, int dev, int dist, z_t n) } break; + case MODUNIFORM: + mp_rand(r, bits); + if (zcmp(r, n) > 0) + zsub(r, r, n); + break; + default: abort(); } -- cgit v1.2.3-70-g09d2