annotate nt/Xmd.patch @ 5602:c9e5612f5424

Support the MP library on recent FreeBSD, have it pass relevant tests. src/ChangeLog addition: 2011-11-26 Aidan Kehoe <kehoea@parhasard.net> * number-mp.c (bignum_to_string): Don't overwrite the accumulator we've just set up for this function. * number-mp.c (BIGNUM_TO_TYPE): mp_itom() doesn't necessarily do what this code used to think with negative numbers, it can treat them as unsigned ints. Subtract numbers from bignum_zero instead of multiplying them by -1 to convert them to their negative equivalents. * number-mp.c (bignum_to_int): * number-mp.c (bignum_to_uint): * number-mp.c (bignum_to_long): * number-mp.c (bignum_to_ulong): * number-mp.c (bignum_to_double): Use the changed BIGNUM_TO_TYPE() in these functions. * number-mp.c (bignum_ceil): * number-mp.c (bignum_floor): In these functions, be more careful about rounding to positive and negative infinity, respectively. Don't use the sign of QUOTIENT when working out out whether to add or subtract one, rather use the sign QUOTIENT would have if arbitrary-precision division were done. * number-mp.h: * number-mp.h (MP_GCD): Wrap #include <mp.h> in BEGIN_C_DECLS/END_C_DECLS. * number.c (Fbigfloat_get_precision): * number.c (Fbigfloat_set_precision): Don't attempt to call XBIGFLOAT_GET_PREC if this build doesn't support big floats.
author Aidan Kehoe <kehoea@parhasard.net>
date Sat, 26 Nov 2011 17:59:14 +0000
parents a86b2b5e0111
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
400
a86b2b5e0111 Import from CVS: tag r21-2-30
cvs
parents:
diff changeset
1 --- Xmd.h~ Thu Jun 08 23:20:40 1995
a86b2b5e0111 Import from CVS: tag r21-2-30
cvs
parents:
diff changeset
2 +++ Xmd.h Sun Mar 16 13:09:10 1997
a86b2b5e0111 Import from CVS: tag r21-2-30
cvs
parents:
diff changeset
3 @@ -150,8 +150,9 @@
a86b2b5e0111 Import from CVS: tag r21-2-30
cvs
parents:
diff changeset
4 typedef CARD16 BITS16;
a86b2b5e0111 Import from CVS: tag r21-2-30
cvs
parents:
diff changeset
5 typedef CARD8 BYTE;
a86b2b5e0111 Import from CVS: tag r21-2-30
cvs
parents:
diff changeset
6
a86b2b5e0111 Import from CVS: tag r21-2-30
cvs
parents:
diff changeset
7 +#ifndef WIN32
a86b2b5e0111 Import from CVS: tag r21-2-30
cvs
parents:
diff changeset
8 typedef CARD8 BOOL;
a86b2b5e0111 Import from CVS: tag r21-2-30
cvs
parents:
diff changeset
9 -
a86b2b5e0111 Import from CVS: tag r21-2-30
cvs
parents:
diff changeset
10 +#endif