]> git.ipfire.org Git - thirdparty/nettle.git/commitdiff
ecc-benchmark: Use ecc->add_hhh function pointer.
authorNiels Möller <nisse@lysator.liu.se>
Fri, 29 Aug 2014 19:32:01 +0000 (21:32 +0200)
committerNiels Möller <nisse@lysator.liu.se>
Fri, 29 Aug 2014 19:51:42 +0000 (21:51 +0200)
ChangeLog
examples/ecc-benchmark.c

index a4c230b23d63f87187bc914439f9b2f4ccb1436c..ccf7009c2c8ea6a3522acd51670a9ac6c27b80b2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2014-08-29  Niels Möller  <nisse@lysator.liu.se>
 
+       * examples/ecc-benchmark.c (bench_add_jjj): Renamed, to...
+       (bench_add_hhh): ... new name. Use ecc->add_hhh function pointer.
+       (bench_add_ehh): Deleted.
+       (bench_curve): Use bench_add_hhh for all curves. Use ecc->mul_itch
+       for scratch size.
+
        Switch the curve25519 implementation to use the isomorphism to the
        twisted Edwards curve which is used for Ed25519 signatures.
        * eccdata.c (ecc_curve_init): Tweaked the transformation constant
index 6fc4860d3659df8b453c5f9056170dffd29350e0..89ef2f54b41630351a98cc206fff8393a55ff8ff 100644 (file)
@@ -217,10 +217,10 @@ bench_add_jja (void *p)
 }
 
 static void
-bench_add_jjj (void *p)
+bench_add_hhh (void *p)
 {
   struct ecc_ctx *ctx = (struct ecc_ctx *) p;
-  ecc_add_jjj (ctx->ecc, ctx->rp, ctx->ap, ctx->bp, ctx->tp);
+  ctx->ecc->add_hhh (ctx->ecc, ctx->rp, ctx->ap, ctx->bp, ctx->tp);
 }
 
 static void
@@ -251,13 +251,6 @@ bench_add_eh (void *p)
   ecc_add_eh (ctx->ecc, ctx->rp, ctx->ap, ctx->bp, ctx->tp);
 }
 
-static void
-bench_add_ehh (void *p)
-{
-  struct ecc_ctx *ctx = (struct ecc_ctx *) p;
-  ecc_add_ehh (ctx->ecc, ctx->rp, ctx->ap, ctx->bp, ctx->tp);
-}
-
 #if NETTLE_USE_MINI_GMP
 static void
 mpn_random (mp_limb_t *xp, mp_size_t n)
@@ -273,7 +266,7 @@ bench_curve (const struct ecc_curve *ecc)
 {
   struct ecc_ctx ctx;  
   double modp, redc, modq, modinv, modinv_gcd, modinv_powm,
-    dup_jj, add_jja, add_jjj,
+    dup_jj, add_jja, add_hhh,
     mul_g, mul_a;
 
   mp_limb_t mask;
@@ -283,7 +276,7 @@ bench_curve (const struct ecc_curve *ecc)
   ctx.rp = xalloc_limbs (3*ecc->size);
   ctx.ap = xalloc_limbs (3*ecc->size);
   ctx.bp = xalloc_limbs (3*ecc->size);
-  itch = ECC_MUL_A_ITCH (ecc->size);
+  itch = ecc->mul_itch;
 #ifdef mpn_sec_powm
   {
     mp_size_t powm_itch
@@ -326,14 +319,13 @@ bench_curve (const struct ecc_curve *ecc)
       /* For now, curve25519 is a special case */
       dup_jj = time_function (bench_dup_eh, &ctx);
       add_jja = time_function (bench_add_eh, &ctx);
-      add_jjj = time_function (bench_add_ehh, &ctx);
     }
   else
     {
       dup_jj = time_function (bench_dup_jj, &ctx);
       add_jja = time_function (bench_add_jja, &ctx);
-      add_jjj = time_function (bench_add_jjj, &ctx);
     }
+  add_hhh = time_function (bench_add_hhh, &ctx);
   mul_g = time_function (bench_mul_g, &ctx);
   mul_a = time_function (bench_mul_a, &ctx);
 
@@ -345,7 +337,7 @@ bench_curve (const struct ecc_curve *ecc)
   printf ("%4d %6.4f %6.4f %6.4f %6.2f %6.3f %6.2f %6.3f %6.3f %6.3f %6.1f %6.1f\n",
          ecc->bit_size, 1e6 * modp, 1e6 * redc, 1e6 * modq,
          1e6 * modinv, 1e6 * modinv_gcd, 1e6 * modinv_powm,
-         1e6 * dup_jj, 1e6 * add_jja, 1e6 * add_jjj,
+         1e6 * dup_jj, 1e6 * add_jja, 1e6 * add_hhh,
          1e6 * mul_g, 1e6 * mul_a);
 }
 
@@ -368,7 +360,7 @@ main (int argc UNUSED, char **argv UNUSED)
   time_init();
   printf ("%4s %6s %6s %6s %6s %6s %6s %6s %6s %6s %6s %6s (us)\n",
          "size", "modp", "redc", "modq", "modinv", "mi_gcd", "mi_pow",
-         "dup_jj", "ad_jja", "ad_jjj",
+         "dup_jj", "ad_jja", "ad_hhh",
          "mul_g", "mul_a");
   for (i = 0; i < numberof (curves); i++)
     bench_curve (curves[i]);