summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Taubert <ttaubert@mozilla.com>2016-04-21 12:03:16 +0200
committerTim Taubert <ttaubert@mozilla.com>2016-04-21 12:03:16 +0200
commitd723525c987386f368911dd2572490b2417f8d21 (patch)
tree48146747525e2a0b88a2ce77a872607eaffabed7
parent0bb23f28b5609a6acc88a9c0bfe2c37b7378d07c (diff)
downloadnss-hg-d723525c987386f368911dd2572490b2417f8d21.tar.gz
Bug 1222908 - Remove mp_cmp_int() r=franziskus,mt,rrelyea
-rw-r--r--lib/freebl/ecl/ecp_jac.c4
-rw-r--r--lib/freebl/mpi/README1
-rw-r--r--lib/freebl/mpi/mpi-test.c9
-rw-r--r--lib/freebl/mpi/mpi.c26
-rw-r--r--lib/freebl/mpi/mpi.h1
5 files changed, 3 insertions, 38 deletions
diff --git a/lib/freebl/ecl/ecp_jac.c b/lib/freebl/ecl/ecp_jac.c
index f174b1692..0eea3fadc 100644
--- a/lib/freebl/ecl/ecp_jac.c
+++ b/lib/freebl/ecl/ecp_jac.c
@@ -232,7 +232,9 @@ ec_GFp_pt_dbl_jac(const mp_int *px, const mp_int *py, const mp_int *pz,
MP_CHECKOK(group->meth->field_add(&t0, &M, &t0, group->meth));
MP_CHECKOK(group->meth->
field_add(&t0, &group->curvea, &M, group->meth));
- } else if (mp_cmp_int(&group->curvea, -3) == 0) {
+ } else if (MP_SIGN(&group->curvea) == MP_NEG &&
+ MP_USED(&group->curvea) == 1 &&
+ MP_DIGIT(&group->curvea, 0) == 3) {
/* M = 3 * (px + pz^2) * (px - pz^2) */
MP_CHECKOK(group->meth->field_sqr(pz, &M, group->meth));
MP_CHECKOK(group->meth->field_add(px, &M, &t0, group->meth));
diff --git a/lib/freebl/mpi/README b/lib/freebl/mpi/README
index fc6c5e101..89907e9f3 100644
--- a/lib/freebl/mpi/README
+++ b/lib/freebl/mpi/README
@@ -282,7 +282,6 @@ mp_cmp_z(a) - compare a <=> 0
mp_cmp_d(a, d) - compare a <=> d, d is a single digit
mp_cmp(a, b) - compare a <=> b
mp_cmp_mag(a, b) - compare |a| <=> |b|
-mp_cmp_int(a, z) - compare a <=> z, z is a signed long integer
mp_isodd(a) - return nonzero if odd, zero otherwise
mp_iseven(a) - return nonzero if even, zero otherwise
diff --git a/lib/freebl/mpi/mpi-test.c b/lib/freebl/mpi/mpi-test.c
index 1276d35ac..907dcc420 100644
--- a/lib/freebl/mpi/mpi-test.c
+++ b/lib/freebl/mpi/mpi-test.c
@@ -1685,15 +1685,6 @@ int test_cmp(void)
return 1;
}
- mp_read_radix(&a, mp5a, 16);
- if(mp_cmp_int(&a, 1000000) >= 0 ||
- (mp_cmp_int(&a, -5000000) <= 0) ||
- (mp_cmp_int(&a, -4938110) != 0)) {
- reason("error: long integer comparison failed (%s)", mp5a);
- mp_clear(&a); mp_clear(&b);
- return 1;
- }
-
mp_clear(&a); mp_clear(&b);
return 0;
}
diff --git a/lib/freebl/mpi/mpi.c b/lib/freebl/mpi/mpi.c
index 684f5f85e..d4af30b8c 100644
--- a/lib/freebl/mpi/mpi.c
+++ b/lib/freebl/mpi/mpi.c
@@ -1689,32 +1689,6 @@ int mp_cmp_mag(const mp_int *a, const mp_int *b)
/* }}} */
-/* {{{ mp_cmp_int(a, z) */
-
-/*
- This just converts z to an mp_int, and uses the existing comparison
- routines. This is sort of inefficient, but it's not clear to me how
- frequently this wil get used anyway. For small positive constants,
- you can always use mp_cmp_d(), and for zero, there is mp_cmp_z().
- */
-int mp_cmp_int(const mp_int *a, long z)
-{
- mp_int tmp;
- int out;
-
- ARGCHK(a != NULL, MP_EQ);
-
- mp_init(&tmp);
- mp_set_int(&tmp, z);
- out = mp_cmp(a, &tmp);
- mp_clear(&tmp);
-
- return out;
-
-} /* end mp_cmp_int() */
-
-/* }}} */
-
/* {{{ mp_isodd(a) */
/*
diff --git a/lib/freebl/mpi/mpi.h b/lib/freebl/mpi/mpi.h
index 45be2ff04..9776d4949 100644
--- a/lib/freebl/mpi/mpi.h
+++ b/lib/freebl/mpi/mpi.h
@@ -220,7 +220,6 @@ int mp_cmp_z(const mp_int *a);
int mp_cmp_d(const mp_int *a, mp_digit d);
int mp_cmp(const mp_int *a, const mp_int *b);
int mp_cmp_mag(const mp_int *a, const mp_int *b);
-int mp_cmp_int(const mp_int *a, long z);
int mp_isodd(const mp_int *a);
int mp_iseven(const mp_int *a);