| 1 |
#ifndef DSFMT_PARAMS521_H |
| 2 |
#define DSFMT_PARAMS521_H |
| 3 |
|
| 4 |
/* #define DSFMT_N 4 */ |
| 5 |
/* #define DSFMT_MAXDEGREE 544 */ |
| 6 |
#define DSFMT_POS1 3 |
| 7 |
#define DSFMT_SL1 25 |
| 8 |
#define DSFMT_MSK1 UINT64_C(0x000fbfefff77efff) |
| 9 |
#define DSFMT_MSK2 UINT64_C(0x000ffeebfbdfbfdf) |
| 10 |
#define DSFMT_MSK32_1 0x000fbfefU |
| 11 |
#define DSFMT_MSK32_2 0xff77efffU |
| 12 |
#define DSFMT_MSK32_3 0x000ffeebU |
| 13 |
#define DSFMT_MSK32_4 0xfbdfbfdfU |
| 14 |
#define DSFMT_FIX1 UINT64_C(0xcfb393d661638469) |
| 15 |
#define DSFMT_FIX2 UINT64_C(0xc166867883ae2adb) |
| 16 |
#define DSFMT_PCV1 UINT64_C(0xccaa588000000000) |
| 17 |
#define DSFMT_PCV2 UINT64_C(0x0000000000000001) |
| 18 |
#define DSFMT_IDSTR "dSFMT2-521:3-25:fbfefff77efff-ffeebfbdfbfdf" |
| 19 |
|
| 20 |
|
| 21 |
/* PARAMETERS FOR ALTIVEC */ |
| 22 |
#if defined(__APPLE__) /* For OSX */ |
| 23 |
#define ALTI_SL1 (vector unsigned int)(1, 1, 1, 1) |
| 24 |
#define ALTI_SL1_PERM \ |
| 25 |
(vector unsigned char)(3,4,5,6,7,29,29,29,11,12,13,14,15,0,1,2) |
| 26 |
#define ALTI_SL1_MSK \ |
| 27 |
(vector unsigned int)(0xffffffffU,0xfe000000U,0xffffffffU,0xfe000000U) |
| 28 |
#define ALTI_MSK (vector unsigned int)(DSFMT_MSK32_1, \ |
| 29 |
DSFMT_MSK32_2, DSFMT_MSK32_3, DSFMT_MSK32_4) |
| 30 |
#else /* For OTHER OSs(Linux?) */ |
| 31 |
#define ALTI_SL1 {1, 1, 1, 1} |
| 32 |
#define ALTI_SL1_PERM \ |
| 33 |
{3,4,5,6,7,29,29,29,11,12,13,14,15,0,1,2} |
| 34 |
#define ALTI_SL1_MSK \ |
| 35 |
{0xffffffffU,0xfe000000U,0xffffffffU,0xfe000000U} |
| 36 |
#define ALTI_MSK \ |
| 37 |
{DSFMT_MSK32_1, DSFMT_MSK32_2, DSFMT_MSK32_3, DSFMT_MSK32_4} |
| 38 |
#endif |
| 39 |
|
| 40 |
#endif /* DSFMT_PARAMS521_H */ |