Przeglądaj źródła

tests: bring back mult and sqr timing

Steffen Jaeckel 11 lat temu
rodzic
commit
9e2e7fdfd4
1 zmienionych plików z 15 dodań i 13 usunięć
  1. 15 13
      testprof/x86_prof.c

+ 15 - 13
testprof/x86_prof.c

@@ -774,8 +774,10 @@ int time_hash(void)
    return 0;
 }
 
-#undef MPI
 /*#warning you need an mp_rand!!!*/
+#ifndef USE_LTM
+  #undef MPI
+#endif
 
 #ifdef MPI
 void time_mult(void)
@@ -786,11 +788,11 @@ void time_mult(void)
 
    fprintf(stderr, "Timing Multiplying:\n");
    mp_init_multi(&a,&b,&c,NULL);
-   for (x = 128/DIGIT_BIT; x <= 1536/DIGIT_BIT; x += 128/DIGIT_BIT) {
-       mp_rand(&a, x);
-       mp_rand(&b, x);
+   for (x = 128/MP_DIGIT_BIT; x <= (unsigned long)1536/MP_DIGIT_BIT; x += 128/MP_DIGIT_BIT) {
+       mp_rand(a, x);
+       mp_rand(b, x);
 
-#define DO1 mp_mul(&a, &b, &c);
+#define DO1 mp_mul(a, b, c);
 #define DO2 DO1; DO1;
 
        t2 = -1;
@@ -801,9 +803,9 @@ void time_mult(void)
            t1 = (t_read() - t1)>>1;
            if (t1 < t2) t2 = t1;
        }
-       fprintf(stderr, "%4lu bits: %9llu cycles\n", x*DIGIT_BIT, t2);
+       fprintf(stderr, "%4lu bits: %9llu cycles\n", x*MP_DIGIT_BIT, t2);
    }
-   mp_clear_multi(&a,&b,&c,NULL);
+   mp_clear_multi(a,b,c,NULL);
 
 #undef DO1
 #undef DO2
@@ -813,14 +815,14 @@ void time_sqr(void)
 {
    ulong64 t1, t2;
    unsigned long x, y;
-   mp_int  a, b;
+   void *a, *b;
 
    fprintf(stderr, "Timing Squaring:\n");
    mp_init_multi(&a,&b,NULL);
-   for (x = 128/DIGIT_BIT; x <= 1536/DIGIT_BIT; x += 128/DIGIT_BIT) {
-       mp_rand(&a, x);
+   for (x = 128/MP_DIGIT_BIT; x <= (unsigned long)1536/MP_DIGIT_BIT; x += 128/MP_DIGIT_BIT) {
+       mp_rand(a, x);
 
-#define DO1 mp_sqr(&a, &b);
+#define DO1 mp_sqr(a, b);
 #define DO2 DO1; DO1;
 
        t2 = -1;
@@ -831,9 +833,9 @@ void time_sqr(void)
            t1 = (t_read() - t1)>>1;
            if (t1 < t2) t2 = t1;
        }
-       fprintf(stderr, "%4lu bits: %9llu cycles\n", x*DIGIT_BIT, t2);
+       fprintf(stderr, "%4lu bits: %9llu cycles\n", x*MP_DIGIT_BIT, t2);
    }
-   mp_clear_multi(&a,&b,NULL);
+   mp_clear_multi(a,b,NULL);
 
 #undef DO1
 #undef DO2