diff options
author | Kevin Ryde <user42@zip.com.au> | 2001-05-11 02:02:15 +0200 |
---|---|---|
committer | Kevin Ryde <user42@zip.com.au> | 2001-05-11 02:02:15 +0200 |
commit | 9afe2e10add092858f1488dabf6b5c14dc48cca1 (patch) | |
tree | 696ef0d5253421f17a4bcc743cdec65b75897f09 /mpf/add.c | |
parent | 36e0fb962535c424cb2ef40ae6d0a7c21622bb3d (diff) | |
download | gmp-9afe2e10add092858f1488dabf6b5c14dc48cca1.tar.gz |
* mpf/sub.c: Test r!=u before calling mpf_set.
* mpf/add.c: Ditto, and share mpf_set between usize==0 and vsize==0.
Diffstat (limited to 'mpf/add.c')
-rw-r--r-- | mpf/add.c | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -41,13 +41,15 @@ mpf_add (mpf_ptr r, mpf_srcptr u, mpf_srcptr v) /* Handle special cases that don't work in generic code below. */ if (usize == 0) { - mpf_set (r, v); + set_r_v_maybe: + if (r != v) + mpf_set (r, v); return; } if (vsize == 0) { - mpf_set (r, u); - return; + v = u; + goto set_r_v_maybe; } /* If signs of U and V are different, perform subtraction. */ |