packages feed

mersenne-random 0.1.1 → 0.1.2

raw patch · 4 files changed

+32/−6 lines, 4 files

Files

System/Random/Mersenne.hs view
@@ -435,7 +435,7 @@ foreign import ccall unsafe "SFMT.h gen_rand32"     c_gen_rand32            :: IO UInt32 -foreign import ccall unsafe "SFMT.h gen_rand64_mix"+foreign import ccall unsafe "SFMT_wrap.h gen_rand64_mix_wrap"     c_gen_rand64_mix        :: IO UInt64  #else@@ -456,13 +456,13 @@ -- 32bit integer  #if WORD_SIZE_IN_BITS < 64-foreign import ccall unsafe "SFMT.h genrand_real2"+foreign import ccall unsafe "SFMT_wrap.h genrand_real2_wrap"     c_genrand_real2         :: IO CDouble  -- foreign import ccall unsafe "SFMT.h genrand_res53_mix" --     c_genrand_res53_mix     :: IO CDouble #else-foreign import ccall unsafe "SFMT.h genrand_res53"+foreign import ccall unsafe "SFMT_wrap.h genrand_res53_wrap"     c_genrand_res53         :: IO CDouble #endif 
+ cbits/SFMT_wrap.c view
@@ -0,0 +1,16 @@+#include "SFMT.h"++uint64_t gen_rand64_mix_wrap(void)+{+    return gen_rand64_mix();+}++double genrand_real2_wrap(void)+{+    return genrand_real2();+}++double genrand_res53_wrap()+{+    return genrand_res53();+}
+ include/SFMT_wrap.h view
@@ -0,0 +1,10 @@+#ifndef SFMT_WRAP_H+#define SFMT_WRAP_H++#include "SFMT.h"++uint64_t gen_rand64_mix_wrap(void);+double genrand_real2_wrap(void);+double genrand_res53_wrap();++#endif /* SFMT_WRAP_H */
mersenne-random.cabal view
@@ -1,5 +1,5 @@ name:            mersenne-random-version:         0.1.1+version:         0.1.2 homepage:        http://code.haskell.org/~dons/code/mersenne-random synopsis:        Generate high quality pseudorandom numbers using a SIMD Fast Mersenne Twister description:@@ -101,7 +101,7 @@      ghc-options:     -Wall -O2 -fvia-C -fexcess-precision -    c-sources:        cbits/SFMT.c+    c-sources:        cbits/SFMT.c cbits/SFMT_wrap.c     include-dirs:     include-    includes:         SFMT.h+    includes:         SFMT.h SFMT_wrap.h     install-includes: SFMT.h