summaryrefslogtreecommitdiff
path: root/mpn/cray
diff options
context:
space:
mode:
authortege <tege@gmplib.org>2001-03-07 04:03:37 +0100
committertege <tege@gmplib.org>2001-03-07 04:03:37 +0100
commitfe3a5d69999aa45d2c2275d2bef054bdbac8e7b4 (patch)
tree2dd7f9afa7b7960b7c5a7fe83d5b03db97e154dd /mpn/cray
parentd4f81d55fd4090f22e4d579cfb299328701b93b3 (diff)
downloadgmp-fe3a5d69999aa45d2c2275d2bef054bdbac8e7b4.tar.gz
Don't call mpn_add_n with size 0.
Diffstat (limited to 'mpn/cray')
-rw-r--r--mpn/cray/cfp/addmul_1.c3
-rw-r--r--mpn/cray/cfp/mul_1.c5
2 files changed, 5 insertions, 3 deletions
diff --git a/mpn/cray/cfp/addmul_1.c b/mpn/cray/cfp/addmul_1.c
index c3b34a393..db9e89bf1 100644
--- a/mpn/cray/cfp/addmul_1.c
+++ b/mpn/cray/cfp/addmul_1.c
@@ -32,7 +32,8 @@ mpn_addmul_1 (mp_ptr rp, mp_srcptr up, mp_size_t n, mp_limb_t limb)
GMPN_MULWW (p1, p0, up, &n, &limb);
cy_limb = mpn_add_n (tp, rp, p0, n);
rp[0] = tp[0];
- cy_limb += mpn_add_n (rp + 1, tp + 1, p1, n - 1);
+ if (n != 1)
+ cy_limb += mpn_add_n (rp + 1, tp + 1, p1, n - 1);
cy_limb += p1[n - 1];
return cy_limb;
diff --git a/mpn/cray/cfp/mul_1.c b/mpn/cray/cfp/mul_1.c
index d085aebbb..2c7c0e3da 100644
--- a/mpn/cray/cfp/mul_1.c
+++ b/mpn/cray/cfp/mul_1.c
@@ -31,8 +31,9 @@ mpn_mul_1 (mp_ptr rp, mp_srcptr up, mp_size_t n, mp_limb_t limb)
GMPN_MULWW (p1, p0, up, &n, &limb);
rp[0] = p0[0];
- cy_limb = mpn_add_n (rp + 1, p0 + 1, p1, n - 1);
- cy_limb += p1[n - 1];
+ cy_limb = p1[n - 1];
+ if (n != 1)
+ cy_limb += mpn_add_n (rp + 1, p0 + 1, p1, n - 1);
return cy_limb;
}