diff options
Diffstat (limited to 'src/new32.c')
| -rw-r--r-- | src/new32.c | 10 | 
1 files changed, 5 insertions, 5 deletions
diff --git a/src/new32.c b/src/new32.c index 9136115..654b793 100644 --- a/src/new32.c +++ b/src/new32.c @@ -9,16 +9,16 @@ static const unsigned int divtab[244] = {  	[243] = 0x010d + 1l  }; -#define FASTDIV(n, C) (((n) * (C)) >> 16) -#define FASTMOD(n, d, C) ((n) - (d) * FASTDIV((n), (C))) +#define FASTDIV(n, d) (((n) * divtab[d]) >> 16) +#define FASTMOD(n, d) ((n) - (d) * FASTDIV((n), (d)))  int new32(int i, int x, int y)  {  	int A, B, C; -	A = FASTDIV(i, divtab[y]); -	B = FASTMOD(A, 3, divtab[3]); -	C = FASTMOD(A + x, 3, divtab[3]); +	A = FASTDIV(i, y); +	B = FASTMOD(A, 3); +	C = FASTMOD(A + x, 3);  	return i + (C - B) * y;  }  | 
