diff options
author | Roland McGrath <roland@gnu.org> | 1996-05-07 21:04:52 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 1996-05-07 21:04:52 +0000 |
commit | b928942eaa0401de9189a2709188f584425f5ca6 (patch) | |
tree | 5e0654a6667b8ae0cc981d78532b166e4a1f51c4 /sysdeps | |
parent | fc38dc5be9c2757afc56a64a9570872c7e24887a (diff) | |
download | glibc-b928942eaa0401de9189a2709188f584425f5ca6.tar glibc-b928942eaa0401de9189a2709188f584425f5ca6.tar.gz glibc-b928942eaa0401de9189a2709188f584425f5ca6.tar.bz2 glibc-b928942eaa0401de9189a2709188f584425f5ca6.zip |
Updated from /src/gmp-2.0
Diffstat (limited to 'sysdeps')
115 files changed, 365 insertions, 198 deletions
diff --git a/sysdeps/alpha/add_n.s b/sysdeps/alpha/add_n.s index e1ad4600f5..426556e398 100644 --- a/sysdeps/alpha/add_n.s +++ b/sysdeps/alpha/add_n.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/addmul_1.s b/sysdeps/alpha/addmul_1.s index 8b168cb46d..048238ae9d 100644 --- a/sysdeps/alpha/addmul_1.s +++ b/sysdeps/alpha/addmul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/alphaev5/add_n.s b/sysdeps/alpha/alphaev5/add_n.s index 66cf82b3c3..1251a1fb71 100644 --- a/sysdeps/alpha/alphaev5/add_n.s +++ b/sysdeps/alpha/alphaev5/add_n.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/alphaev5/lshift.s b/sysdeps/alpha/alphaev5/lshift.s index 392b4249b8..ced55b7203 100644 --- a/sysdeps/alpha/alphaev5/lshift.s +++ b/sysdeps/alpha/alphaev5/lshift.s @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/alphaev5/rshift.s b/sysdeps/alpha/alphaev5/rshift.s index d20dde35b7..6e24fef965 100644 --- a/sysdeps/alpha/alphaev5/rshift.s +++ b/sysdeps/alpha/alphaev5/rshift.s @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/alphaev5/sub_n.s b/sysdeps/alpha/alphaev5/sub_n.s index c9f3a4ec3a..6743af50b8 100644 --- a/sysdeps/alpha/alphaev5/sub_n.s +++ b/sysdeps/alpha/alphaev5/sub_n.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/gmp-mparam.h b/sysdeps/alpha/gmp-mparam.h index 05c893f790..a3c66974de 100644 --- a/sysdeps/alpha/gmp-mparam.h +++ b/sysdeps/alpha/gmp-mparam.h @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #define BITS_PER_MP_LIMB 64 #define BYTES_PER_MP_LIMB 8 diff --git a/sysdeps/alpha/lshift.s b/sysdeps/alpha/lshift.s index aa8417bb6a..13bd24a427 100644 --- a/sysdeps/alpha/lshift.s +++ b/sysdeps/alpha/lshift.s @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/mul_1.s b/sysdeps/alpha/mul_1.s index 58a63dfa5d..a1f5a94b9e 100644 --- a/sysdeps/alpha/mul_1.s +++ b/sysdeps/alpha/mul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/rshift.s b/sysdeps/alpha/rshift.s index 037b776017..389054ab0e 100644 --- a/sysdeps/alpha/rshift.s +++ b/sysdeps/alpha/rshift.s @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/sub_n.s b/sysdeps/alpha/sub_n.s index 5200025b41..3c90c11697 100644 --- a/sysdeps/alpha/sub_n.s +++ b/sysdeps/alpha/sub_n.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/submul_1.s b/sysdeps/alpha/submul_1.s index 292b2c18b6..1ed0c6a8d9 100644 --- a/sysdeps/alpha/submul_1.s +++ b/sysdeps/alpha/submul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/alpha/udiv_qrnnd.S b/sysdeps/alpha/udiv_qrnnd.S index ce590ede6c..d3d2cee93d 100644 --- a/sysdeps/alpha/udiv_qrnnd.S +++ b/sysdeps/alpha/udiv_qrnnd.S @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. .set noreorder diff --git a/sysdeps/generic/add_n.c b/sysdeps/generic/add_n.c index 647548d4c1..9d71df110c 100644 --- a/sysdeps/generic/add_n.c +++ b/sysdeps/generic/add_n.c @@ -16,12 +16,13 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" -mp_limb +mp_limb_t #if __STDC__ mpn_add_n (mp_ptr res_ptr, mp_srcptr s1_ptr, mp_srcptr s2_ptr, mp_size_t size) #else @@ -32,7 +33,7 @@ mpn_add_n (res_ptr, s1_ptr, s2_ptr, size) mp_size_t size; #endif { - register mp_limb x, y, cy; + register mp_limb_t x, y, cy; register mp_size_t j; /* The loop counter and index J goes from -SIZE to -1. This way diff --git a/sysdeps/generic/addmul_1.c b/sysdeps/generic/addmul_1.c index 6156cab82c..3a5e21400a 100644 --- a/sysdeps/generic/addmul_1.c +++ b/sysdeps/generic/addmul_1.c @@ -19,23 +19,24 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" #include "longlong.h" -mp_limb +mp_limb_t mpn_addmul_1 (res_ptr, s1_ptr, s1_size, s2_limb) register mp_ptr res_ptr; register mp_srcptr s1_ptr; mp_size_t s1_size; - register mp_limb s2_limb; + register mp_limb_t s2_limb; { - register mp_limb cy_limb; + register mp_limb_t cy_limb; register mp_size_t j; - register mp_limb prod_high, prod_low; - register mp_limb x; + register mp_limb_t prod_high, prod_low; + register mp_limb_t x; /* The loop counter and index J goes from -SIZE to -1. This way the loop becomes faster. */ diff --git a/sysdeps/generic/cmp.c b/sysdeps/generic/cmp.c index e499b1ec44..4e9c60d86e 100644 --- a/sysdeps/generic/cmp.c +++ b/sysdeps/generic/cmp.c @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" @@ -37,7 +38,7 @@ mpn_cmp (op1_ptr, op2_ptr, size) #endif { mp_size_t i; - mp_limb op1_word, op2_word; + mp_limb_t op1_word, op2_word; for (i = size - 1; i >= 0; i--) { diff --git a/sysdeps/generic/divmod_1.c b/sysdeps/generic/divmod_1.c index c04032750c..f93841f63f 100644 --- a/sysdeps/generic/divmod_1.c +++ b/sysdeps/generic/divmod_1.c @@ -22,7 +22,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" @@ -39,21 +40,21 @@ the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* FIXME: We should be using invert_limb (or invert_normalized_limb) here (not udiv_qrnnd). */ -mp_limb +mp_limb_t #if __STDC__ mpn_divmod_1 (mp_ptr quot_ptr, mp_srcptr dividend_ptr, mp_size_t dividend_size, - mp_limb divisor_limb) + mp_limb_t divisor_limb) #else mpn_divmod_1 (quot_ptr, dividend_ptr, dividend_size, divisor_limb) mp_ptr quot_ptr; mp_srcptr dividend_ptr; mp_size_t dividend_size; - mp_limb divisor_limb; + mp_limb_t divisor_limb; #endif { mp_size_t i; - mp_limb n1, n0, r; + mp_limb_t n1, n0, r; int dummy; /* ??? Should this be handled at all? Rely on callers? */ @@ -75,7 +76,7 @@ mpn_divmod_1 (quot_ptr, dividend_ptr, dividend_size, divisor_limb) count_leading_zeros (normalization_steps, divisor_limb); if (normalization_steps != 0) { - mp_limb divisor_limb_inverted; + mp_limb_t divisor_limb_inverted; divisor_limb <<= normalization_steps; @@ -85,7 +86,7 @@ mpn_divmod_1 (quot_ptr, dividend_ptr, dividend_size, divisor_limb) /* Special case for DIVISOR_LIMB == 100...000. */ if (divisor_limb << 1 == 0) - divisor_limb_inverted = ~(mp_limb) 0; + divisor_limb_inverted = ~(mp_limb_t) 0; else udiv_qrnnd (divisor_limb_inverted, dummy, -divisor_limb, 0, divisor_limb); @@ -115,7 +116,7 @@ mpn_divmod_1 (quot_ptr, dividend_ptr, dividend_size, divisor_limb) } else { - mp_limb divisor_limb_inverted; + mp_limb_t divisor_limb_inverted; /* Compute (2**2N - 2**N * DIVISOR_LIMB) / DIVISOR_LIMB. The result is a (N+1)-bit approximation to 1/DIVISOR_LIMB, with the @@ -123,7 +124,7 @@ mpn_divmod_1 (quot_ptr, dividend_ptr, dividend_size, divisor_limb) /* Special case for DIVISOR_LIMB == 100...000. */ if (divisor_limb << 1 == 0) - divisor_limb_inverted = ~(mp_limb) 0; + divisor_limb_inverted = ~(mp_limb_t) 0; else udiv_qrnnd (divisor_limb_inverted, dummy, -divisor_limb, 0, divisor_limb); diff --git a/sysdeps/generic/divrem.c b/sysdeps/generic/divrem.c index 610bb7adc5..1fe865a10b 100644 --- a/sysdeps/generic/divrem.c +++ b/sysdeps/generic/divrem.c @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" @@ -39,7 +40,7 @@ the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ remainder in NUM. 3. NSIZE >= DSIZE, even if QEXTRA_LIMBS is non-zero. */ -mp_limb +mp_limb_t #if __STDC__ mpn_divrem (mp_ptr qp, mp_size_t qextra_limbs, mp_ptr np, mp_size_t nsize, @@ -54,7 +55,7 @@ mpn_divrem (qp, qextra_limbs, np, nsize, dp, dsize) mp_size_t dsize; #endif { - mp_limb most_significant_q_limb = 0; + mp_limb_t most_significant_q_limb = 0; switch (dsize) { @@ -66,8 +67,8 @@ mpn_divrem (qp, qextra_limbs, np, nsize, dp, dsize) case 1: { mp_size_t i; - mp_limb n1; - mp_limb d; + mp_limb_t n1; + mp_limb_t d; d = dp[0]; n1 = np[nsize - 1]; @@ -93,8 +94,8 @@ mpn_divrem (qp, qextra_limbs, np, nsize, dp, dsize) case 2: { mp_size_t i; - mp_limb n1, n0, n2; - mp_limb d1, d0; + mp_limb_t n1, n0, n2; + mp_limb_t d1, d0; np += nsize - 2; d1 = dp[1]; @@ -110,8 +111,8 @@ mpn_divrem (qp, qextra_limbs, np, nsize, dp, dsize) for (i = qextra_limbs + nsize - 2 - 1; i >= 0; i--) { - mp_limb q; - mp_limb r; + mp_limb_t q; + mp_limb_t r; if (i >= qextra_limbs) np--; @@ -123,7 +124,7 @@ mpn_divrem (qp, qextra_limbs, np, nsize, dp, dsize) /* Q should be either 111..111 or 111..110. Need special treatment of this rare case as normal division would give overflow. */ - q = ~(mp_limb) 0; + q = ~(mp_limb_t) 0; r = n0 + d1; if (r < d1) /* Carry in the addition? */ @@ -165,7 +166,7 @@ mpn_divrem (qp, qextra_limbs, np, nsize, dp, dsize) default: { mp_size_t i; - mp_limb dX, d1, n0; + mp_limb_t dX, d1, n0; np += nsize - dsize; dX = dp[dsize - 1]; @@ -184,9 +185,9 @@ mpn_divrem (qp, qextra_limbs, np, nsize, dp, dsize) for (i = qextra_limbs + nsize - dsize - 1; i >= 0; i--) { - mp_limb q; - mp_limb n1, n2; - mp_limb cy_limb; + mp_limb_t q; + mp_limb_t n1, n2; + mp_limb_t cy_limb; if (i >= qextra_limbs) { @@ -203,10 +204,10 @@ mpn_divrem (qp, qextra_limbs, np, nsize, dp, dsize) if (n0 == dX) /* This might over-estimate q, but it's probably not worth the extra code here to find out. */ - q = ~(mp_limb) 0; + q = ~(mp_limb_t) 0; else { - mp_limb r; + mp_limb_t r; udiv_qrnnd (q, r, n0, np[dsize - 1], dX); umul_ppmm (n1, n0, d1, q); diff --git a/sysdeps/generic/gmp-mparam.h b/sysdeps/generic/gmp-mparam.h index 4286ebf03b..7c885575b3 100644 --- a/sysdeps/generic/gmp-mparam.h +++ b/sysdeps/generic/gmp-mparam.h @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #define BITS_PER_MP_LIMB 32 #define BYTES_PER_MP_LIMB 4 diff --git a/sysdeps/generic/lshift.c b/sysdeps/generic/lshift.c index 35794e4ea8..e244bc52f1 100644 --- a/sysdeps/generic/lshift.c +++ b/sysdeps/generic/lshift.c @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" @@ -30,7 +31,7 @@ the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ 2. If the result is to be written over the input, WP must be >= UP. */ -mp_limb +mp_limb_t #if __STDC__ mpn_lshift (register mp_ptr wp, register mp_srcptr up, mp_size_t usize, @@ -43,10 +44,10 @@ mpn_lshift (wp, up, usize, cnt) register unsigned int cnt; #endif { - register mp_limb high_limb, low_limb; + register mp_limb_t high_limb, low_limb; register unsigned sh_1, sh_2; register mp_size_t i; - mp_limb retval; + mp_limb_t retval; #ifdef DEBUG if (usize == 0 || cnt == 0) diff --git a/sysdeps/generic/mod_1.c b/sysdeps/generic/mod_1.c index 0842f6b1ee..314d11b301 100644 --- a/sysdeps/generic/mod_1.c +++ b/sysdeps/generic/mod_1.c @@ -19,7 +19,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" @@ -36,19 +37,19 @@ the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* FIXME: We should be using invert_limb (or invert_normalized_limb) here (not udiv_qrnnd). */ -mp_limb +mp_limb_t #if __STDC__ mpn_mod_1 (mp_srcptr dividend_ptr, mp_size_t dividend_size, - mp_limb divisor_limb) + mp_limb_t divisor_limb) #else mpn_mod_1 (dividend_ptr, dividend_size, divisor_limb) mp_srcptr dividend_ptr; mp_size_t dividend_size; - mp_limb divisor_limb; + mp_limb_t divisor_limb; #endif { mp_size_t i; - mp_limb n1, n0, r; + mp_limb_t n1, n0, r; int dummy; /* Botch: Should this be handled at all? Rely on callers? */ @@ -70,7 +71,7 @@ mpn_mod_1 (dividend_ptr, dividend_size, divisor_limb) count_leading_zeros (normalization_steps, divisor_limb); if (normalization_steps != 0) { - mp_limb divisor_limb_inverted; + mp_limb_t divisor_limb_inverted; divisor_limb <<= normalization_steps; @@ -80,7 +81,7 @@ mpn_mod_1 (dividend_ptr, dividend_size, divisor_limb) /* Special case for DIVISOR_LIMB == 100...000. */ if (divisor_limb << 1 == 0) - divisor_limb_inverted = ~(mp_limb) 0; + divisor_limb_inverted = ~(mp_limb_t) 0; else udiv_qrnnd (divisor_limb_inverted, dummy, -divisor_limb, 0, divisor_limb); @@ -110,7 +111,7 @@ mpn_mod_1 (dividend_ptr, dividend_size, divisor_limb) } else { - mp_limb divisor_limb_inverted; + mp_limb_t divisor_limb_inverted; /* Compute (2**2N - 2**N * DIVISOR_LIMB) / DIVISOR_LIMB. The result is a (N+1)-bit approximation to 1/DIVISOR_LIMB, with the @@ -118,7 +119,7 @@ mpn_mod_1 (dividend_ptr, dividend_size, divisor_limb) /* Special case for DIVISOR_LIMB == 100...000. */ if (divisor_limb << 1 == 0) - divisor_limb_inverted = ~(mp_limb) 0; + divisor_limb_inverted = ~(mp_limb_t) 0; else udiv_qrnnd (divisor_limb_inverted, dummy, -divisor_limb, 0, divisor_limb); diff --git a/sysdeps/generic/mul.c b/sysdeps/generic/mul.c index 3f3f41e99f..dcf8cb4da0 100644 --- a/sysdeps/generic/mul.c +++ b/sysdeps/generic/mul.c @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" @@ -41,7 +42,7 @@ the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define KARATSUBA_THRESHOLD 32 #endif -mp_limb +mp_limb_t #if __STDC__ mpn_mul (mp_ptr prodp, mp_srcptr up, mp_size_t usize, @@ -56,7 +57,7 @@ mpn_mul (prodp, up, usize, vp, vsize) #endif { mp_ptr prod_endp = prodp + usize + vsize - 1; - mp_limb cy; + mp_limb_t cy; mp_ptr tspace; TMP_DECL (marker); @@ -69,8 +70,8 @@ mpn_mul (prodp, up, usize, vp, vsize) here immediately. Huge ones arrive here as this is the base case for Karatsuba's recursive algorithm below. */ mp_size_t i; - mp_limb cy_limb; - mp_limb v_limb; + mp_limb_t cy_limb; + mp_limb_t v_limb; if (vsize == 0) return 0; diff --git a/sysdeps/generic/mul_1.c b/sysdeps/generic/mul_1.c index 01fdbbbc9b..2de680a64b 100644 --- a/sysdeps/generic/mul_1.c +++ b/sysdeps/generic/mul_1.c @@ -17,22 +17,23 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" #include "longlong.h" -mp_limb +mp_limb_t mpn_mul_1 (res_ptr, s1_ptr, s1_size, s2_limb) register mp_ptr res_ptr; register mp_srcptr s1_ptr; mp_size_t s1_size; - register mp_limb s2_limb; + register mp_limb_t s2_limb; { - register mp_limb cy_limb; + register mp_limb_t cy_limb; register mp_size_t j; - register mp_limb prod_high, prod_low; + register mp_limb_t prod_high, prod_low; /* The loop counter and index J goes from -S1_SIZE to -1. This way the loop becomes faster. */ diff --git a/sysdeps/generic/mul_n.c b/sysdeps/generic/mul_n.c index 049f63dce8..b38e8ad17e 100644 --- a/sysdeps/generic/mul_n.c +++ b/sysdeps/generic/mul_n.c @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" @@ -60,8 +61,8 @@ impn_mul_n_basecase (prodp, up, vp, size) #endif { mp_size_t i; - mp_limb cy_limb; - mp_limb v_limb; + mp_limb_t cy_limb; + mp_limb_t v_limb; /* Multiply by the first limb in V separately, as the result can be stored (not added) to PROD. We also avoid a loop for zeroing. */ @@ -125,7 +126,7 @@ impn_mul_n (prodp, up, vp, size, tspace) stack grow a lot less. */ mp_size_t esize = size - 1; /* even size */ - mp_limb cy_limb; + mp_limb_t cy_limb; MPN_MUL_N_RECURSE (prodp, up, vp, esize, tspace); cy_limb = mpn_addmul_1 (prodp + esize, up, esize, vp[esize]); @@ -152,7 +153,7 @@ impn_mul_n (prodp, up, vp, size, tspace) Where B = 2**BITS_PER_MP_LIMB. */ mp_size_t hsize = size >> 1; - mp_limb cy; + mp_limb_t cy; int negflg; /*** Product H. ________________ ________________ @@ -229,8 +230,8 @@ impn_sqr_n_basecase (prodp, up, size) #endif { mp_size_t i; - mp_limb cy_limb; - mp_limb v_limb; + mp_limb_t cy_limb; + mp_limb_t v_limb; /* Multiply by the first limb in V separately, as the result can be stored (not added) to PROD. We also avoid a loop for zeroing. */ @@ -293,7 +294,7 @@ impn_sqr_n (prodp, up, size, tspace) stack grow a lot less. */ mp_size_t esize = size - 1; /* even size */ - mp_limb cy_limb; + mp_limb_t cy_limb; MPN_SQR_N_RECURSE (prodp, up, esize, tspace); cy_limb = mpn_addmul_1 (prodp + esize, up, esize, up[esize]); @@ -305,7 +306,7 @@ impn_sqr_n (prodp, up, size, tspace) else { mp_size_t hsize = size >> 1; - mp_limb cy; + mp_limb_t cy; /*** Product H. ________________ ________________ |_____U1 x U1____||____U0 x U0_____| */ diff --git a/sysdeps/generic/rshift.c b/sysdeps/generic/rshift.c index 7ce02e07f7..804f9be582 100644 --- a/sysdeps/generic/rshift.c +++ b/sysdeps/generic/rshift.c @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" @@ -30,7 +31,7 @@ the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ 2. If the result is to be written over the input, WP must be <= UP. */ -mp_limb +mp_limb_t #if __STDC__ mpn_rshift (register mp_ptr wp, register mp_srcptr up, mp_size_t usize, @@ -43,10 +44,10 @@ mpn_rshift (wp, up, usize, cnt) register unsigned int cnt; #endif { - register mp_limb high_limb, low_limb; + register mp_limb_t high_limb, low_limb; register unsigned sh_1, sh_2; register mp_size_t i; - mp_limb retval; + mp_limb_t retval; #ifdef DEBUG if (usize == 0 || cnt == 0) diff --git a/sysdeps/generic/sub_n.c b/sysdeps/generic/sub_n.c index f3c83d1fd6..9d4b216758 100644 --- a/sysdeps/generic/sub_n.c +++ b/sysdeps/generic/sub_n.c @@ -16,12 +16,13 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" -mp_limb +mp_limb_t #if __STDC__ mpn_sub_n (mp_ptr res_ptr, mp_srcptr s1_ptr, mp_srcptr s2_ptr, mp_size_t size) #else @@ -32,7 +33,7 @@ mpn_sub_n (res_ptr, s1_ptr, s2_ptr, size) mp_size_t size; #endif { - register mp_limb x, y, cy; + register mp_limb_t x, y, cy; register mp_size_t j; /* The loop counter and index J goes from -SIZE to -1. This way diff --git a/sysdeps/generic/submul_1.c b/sysdeps/generic/submul_1.c index 57122a5784..b144283bd9 100644 --- a/sysdeps/generic/submul_1.c +++ b/sysdeps/generic/submul_1.c @@ -19,23 +19,24 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "gmp.h" #include "gmp-impl.h" #include "longlong.h" -mp_limb +mp_limb_t mpn_submul_1 (res_ptr, s1_ptr, s1_size, s2_limb) register mp_ptr res_ptr; register mp_srcptr s1_ptr; mp_size_t s1_size; - register mp_limb s2_limb; + register mp_limb_t s2_limb; { - register mp_limb cy_limb; + register mp_limb_t cy_limb; register mp_size_t j; - register mp_limb prod_high, prod_low; - register mp_limb x; + register mp_limb_t prod_high, prod_low; + register mp_limb_t x; /* The loop counter and index J goes from -SIZE to -1. This way the loop becomes faster. */ diff --git a/sysdeps/hppa/add_n.s b/sysdeps/hppa/add_n.s index 7f3e32342b..b4a1428362 100644 --- a/sysdeps/hppa/add_n.s +++ b/sysdeps/hppa/add_n.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/hppa/hppa1.1/addmul_1.s b/sysdeps/hppa/hppa1.1/addmul_1.s index a9dfdd1c28..0fdcb3cb20 100644 --- a/sysdeps/hppa/hppa1.1/addmul_1.s +++ b/sysdeps/hppa/hppa1.1/addmul_1.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/hppa/hppa1.1/mul_1.s b/sysdeps/hppa/hppa1.1/mul_1.s index ebf0778b90..cdd0c1d7fa 100644 --- a/sysdeps/hppa/hppa1.1/mul_1.s +++ b/sysdeps/hppa/hppa1.1/mul_1.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/hppa/hppa1.1/submul_1.s b/sysdeps/hppa/hppa1.1/submul_1.s index 44cabf4690..a4a385467e 100644 --- a/sysdeps/hppa/hppa1.1/submul_1.s +++ b/sysdeps/hppa/hppa1.1/submul_1.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/hppa/hppa1.1/udiv_qrnnd.s b/sysdeps/hppa/hppa1.1/udiv_qrnnd.s index 4ffef3a4fb..bf7dc70cd7 100644 --- a/sysdeps/hppa/hppa1.1/udiv_qrnnd.s +++ b/sysdeps/hppa/hppa1.1/udiv_qrnnd.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/hppa/lshift.s b/sysdeps/hppa/lshift.s index 0479f4a281..abac6ec201 100644 --- a/sysdeps/hppa/lshift.s +++ b/sysdeps/hppa/lshift.s @@ -16,7 +16,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/hppa/rshift.s b/sysdeps/hppa/rshift.s index 18d33f2f86..c1480e5abf 100644 --- a/sysdeps/hppa/rshift.s +++ b/sysdeps/hppa/rshift.s @@ -16,7 +16,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/hppa/sub_n.s b/sysdeps/hppa/sub_n.s index daae46e61d..04fa3e1e33 100644 --- a/sysdeps/hppa/sub_n.s +++ b/sysdeps/hppa/sub_n.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/hppa/udiv_qrnnd.s b/sysdeps/hppa/udiv_qrnnd.s index 0b069bf7f9..9b45eb40df 100644 --- a/sysdeps/hppa/udiv_qrnnd.s +++ b/sysdeps/hppa/udiv_qrnnd.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/i386/add_n.S b/sysdeps/i386/add_n.S index c3b3c3e4e1..9c1b133226 100644 --- a/sysdeps/i386/add_n.S +++ b/sysdeps/i386/add_n.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/addmul_1.S b/sysdeps/i386/addmul_1.S index 3e166ec38b..c11209d925 100644 --- a/sysdeps/i386/addmul_1.S +++ b/sysdeps/i386/addmul_1.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/gmp-mparam.h b/sysdeps/i386/gmp-mparam.h index ddc308ae20..d909cd2a54 100644 --- a/sysdeps/i386/gmp-mparam.h +++ b/sysdeps/i386/gmp-mparam.h @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #define BITS_PER_MP_LIMB 32 #define BYTES_PER_MP_LIMB 4 diff --git a/sysdeps/i386/i586/add_n.S b/sysdeps/i386/i586/add_n.S index f214c8cb36..ac6f2819b2 100644 --- a/sysdeps/i386/i586/add_n.S +++ b/sysdeps/i386/i586/add_n.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/i586/addmul_1.S b/sysdeps/i386/i586/addmul_1.S index 5bf2603cab..7cfa5db687 100644 --- a/sysdeps/i386/i586/addmul_1.S +++ b/sysdeps/i386/i586/addmul_1.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/i586/lshift.S b/sysdeps/i386/i586/lshift.S index c41f74e17d..b298983563 100644 --- a/sysdeps/i386/i586/lshift.S +++ b/sysdeps/i386/i586/lshift.S @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/i586/mul_1.S b/sysdeps/i386/i586/mul_1.S index 048c0601f2..4ac3050a61 100644 --- a/sysdeps/i386/i586/mul_1.S +++ b/sysdeps/i386/i586/mul_1.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/i586/rshift.S b/sysdeps/i386/i586/rshift.S index a820a79bc7..38398edb13 100644 --- a/sysdeps/i386/i586/rshift.S +++ b/sysdeps/i386/i586/rshift.S @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/i586/sub_n.S b/sysdeps/i386/i586/sub_n.S index cd158a5469..d1a2bc0840 100644 --- a/sysdeps/i386/i586/sub_n.S +++ b/sysdeps/i386/i586/sub_n.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/i586/submul_1.S b/sysdeps/i386/i586/submul_1.S index 440f64f358..adf2d63e68 100644 --- a/sysdeps/i386/i586/submul_1.S +++ b/sysdeps/i386/i586/submul_1.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/lshift.S b/sysdeps/i386/lshift.S index ca48eda8ce..8173b92cbe 100644 --- a/sysdeps/i386/lshift.S +++ b/sysdeps/i386/lshift.S @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/mul_1.S b/sysdeps/i386/mul_1.S index 303a940f0b..b271399980 100644 --- a/sysdeps/i386/mul_1.S +++ b/sysdeps/i386/mul_1.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/rshift.S b/sysdeps/i386/rshift.S index d4aa0b93e6..9abbf9a45d 100644 --- a/sysdeps/i386/rshift.S +++ b/sysdeps/i386/rshift.S @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/sub_n.S b/sysdeps/i386/sub_n.S index e18a70885b..ec93d1bd57 100644 --- a/sysdeps/i386/sub_n.S +++ b/sysdeps/i386/sub_n.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/i386/submul_1.S b/sysdeps/i386/submul_1.S index 5ab78f6846..730e732045 100644 --- a/sysdeps/i386/submul_1.S +++ b/sysdeps/i386/submul_1.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/m68k/add_n.S b/sysdeps/m68k/add_n.S index 754af9f469..7ca5b95bcc 100644 --- a/sysdeps/m68k/add_n.S +++ b/sysdeps/m68k/add_n.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/m68k/lshift.S b/sysdeps/m68k/lshift.S index c58594a01b..77184d6ee5 100644 --- a/sysdeps/m68k/lshift.S +++ b/sysdeps/m68k/lshift.S @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/m68k/m68020/addmul_1.S b/sysdeps/m68k/m68020/addmul_1.S index 169f1135be..4b99c21f84 100644 --- a/sysdeps/m68k/m68020/addmul_1.S +++ b/sysdeps/m68k/m68020/addmul_1.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/m68k/m68020/mul_1.S b/sysdeps/m68k/m68020/mul_1.S index 4db1ccac25..ef7d93721f 100644 --- a/sysdeps/m68k/m68020/mul_1.S +++ b/sysdeps/m68k/m68020/mul_1.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/m68k/m68020/submul_1.S b/sysdeps/m68k/m68020/submul_1.S index cf30029b2f..9770c6cd6b 100644 --- a/sysdeps/m68k/m68020/submul_1.S +++ b/sysdeps/m68k/m68020/submul_1.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/m68k/rshift.S b/sysdeps/m68k/rshift.S index 494dfcbeab..01dde0ab50 100644 --- a/sysdeps/m68k/rshift.S +++ b/sysdeps/m68k/rshift.S @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/m68k/sub_n.S b/sysdeps/m68k/sub_n.S index 39f5161176..f94b0c7282 100644 --- a/sysdeps/m68k/sub_n.S +++ b/sysdeps/m68k/sub_n.S @@ -17,7 +17,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ /* INPUT PARAMETERS diff --git a/sysdeps/m88k/add_n.s b/sysdeps/m88k/add_n.s index d56447904e..1b09ccef8f 100644 --- a/sysdeps/m88k/add_n.s +++ b/sysdeps/m88k/add_n.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/m88k/m88110/add_n.S b/sysdeps/m88k/m88110/add_n.S index ab20630a5e..39a44e5579 100644 --- a/sysdeps/m88k/m88110/add_n.S +++ b/sysdeps/m88k/m88110/add_n.S @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/m88k/m88110/addmul_1.s b/sysdeps/m88k/m88110/addmul_1.s index 1a4dfa11ea..2bd6f21aff 100644 --- a/sysdeps/m88k/m88110/addmul_1.s +++ b/sysdeps/m88k/m88110/addmul_1.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/m88k/m88110/mul_1.s b/sysdeps/m88k/m88110/mul_1.s index b1352cea87..151890060d 100644 --- a/sysdeps/m88k/m88110/mul_1.s +++ b/sysdeps/m88k/m88110/mul_1.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/m88k/m88110/sub_n.S b/sysdeps/m88k/m88110/sub_n.S index 74ee0ae605..685f024fd4 100644 --- a/sysdeps/m88k/m88110/sub_n.S +++ b/sysdeps/m88k/m88110/sub_n.S @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/m88k/mul_1.s b/sysdeps/m88k/mul_1.s index 6b8492c4c6..26626bf959 100644 --- a/sysdeps/m88k/mul_1.s +++ b/sysdeps/m88k/mul_1.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/m88k/sub_n.s b/sysdeps/m88k/sub_n.s index cd0b791b79..7dfffc980b 100644 --- a/sysdeps/m88k/sub_n.s +++ b/sysdeps/m88k/sub_n.s @@ -17,7 +17,8 @@ ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to -; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +; MA 02111-1307, USA. ; INPUT PARAMETERS diff --git a/sysdeps/mips/add_n.s b/sysdeps/mips/add_n.s index c82910816e..f5525cec46 100644 --- a/sysdeps/mips/add_n.s +++ b/sysdeps/mips/add_n.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/addmul_1.s b/sysdeps/mips/addmul_1.s index 917af1bac3..6145771e39 100644 --- a/sysdeps/mips/addmul_1.s +++ b/sysdeps/mips/addmul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/lshift.s b/sysdeps/mips/lshift.s index ce33e7c84c..ee92d7916f 100644 --- a/sysdeps/mips/lshift.s +++ b/sysdeps/mips/lshift.s @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/mips3/add_n.s b/sysdeps/mips/mips3/add_n.s index b5257804ad..996a449ebd 100644 --- a/sysdeps/mips/mips3/add_n.s +++ b/sysdeps/mips/mips3/add_n.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/mips3/addmul_1.s b/sysdeps/mips/mips3/addmul_1.s index 7dbc9ad41d..cd75c18013 100644 --- a/sysdeps/mips/mips3/addmul_1.s +++ b/sysdeps/mips/mips3/addmul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/mips3/gmp-mparam.h b/sysdeps/mips/mips3/gmp-mparam.h index a801b35d7a..f3df7ff6e0 100644 --- a/sysdeps/mips/mips3/gmp-mparam.h +++ b/sysdeps/mips/mips3/gmp-mparam.h @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #define BITS_PER_MP_LIMB 64 #define BYTES_PER_MP_LIMB 8 diff --git a/sysdeps/mips/mips3/lshift.s b/sysdeps/mips/mips3/lshift.s index c05dcafffd..324a6020c8 100644 --- a/sysdeps/mips/mips3/lshift.s +++ b/sysdeps/mips/mips3/lshift.s @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/mips3/mul_1.s b/sysdeps/mips/mips3/mul_1.s index 8376a02546..281d0574aa 100644 --- a/sysdeps/mips/mips3/mul_1.s +++ b/sysdeps/mips/mips3/mul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/mips3/rshift.s b/sysdeps/mips/mips3/rshift.s index e0e2ca2c5f..9920e1a9e3 100644 --- a/sysdeps/mips/mips3/rshift.s +++ b/sysdeps/mips/mips3/rshift.s @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/mips3/sub_n.s b/sysdeps/mips/mips3/sub_n.s index 9a45ffde5a..56c77d8bc4 100644 --- a/sysdeps/mips/mips3/sub_n.s +++ b/sysdeps/mips/mips3/sub_n.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/mips3/submul_1.s b/sysdeps/mips/mips3/submul_1.s index f041f6c0b4..a9c9fa2514 100644 --- a/sysdeps/mips/mips3/submul_1.s +++ b/sysdeps/mips/mips3/submul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/mul_1.s b/sysdeps/mips/mul_1.s index 6f5324cef4..d006fa1221 100644 --- a/sysdeps/mips/mul_1.s +++ b/sysdeps/mips/mul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/rshift.s b/sysdeps/mips/rshift.s index 6941691373..a8beb40577 100644 --- a/sysdeps/mips/rshift.s +++ b/sysdeps/mips/rshift.s @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/sub_n.s b/sysdeps/mips/sub_n.s index 63f3b55354..3368ef29d6 100644 --- a/sysdeps/mips/sub_n.s +++ b/sysdeps/mips/sub_n.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/mips/submul_1.s b/sysdeps/mips/submul_1.s index a78072a1e9..1324b66090 100644 --- a/sysdeps/mips/submul_1.s +++ b/sysdeps/mips/submul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to - # the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + # MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/rs6000/add_n.s b/sysdeps/rs6000/add_n.s index e2536d5887..9e1c948974 100644 --- a/sysdeps/rs6000/add_n.s +++ b/sysdeps/rs6000/add_n.s @@ -1,6 +1,6 @@ # IBM POWER __mpn_add_n -- Add two limb vectors of equal, non-zero length. -# Copyright (C) 1992, 1994, 1995 Free Software Foundation, Inc. +# Copyright (C) 1992, 1994, 1995, 1996 Free Software Foundation, Inc. # This file is part of the GNU MP Library. @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS @@ -37,18 +38,44 @@ __mpn_add_n: .long .__mpn_add_n, TOC[tc0], 0 .csect [PR] .__mpn_add_n: - mtctr 6 # copy size into CTR + andil. 10,6,1 # odd or even number of limbs? l 8,0(4) # load least significant s1 limb l 0,0(5) # load least significant s2 limb - cal 3,-4(3) # offset res_ptr, it's updated before used + cal 3,-4(3) # offset res_ptr, it's updated before it's used + sri 10,6,1 # count for unrolled loop a 7,0,8 # add least significant limbs, set cy + mtctr 10 # copy count into CTR + beq 0,Leven # branch if even # of limbs (# of limbs >= 2) + +# We have an odd # of limbs. Add the first limbs separately. + cmpi 1,10,0 # is count for unrolled loop zero? + bne 1,L1 # branch if not + st 7,4(3) + aze 3,10 # use the fact that r10 is zero... + br # return + +# We added least significant limbs. Now reload the next limbs to enter loop. +L1: lu 8,4(4) # load s1 limb and update s1_ptr + lu 0,4(5) # load s2 limb and update s2_ptr + stu 7,4(3) + ae 7,0,8 # add limbs, set cy +Leven: lu 9,4(4) # load s1 limb and update s1_ptr + lu 10,4(5) # load s2 limb and update s2_ptr bdz Lend # If done, skip loop + Loop: lu 8,4(4) # load s1 limb and update s1_ptr lu 0,4(5) # load s2 limb and update s2_ptr - stu 7,4(3) # store previous limb in load latency slot - ae 7,0,8 # add new limbs with cy, set cy + ae 11,9,10 # add previous limbs with cy, set cy + stu 7,4(3) # + lu 9,4(4) # load s1 limb and update s1_ptr + lu 10,4(5) # load s2 limb and update s2_ptr + ae 7,0,8 # add previous limbs with cy, set cy + stu 11,4(3) # bdn Loop # decrement CTR and loop back -Lend: st 7,4(3) # store ultimate result limb + +Lend: ae 11,9,10 # add limbs with cy, set cy + st 7,4(3) # + st 11,8(3) # lil 3,0 # load cy into ... aze 3,3 # ... return value register br diff --git a/sysdeps/rs6000/addmul_1.s b/sysdeps/rs6000/addmul_1.s index 862b6139fe..2db69841c7 100644 --- a/sysdeps/rs6000/addmul_1.s +++ b/sysdeps/rs6000/addmul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/rs6000/lshift.s b/sysdeps/rs6000/lshift.s index 69c7502061..38169bf53f 100644 --- a/sysdeps/rs6000/lshift.s +++ b/sysdeps/rs6000/lshift.s @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/rs6000/mul_1.s b/sysdeps/rs6000/mul_1.s index f4fa894339..a72bce660c 100644 --- a/sysdeps/rs6000/mul_1.s +++ b/sysdeps/rs6000/mul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/rs6000/rshift.s b/sysdeps/rs6000/rshift.s index 6056acc753..30d408a24b 100644 --- a/sysdeps/rs6000/rshift.s +++ b/sysdeps/rs6000/rshift.s @@ -16,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/rs6000/sub_n.s b/sysdeps/rs6000/sub_n.s index c57675b106..30d4fee861 100644 --- a/sysdeps/rs6000/sub_n.s +++ b/sysdeps/rs6000/sub_n.s @@ -1,7 +1,6 @@ -# IBM POWER __mpn_sub_n -- Subtract two limb vectors of the same length > 0 and -# store difference in a third limb vector. +# IBM POWER __mpn_sub_n -- Subtract two limb vectors of equal, non-zero length. -# Copyright (C) 1992, 1994, 1995 Free Software Foundation, Inc. +# Copyright (C) 1992, 1994, 1995, 1996 Free Software Foundation, Inc. # This file is part of the GNU MP Library. @@ -17,7 +16,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS @@ -38,18 +38,45 @@ __mpn_sub_n: .long .__mpn_sub_n, TOC[tc0], 0 .csect [PR] .__mpn_sub_n: - mtctr 6 # copy size into CTR + andil. 10,6,1 # odd or even number of limbs? l 8,0(4) # load least significant s1 limb l 0,0(5) # load least significant s2 limb - cal 3,-4(3) # offset res_ptr, it's updated before used - sf 7,0,8 # add least significant limbs, set cy + cal 3,-4(3) # offset res_ptr, it's updated before it's used + sri 10,6,1 # count for unrolled loop + sf 7,0,8 # subtract least significant limbs, set cy + mtctr 10 # copy count into CTR + beq 0,Leven # branch if even # of limbs (# of limbs >= 2) + +# We have an odd # of limbs. Add the first limbs separately. + cmpi 1,10,0 # is count for unrolled loop zero? + bne 1,L1 # branch if not + st 7,4(3) + sfe 3,0,0 # load !cy into ... + sfi 3,3,0 # ... return value register + br # return + +# We added least significant limbs. Now reload the next limbs to enter loop. +L1: lu 8,4(4) # load s1 limb and update s1_ptr + lu 0,4(5) # load s2 limb and update s2_ptr + stu 7,4(3) + sfe 7,0,8 # subtract limbs, set cy +Leven: lu 9,4(4) # load s1 limb and update s1_ptr + lu 10,4(5) # load s2 limb and update s2_ptr bdz Lend # If done, skip loop + Loop: lu 8,4(4) # load s1 limb and update s1_ptr lu 0,4(5) # load s2 limb and update s2_ptr - stu 7,4(3) # store previous limb in load latency slot - sfe 7,0,8 # add new limbs with cy, set cy + sfe 11,10,9 # subtract previous limbs with cy, set cy + stu 7,4(3) # + lu 9,4(4) # load s1 limb and update s1_ptr + lu 10,4(5) # load s2 limb and update s2_ptr + sfe 7,0,8 # subtract previous limbs with cy, set cy + stu 11,4(3) # bdn Loop # decrement CTR and loop back -Lend: st 7,4(3) # store ultimate result limb + +Lend: sfe 11,10,9 # subtract limbs with cy, set cy + st 7,4(3) # + st 11,8(3) # sfe 3,0,0 # load !cy into ... sfi 3,3,0 # ... return value register br diff --git a/sysdeps/rs6000/submul_1.s b/sysdeps/rs6000/submul_1.s index 252633261d..8e5946fe18 100644 --- a/sysdeps/rs6000/submul_1.s +++ b/sysdeps/rs6000/submul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/sparc/add_n.S b/sysdeps/sparc/add_n.S index 49b31fc660..9852c256aa 100644 --- a/sysdeps/sparc/add_n.S +++ b/sysdeps/sparc/add_n.S @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/addmul_1.S b/sysdeps/sparc/addmul_1.S index 63e7db0ce2..375d25db6b 100644 --- a/sysdeps/sparc/addmul_1.S +++ b/sysdeps/sparc/addmul_1.S @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/lshift.S b/sysdeps/sparc/lshift.S index 6844fa2475..4f0595f2fb 100644 --- a/sysdeps/sparc/lshift.S +++ b/sysdeps/sparc/lshift.S @@ -16,7 +16,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/mul_1.S b/sysdeps/sparc/mul_1.S index 84aa12bb41..142fd8ba2a 100644 --- a/sysdeps/sparc/mul_1.S +++ b/sysdeps/sparc/mul_1.S @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/rshift.S b/sysdeps/sparc/rshift.S index 5a47926302..fea4f3b926 100644 --- a/sysdeps/sparc/rshift.S +++ b/sysdeps/sparc/rshift.S @@ -16,7 +16,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sparc64/add_n.s b/sysdeps/sparc/sparc64/add_n.s index 104a89e78c..01d1f49564 100644 --- a/sysdeps/sparc/sparc64/add_n.s +++ b/sysdeps/sparc/sparc64/add_n.s @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sparc64/addmul_1.s b/sysdeps/sparc/sparc64/addmul_1.s index ef013eeb91..8d86390808 100644 --- a/sysdeps/sparc/sparc64/addmul_1.s +++ b/sysdeps/sparc/sparc64/addmul_1.s @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sparc64/gmp-mparam.h b/sysdeps/sparc/sparc64/gmp-mparam.h index 05c893f790..a3c66974de 100644 --- a/sysdeps/sparc/sparc64/gmp-mparam.h +++ b/sysdeps/sparc/sparc64/gmp-mparam.h @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #define BITS_PER_MP_LIMB 64 #define BYTES_PER_MP_LIMB 8 diff --git a/sysdeps/sparc/sparc64/lshift.s b/sysdeps/sparc/sparc64/lshift.s index bd7fa0111f..ad1f667fa3 100644 --- a/sysdeps/sparc/sparc64/lshift.s +++ b/sysdeps/sparc/sparc64/lshift.s @@ -16,7 +16,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sparc64/mul_1.s b/sysdeps/sparc/sparc64/mul_1.s index 41be3705a8..91d6eb01b8 100644 --- a/sysdeps/sparc/sparc64/mul_1.s +++ b/sysdeps/sparc/sparc64/mul_1.s @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sparc64/rshift.s b/sysdeps/sparc/sparc64/rshift.s index 971deec2a4..ff6a380160 100644 --- a/sysdeps/sparc/sparc64/rshift.s +++ b/sysdeps/sparc/sparc64/rshift.s @@ -16,7 +16,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sparc64/sub_n.s b/sysdeps/sparc/sparc64/sub_n.s index 7099bf43e9..d4842b8cdd 100644 --- a/sysdeps/sparc/sparc64/sub_n.s +++ b/sysdeps/sparc/sparc64/sub_n.s @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sparc64/submul_1.s b/sysdeps/sparc/sparc64/submul_1.s index f0df38c3bc..e796243470 100644 --- a/sysdeps/sparc/sparc64/submul_1.s +++ b/sysdeps/sparc/sparc64/submul_1.s @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sparc8/addmul_1.S b/sysdeps/sparc/sparc8/addmul_1.S index 1cf5128ee5..fb9ea7cf0e 100644 --- a/sysdeps/sparc/sparc8/addmul_1.S +++ b/sysdeps/sparc/sparc8/addmul_1.S @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sparc8/mul_1.S b/sysdeps/sparc/sparc8/mul_1.S index d56394e135..b641feb453 100644 --- a/sysdeps/sparc/sparc8/mul_1.S +++ b/sysdeps/sparc/sparc8/mul_1.S @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sparc8/submul_1.S b/sysdeps/sparc/sparc8/submul_1.S index 5c4d688ee8..e40119d011 100644 --- a/sysdeps/sparc/sparc8/submul_1.S +++ b/sysdeps/sparc/sparc8/submul_1.S @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/sub_n.S b/sysdeps/sparc/sub_n.S index 9ff5b7b863..b7a11958e2 100644 --- a/sysdeps/sparc/sub_n.S +++ b/sysdeps/sparc/sub_n.S @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/sparc/submul_1.S b/sysdeps/sparc/submul_1.S index ed67c99d29..a8ebd501a7 100644 --- a/sysdeps/sparc/submul_1.S +++ b/sysdeps/sparc/submul_1.S @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/vax/add_n.s b/sysdeps/vax/add_n.s index c89b226051..d4764e23a2 100644 --- a/sysdeps/vax/add_n.s +++ b/sysdeps/vax/add_n.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/vax/addmul_1.s b/sysdeps/vax/addmul_1.s index 8e83204b81..746d95ba7a 100644 --- a/sysdeps/vax/addmul_1.s +++ b/sysdeps/vax/addmul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/vax/gmp-mparam.h b/sysdeps/vax/gmp-mparam.h index ddc308ae20..d909cd2a54 100644 --- a/sysdeps/vax/gmp-mparam.h +++ b/sysdeps/vax/gmp-mparam.h @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #define BITS_PER_MP_LIMB 32 #define BYTES_PER_MP_LIMB 4 diff --git a/sysdeps/vax/mul_1.s b/sysdeps/vax/mul_1.s index 3fe375bacf..e2ff5a1bc1 100644 --- a/sysdeps/vax/mul_1.s +++ b/sysdeps/vax/mul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/vax/sub_n.s b/sysdeps/vax/sub_n.s index 300b4dee8f..a891c4425a 100644 --- a/sysdeps/vax/sub_n.s +++ b/sysdeps/vax/sub_n.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/vax/submul_1.s b/sysdeps/vax/submul_1.s index 875cbfd651..c473937caf 100644 --- a/sysdeps/vax/submul_1.s +++ b/sysdeps/vax/submul_1.s @@ -17,7 +17,8 @@ # You should have received a copy of the GNU Library General Public License # along with the GNU MP Library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA. # INPUT PARAMETERS diff --git a/sysdeps/z8000/add_n.s b/sysdeps/z8000/add_n.s index 21efaf5714..a50fc3ef5f 100644 --- a/sysdeps/z8000/add_n.s +++ b/sysdeps/z8000/add_n.s @@ -16,7 +16,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/z8000/gmp-mparam.h b/sysdeps/z8000/gmp-mparam.h index 73df5b9d4e..e0a303e979 100644 --- a/sysdeps/z8000/gmp-mparam.h +++ b/sysdeps/z8000/gmp-mparam.h @@ -16,7 +16,8 @@ License for more details. You should have received a copy of the GNU Library General Public License along with the GNU MP Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #define BITS_PER_MP_LIMB 16 #define BYTES_PER_MP_LIMB 2 diff --git a/sysdeps/z8000/mul_1.s b/sysdeps/z8000/mul_1.s index 0150e85e85..f1126b5ab3 100644 --- a/sysdeps/z8000/mul_1.s +++ b/sysdeps/z8000/mul_1.s @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS diff --git a/sysdeps/z8000/sub_n.s b/sysdeps/z8000/sub_n.s index f75ef22d04..272c671bd1 100644 --- a/sysdeps/z8000/sub_n.s +++ b/sysdeps/z8000/sub_n.s @@ -17,7 +17,8 @@ ! You should have received a copy of the GNU Library General Public License ! along with the GNU MP Library; see the file COPYING.LIB. If not, write to -! the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +! MA 02111-1307, USA. ! INPUT PARAMETERS |