+2019-12-19 Niels Möller <nisse@lysator.liu.se>
+
+ * ecc-mul-a-eh.c (ecc_mul_a_eh) [ECC_MUL_A_EH_WBITS == 0]: Use
+ add_hh rather than add_hhh.
+ (table_init) [[ECC_MUL_A_EH_WBITS > 0]: Likewise.
+ * ecc-internal.h (ECC_MUL_A_EH_ITCH) [ECC_MUL_A_EH_WBITS == 0]:
+ Reduced from 13*n to 12*n.
+
2019-12-18 Niels Möller <nisse@lysator.liu.se>
Rename add and dup functions for Edwards curves.
(((3 << ECC_MUL_A_WBITS) + 11) * (size))
#endif
#if ECC_MUL_A_EH_WBITS == 0
-#define ECC_MUL_A_EH_ITCH(size) (13*(size))
+#define ECC_MUL_A_EH_ITCH(size) (12*(size))
#else
#define ECC_MUL_A_EH_ITCH(size) \
(((3 << ECC_MUL_A_EH_WBITS) + 10) * (size))
#include "ecc-internal.h"
/* Binary algorithm needs 6*ecc->p.size + scratch for ecc_add_ehh,
- total 13 ecc->p.size
+ total 12 ecc->p.size
Window algorithm needs (3<<w) * ecc->p.size for the table,
3*ecc->p.size for a temporary point, and scratch for
int digit;
ecc->dup (ecc, r, r, scratch_out);
- ecc->add_hhh (ecc, tp, r, pe, scratch_out);
+ ecc->add_hh (ecc, tp, r, pe, scratch_out);
digit = (w & bit) > 0;
/* If we had a one-bit, use the sum. */
for (j = 2; j < size; j += 2)
{
ecc->dup (ecc, TABLE(j), TABLE(j/2), scratch);
- ecc->add_hhh (ecc, TABLE(j+1), TABLE(j), TABLE(1), scratch);
+ ecc->add_hh (ecc, TABLE(j+1), TABLE(j), TABLE(1), scratch);
}
}