7 #include "cln/integer.h"
12 #include "cl_random_impl.h"
18 const cl_I testrandom_I (random_state& randomstate)
20 var uint32 ran = random32(randomstate);
21 var cl_boolean negative = (cl_boolean)(ran & 1);
22 var cl_boolean algo = (cl_boolean)((ran>>1) & 1);
24 ran = ran & ((1<<8)-1);
31 ran <= 200 ? (ran-153)/4 : // 5..11
36 num_stack_alloc_1(len,MSDptr=,);
38 { testrandom_UDS(randomstate,MSDptr,len); }
40 { random_UDS(randomstate,MSDptr,len); }
41 var cl_I x = UDS_to_I(MSDptr,len);
42 return (negative ? -x : x);