--- 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 /* This turns on uint macro in c99 */ -#define __USE_MISC 1 #include #include #include /* This turns on M_PI in math.h */ -#define __USE_BSD 1 #include #include #include From aee56b67080a5a8732c12216ef4415f315f35e4a Mon Sep 17 00:00:00 2001 From: Alon Bar-Lev 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(+) --- 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 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(-) --- 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 int main_filltree(int argc, char **argv) { --- 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