| diff --git a/include/dieharder/libdieharder.h b/include/dieharder/libdieharder.h |
| index 2138ebf..f6d471b 100644 |
| --- a/include/dieharder/libdieharder.h |
| +++ b/include/dieharder/libdieharder.h |
| @@ -6,6 +6,8 @@ |
| |
| #include "copyright.h" |
| |
| +#define _GNU_SOURCE |
| + |
| /* To enable large file support */ |
| #define _FILE_OFFSET_BITS 64 |
| |
| @@ -16,13 +18,11 @@ |
| #include <sys/time.h> |
| |
| /* This turns on uint macro in c99 */ |
| -#define __USE_MISC 1 |
| #include <sys/types.h> |
| #include <sys/stat.h> |
| #include <unistd.h> |
| |
| /* This turns on M_PI in math.h */ |
| -#define __USE_BSD 1 |
| #include <math.h> |
| #include <limits.h> |
| #include <gsl/gsl_rng.h> |
| From aee56b67080a5a8732c12216ef4415f315f35e4a Mon Sep 17 00:00:00 2001 |
| From: Alon Bar-Lev <alon.barlev@gmail.com> |
| Date: Sun, 24 Feb 2019 00:04:55 +0200 |
| Subject: [PATCH 1/2] rgb_operm: convert to noop as implementation missing |
| |
| --- |
| include/dieharder/rgb_operm.h | 2 ++ |
| 1 file changed, 2 insertions(+) |
| |
| diff --git a/include/dieharder/rgb_operm.h b/include/dieharder/rgb_operm.h |
| index c48fa37..f33fc1f 100644 |
| --- a/include/dieharder/rgb_operm.h |
| +++ b/include/dieharder/rgb_operm.h |
| @@ -1,3 +1,4 @@ |
| +#if 0 |
| /* |
| * rgb_operm test header. |
| */ |
| @@ -36,3 +37,4 @@ static Dtest rgb_operm_dtest __attribute__((unused)) = { |
| * a data stream of rands from x_i to x_{i+k} to compute c[][]. |
| */ |
| unsigned int rgb_operm_k; |
| +#endif |
| -- |
| 2.19.2 |
| |
| From b1140059cab9a5b2847dd312087d44d58fe61263 Mon Sep 17 00:00:00 2001 |
| From: Alon Bar-Lev <alon.barlev@gmail.com> |
| Date: Sun, 24 Feb 2019 00:10:00 +0200 |
| Subject: [PATCH 2/2] dab_filltree2: inline cannot have prototype nor can it be |
| non static |
| |
| --- |
| libdieharder/dab_filltree.c | 37 ++++++++++++++------------- |
| libdieharder/dab_filltree2.c | 48 +++++++++++++++++------------------- |
| 2 files changed, 41 insertions(+), 44 deletions(-) |
| |
| diff --git a/libdieharder/dab_filltree.c b/libdieharder/dab_filltree.c |
| index 9cc5ce7..3ed6b00 100644 |
| --- a/libdieharder/dab_filltree.c |
| +++ b/libdieharder/dab_filltree.c |
| @@ -34,7 +34,24 @@ static double targetData[] = { |
| 0.0, 0.0, 0.0, 0.0, 0.13333333, 0.20000000, 0.20634921, 0.17857143, 0.13007085, 0.08183633, 0.04338395, 0.01851828, 0.00617270, 0.00151193, 0.00023520, 0.00001680, 0.00000000, 0.00000000, 0.00000000, 0.00000000 |
| }; |
| |
| -inline int insert(double x, double *array, unsigned int startVal); |
| +static inline int insert(double x, double *array, unsigned int startVal) { |
| + uint d = (startVal + 1) / 2; |
| + uint i = startVal; |
| + while (d > 0) { |
| + if (array[i] == 0) { |
| + array[i] = x; |
| + return -1; |
| + } |
| + if (array[i] < x) { |
| + i += d; |
| + } else { |
| + i -= d; |
| + } |
| + d /= 2; |
| + } |
| + return i; |
| +} |
| + |
| |
| int dab_filltree(Test **test,int irun) { |
| int size = (ntuple == 0) ? 32 : ntuple; |
| @@ -105,24 +122,6 @@ int dab_filltree(Test **test,int irun) { |
| } |
| |
| |
| -inline int insert(double x, double *array, unsigned int startVal) { |
| - uint d = (startVal + 1) / 2; |
| - uint i = startVal; |
| - while (d > 0) { |
| - if (array[i] == 0) { |
| - array[i] = x; |
| - return -1; |
| - } |
| - if (array[i] < x) { |
| - i += d; |
| - } else { |
| - i -= d; |
| - } |
| - d /= 2; |
| - } |
| - return i; |
| -} |
| - |
| #include<time.h> |
| |
| int main_filltree(int argc, char **argv) { |
| diff --git a/libdieharder/dab_filltree2.c b/libdieharder/dab_filltree2.c |
| index 1e33af2..7102d3c 100644 |
| --- a/libdieharder/dab_filltree2.c |
| +++ b/libdieharder/dab_filltree2.c |
| @@ -92,7 +92,29 @@ static double targetData[128] = { // size=128, generated from 6e9 samples |
| 0.00000000000e+00,0.00000000000e+00,0.00000000000e+00,0.00000000000e+00, |
| }; |
| |
| -inline int insertBit(uint x, uchar *array, uint *i, uint *d); |
| +/* |
| + * Insert a bit into the tree, represented by an array. |
| + * A value of one is marked; zero is unmarked. |
| + * The function returns -2 is still on the path. |
| + * The function returns -1 if the path ends by marking a node. |
| + * The function returns >= 0 if the path went too deep; the |
| + * returned value is the last position of the path. |
| + */ |
| +static inline int insertBit(uint x, uchar *array, uint *i, uint *d) { |
| + if (x != 0) { |
| + *i += *d; |
| + } else { |
| + *i -= *d; |
| + } |
| + *d /= 2; |
| + |
| + if (array[*i] == 0) { |
| + array[*i] = 1; |
| + return -1; |
| + } |
| + if (*d == 0) return *i; |
| + else return -2; |
| +} |
| |
| int dab_filltree2(Test **test, int irun) { |
| int size = (ntuple == 0) ? 128 : ntuple; |
| @@ -173,27 +195,3 @@ int dab_filltree2(Test **test, int irun) { |
| return(0); |
| } |
| |
| -/* |
| - * Insert a bit into the tree, represented by an array. |
| - * A value of one is marked; zero is unmarked. |
| - * The function returns -2 is still on the path. |
| - * The function returns -1 if the path ends by marking a node. |
| - * The function returns >= 0 if the path went too deep; the |
| - * returned value is the last position of the path. |
| - */ |
| -inline int insertBit(uint x, uchar *array, uint *i, uint *d) { |
| - if (x != 0) { |
| - *i += *d; |
| - } else { |
| - *i -= *d; |
| - } |
| - *d /= 2; |
| - |
| - if (array[*i] == 0) { |
| - array[*i] = 1; |
| - return -1; |
| - } |
| - if (*d == 0) return *i; |
| - else return -2; |
| -} |
| - |
| -- |
| 2.19.2 |
| |