{
static cl_I const doublefakul_table [] = {
1,
- 1UL,
- 1UL*2,
- 1UL*3,
+ UINT64_C(1),
+ UINT64_C(1)*2,
+ UINT64_C(1)*3,
#if (cl_value_len>=5)
- 1UL*2*4,
- 1UL*3*5,
+ UINT64_C(1)*2*4,
+ UINT64_C(1)*3*5,
#if (cl_value_len>=7)
- 1UL*2*4*6,
+ UINT64_C(1)*2*4*6,
#if (cl_value_len>=8)
- 1UL*3*5*7,
+ UINT64_C(1)*3*5*7,
#if (cl_value_len>=10)
- 1UL*2*4*6*8,
+ UINT64_C(1)*2*4*6*8,
#if (cl_value_len>=11)
- 1UL*3*5*7*9,
+ UINT64_C(1)*3*5*7*9,
#if (cl_value_len>=13)
- 1UL*2*4*6*8*10,
+ UINT64_C(1)*2*4*6*8*10,
#if (cl_value_len>=15)
- 1UL*3*5*7*9*11,
+ UINT64_C(1)*3*5*7*9*11,
#if (cl_value_len>=17)
- 1UL*2*4*6*8*10*12,
+ UINT64_C(1)*2*4*6*8*10*12,
#if (cl_value_len>=19)
- 1UL*3*5*7*9*11*13,
+ UINT64_C(1)*3*5*7*9*11*13,
#if (cl_value_len>=21)
- 1UL*2*4*6*8*10*12*14,
+ UINT64_C(1)*2*4*6*8*10*12*14,
#if (cl_value_len>=22)
- 1UL*3*5*7*9*11*13*15,
+ UINT64_C(1)*3*5*7*9*11*13*15,
#if (cl_value_len>=25)
- 1UL*2*4*6*8*10*12*14*16,
+ UINT64_C(1)*2*4*6*8*10*12*14*16,
#if (cl_value_len>=27)
- 1UL*3*5*7*9*11*13*15*17,
+ UINT64_C(1)*3*5*7*9*11*13*15*17,
#if (cl_value_len>=29)
- 1UL*2*4*6*8*10*12*14*16*18,
+ UINT64_C(1)*2*4*6*8*10*12*14*16*18,
#if (cl_value_len>=31)
- 1UL*3*5*7*9*11*13*15*17*19,
+ UINT64_C(1)*3*5*7*9*11*13*15*17*19,
#if (cl_value_len>=33)
- 1UL*2*4*6*8*10*12*14*16*18*20,
+ UINT64_C(1)*2*4*6*8*10*12*14*16*18*20,
#if (cl_value_len>=35)
- 1UL*3*5*7*9*11*13*15*17*19*21,
+ UINT64_C(1)*3*5*7*9*11*13*15*17*19*21,
#if (cl_value_len>=38)
- 1UL*2*4*6*8*10*12*14*16*18*20*22,
+ UINT64_C(1)*2*4*6*8*10*12*14*16*18*20*22,
#if (cl_value_len>=40)
- 1UL*3*5*7*9*11*13*15*17*19*21*23,
+ UINT64_C(1)*3*5*7*9*11*13*15*17*19*21*23,
#if (cl_value_len>=42)
- 1UL*2*4*6*8*10*12*14*16*18*20*22*24,
+ UINT64_C(1)*2*4*6*8*10*12*14*16*18*20*22*24,
#if (cl_value_len>=44)
- 1UL*3*5*7*9*11*13*15*17*19*21*23*25,
+ UINT64_C(1)*3*5*7*9*11*13*15*17*19*21*23*25,
#if (cl_value_len>=47)
- 1UL*2*4*6*8*10*12*14*16*18*20*22*24*26,
+ UINT64_C(1)*2*4*6*8*10*12*14*16*18*20*22*24*26,
#if (cl_value_len>=49)
- 1UL*3*5*7*9*11*13*15*17*19*21*23*25*27,
+ UINT64_C(1)*3*5*7*9*11*13*15*17*19*21*23*25*27,
#if (cl_value_len>=52)
- 1UL*2*4*6*8*10*12*14*16*18*20*22*24*26*28,
+ UINT64_C(1)*2*4*6*8*10*12*14*16*18*20*22*24*26*28,
#if (cl_value_len>=54)
- 1UL*3*5*7*9*11*13*15*17*19*21*23*25*27*29,
+ UINT64_C(1)*3*5*7*9*11*13*15*17*19*21*23*25*27*29,
#if (cl_value_len>=57)
- 1UL*2*4*6*8*10*12*14*16*18*20*22*24*26*28*30,
+ UINT64_C(1)*2*4*6*8*10*12*14*16*18*20*22*24*26*28*30,
#if (cl_value_len>=59)
- 1UL*3*5*7*9*11*13*15*17*19*21*23*25*27*29*31,
+ UINT64_C(1)*3*5*7*9*11*13*15*17*19*21*23*25*27*29*31,
#if (cl_value_len>=62)
- 1UL*2*4*6*8*10*12*14*16*18*20*22*24*26*28*30*32,
+ UINT64_C(1)*2*4*6*8*10*12*14*16*18*20*22*24*26*28*30*32,
#if (cl_value_len>=64)
- 1UL*3*5*7*9*11*13*15*17*19*21*23*25*27*29*31*33,
+ UINT64_C(1)*3*5*7*9*11*13*15*17*19*21*23*25*27*29*31*33,
#if (cl_value_len>=67)
...
#endif
{
static uintV const fakul_table [] = {
1,
- 1UL,
- 1UL*2,
+ UINT64_C(1),
+ UINT64_C(1)*2,
#if (cl_value_len>=4)
- 1UL*2*3,
+ UINT64_C(1)*2*3,
#if (cl_value_len>=6)
- 1UL*2*3*4,
+ UINT64_C(1)*2*3*4,
#if (cl_value_len>=8)
- 1UL*2*3*4*5,
+ UINT64_C(1)*2*3*4*5,
#if (cl_value_len>=11)
- 1UL*2*3*4*5*6,
+ UINT64_C(1)*2*3*4*5*6,
#if (cl_value_len>=14)
- 1UL*2*3*4*5*6*7,
+ UINT64_C(1)*2*3*4*5*6*7,
#if (cl_value_len>=17)
- 1UL*2*3*4*5*6*7*8,
+ UINT64_C(1)*2*3*4*5*6*7*8,
#if (cl_value_len>=20)
- 1UL*2*3*4*5*6*7*8*9,
+ UINT64_C(1)*2*3*4*5*6*7*8*9,
#if (cl_value_len>=23)
- 1UL*2*3*4*5*6*7*8*9*10,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10,
#if (cl_value_len>=27)
- 1UL*2*3*4*5*6*7*8*9*10*11,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10*11,
#if (cl_value_len>=30)
- 1UL*2*3*4*5*6*7*8*9*10*11*12,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10*11*12,
#if (cl_value_len>=34)
- 1UL*2*3*4*5*6*7*8*9*10*11*12*13,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10*11*12*13,
#if (cl_value_len>=38)
- 1UL*2*3*4*5*6*7*8*9*10*11*12*13*14,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10*11*12*13*14,
#if (cl_value_len>=42)
- 1UL*2*3*4*5*6*7*8*9*10*11*12*13*14*15,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10*11*12*13*14*15,
#if (cl_value_len>=46)
- 1UL*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16,
#if (cl_value_len>=50)
- 1UL*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17,
#if (cl_value_len>=54)
- 1UL*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18,
#if (cl_value_len>=58)
- 1UL*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19,
#if (cl_value_len>=63)
- 1UL*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20,
+ UINT64_C(1)*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17*18*19*20,
#if (cl_value_len>=67)
...
#endif
// Miscellaneous.
extern int test_I_io (int iterations);
extern int test_I_GV (int iterations);
+extern int test_I_factorial(int iterations);
+extern int test_I_doublefactorial(int iterations);
#define RUN(tester,iterations) \
std::cout << "Testing "#tester"..." << std::endl; \
// Miscellaneous.
RUN(test_I_io,iterations);
RUN(test_I_GV,iterations);
+ RUN(test_I_factorial, iterations);
+ RUN(test_I_doublefactorial, iterations);
return error;
}