]> git.ipfire.org Git - thirdparty/nettle.git/commitdiff
Some curve25519 unification in ecc-benchmark.
authorNiels Möller <nisse@lysator.liu.se>
Tue, 26 Aug 2014 17:31:49 +0000 (19:31 +0200)
committerNiels Möller <nisse@lysator.liu.se>
Tue, 26 Aug 2014 17:31:49 +0000 (19:31 +0200)
ChangeLog
examples/ecc-benchmark.c

index bb9401e6e0c7509a92e00b16574619e9ea9ff0f3..cf7fface7a4766148615780263200d54e09ea30e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2014-08-26  Niels Möller  <nisse@lysator.liu.se>
 
+       * examples/ecc-benchmark.c (bench_mul_g, bench_mul_a): Use struct
+       ecc_curve function pointers.
+       (bench_mul_g_eh, bench_mul_a_eh): Deleted.
+       (bench_curve): Make modq benchmark unconditional. Use bench_mul_g
+       and bench_mul_a also for curve25519.
+
        * testsuite/ecc-mod-test.c (test_curve): Make modq test
        unconditional, partially reverting 2014-07-04 change.
 
index 0d4ee783cf8d21b25835b802f22d523a14896a32..6fc4860d3659df8b453c5f9056170dffd29350e0 100644 (file)
@@ -227,14 +227,14 @@ static void
 bench_mul_g (void *p)
 {
   struct ecc_ctx *ctx = (struct ecc_ctx *) p;
-  ecc_mul_g (ctx->ecc, ctx->rp, ctx->ap, ctx->tp);
+  ctx->ecc->mul_g (ctx->ecc, ctx->rp, ctx->ap, ctx->tp);
 }
 
 static void
 bench_mul_a (void *p)
 {
   struct ecc_ctx *ctx = (struct ecc_ctx *) p;
-  ecc_mul_a (ctx->ecc, ctx->rp, ctx->ap, ctx->bp, ctx->tp);
+  ctx->ecc->mul (ctx->ecc, ctx->rp, ctx->ap, ctx->bp, ctx->tp);
 }
 
 static void
@@ -258,20 +258,6 @@ bench_add_ehh (void *p)
   ecc_add_ehh (ctx->ecc, ctx->rp, ctx->ap, ctx->bp, ctx->tp);
 }
 
-static void
-bench_mul_g_eh (void *p)
-{
-  struct ecc_ctx *ctx = (struct ecc_ctx *) p;
-  ecc_mul_g_eh (ctx->ecc, ctx->rp, ctx->ap, ctx->tp);
-}
-
-static void
-bench_mul_a_eh (void *p)
-{
-  struct ecc_ctx *ctx = (struct ecc_ctx *) p;
-  ecc_mul_a_eh (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)
@@ -322,7 +308,7 @@ bench_curve (const struct ecc_curve *ecc)
   modp = time_function (bench_modp, &ctx);
   redc = ecc->redc ? time_function (bench_redc, &ctx) : 0;
 
-  modq = ecc->modq ? time_function (bench_modq, &ctx) : 0;
+  modq = time_function (bench_modq, &ctx);
 
   modinv = time_function (bench_modinv, &ctx);
 #if !NETTLE_USE_MINI_GMP
@@ -338,8 +324,6 @@ bench_curve (const struct ecc_curve *ecc)
   if (ecc->bit_size == 255)
     {
       /* For now, curve25519 is a special case */
-      mul_g = time_function (bench_mul_g_eh, &ctx);
-      mul_a = time_function (bench_mul_a_eh, &ctx);
       dup_jj = time_function (bench_dup_eh, &ctx);
       add_jja = time_function (bench_add_eh, &ctx);
       add_jjj = time_function (bench_add_ehh, &ctx);
@@ -349,9 +333,9 @@ bench_curve (const struct ecc_curve *ecc)
       dup_jj = time_function (bench_dup_jj, &ctx);
       add_jja = time_function (bench_add_jja, &ctx);
       add_jjj = time_function (bench_add_jjj, &ctx);
-      mul_g = time_function (bench_mul_g, &ctx);
-      mul_a = time_function (bench_mul_a, &ctx);
     }
+  mul_g = time_function (bench_mul_g, &ctx);
+  mul_a = time_function (bench_mul_a, &ctx);
 
   free (ctx.rp);
   free (ctx.ap);