diff options
Diffstat (limited to 'src/benchmarks/cfrac/pcvt.h')
| -rw-r--r-- | src/benchmarks/cfrac/pcvt.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/benchmarks/cfrac/pcvt.h b/src/benchmarks/cfrac/pcvt.h new file mode 100644 index 0000000..e2dd724 --- /dev/null +++ b/src/benchmarks/cfrac/pcvt.h @@ -0,0 +1,32 @@ +/* + * Machine dependent file used for conversion routines + * (e.g. atop, ptoa, itop, ptoi, etc) + */ + +/* + * For pXtop: (X = {i,u,l,ul,d}) + */ +#define INTSIZE 2 /* floor(log[Base](2*(MAXINT+1))) */ +#define LONGSIZE 2 /* floor(log[Base](2*(MAXLONG+1))) */ +#define DOUBLESIZE 129 /* double precision size = log[base](HUGE) */ + +/* + * For ptoX + */ +#define MAXINT (int) ((unsigned int) ~0 >> 1) +#define MAXLONG (long) ((unsigned long) ~0 >> 1) +#define MAXUNSIGNED (~ (unsigned int) 0) +#define MAXUNSIGNEDLONG (~ (unsigned long) 0L) + +#define MAXACC (~ (accumulator) 0) + +/* + * aBase - Ascii base (ptoa) + * There are aDigits Ascii digits per precision digit, pDigits. + * At least one of { aDigits, pDigits } <= (MAXINT / the maximum posit value). + */ +#define aDigits 525 /* aDigits/pDigits >~= log[aBase](Base) */ +#define pDigits 109 /* 525/109=4.8165>log[10](65536)=4.816479931 */ +#define aBase 10 /* string conversion base */ +#define aDigit 1000000000 /* must be power of aBase < MAXINT */ +#define aDigitLog 9 /* log[aBase] of aDigit */ |
