X-Git-Url: https://www.bearssl.org/gitweb//home/git/?p=BearSSL;a=blobdiff_plain;f=test%2Ftest_speed.c;h=a09aa0493b39db12f23c628135be4df051371e93;hp=d7dfaadedc27ab0cb7ad7b1b24ac849fad74c800;hb=refs%2Ftags%2Fv0.4;hpb=5f045c759957fdff8c85716e6af99e10901fdac0 diff --git a/test/test_speed.c b/test/test_speed.c index d7dfaad..a09aa04 100644 --- a/test/test_speed.c +++ b/test/test_speed.c @@ -249,6 +249,7 @@ SPEED_AES(small) SPEED_AES(ct) SPEED_AES(ct64) SPEED_AES(x86ni) +SPEED_AES(pwr8) #define br_des_tab_cbcenc_get_vtable() (&br_des_tab_cbcenc_vtable) #define br_des_tab_cbcdec_get_vtable() (&br_des_tab_cbcdec_vtable) @@ -334,6 +335,20 @@ test_speed_ghash_pclmul(void) } } +static void +test_speed_ghash_pwr8(void) +{ + br_ghash gh; + + gh = br_ghash_pwr8_get(); + if (gh == 0) { + printf("%-30s UNAVAILABLE\n", "GHASH (pwr8)"); + fflush(stdout); + } else { + test_speed_ghash_inner("GHASH (pwr8)", gh); + } +} + static uint32_t fake_chacha20(const void *key, const void *iv, uint32_t cc, void *data, size_t len) @@ -401,6 +416,19 @@ test_speed_poly1305_ctmul32(void) &br_poly1305_ctmul32_run); } +static void +test_speed_poly1305_ctmulq(void) +{ + br_poly1305_run bp; + + bp = br_poly1305_ctmulq_get(); + if (bp == 0) { + printf("%-30s UNAVAILABLE\n", "Poly1305 (ctmulq)"); + } else { + test_speed_poly1305_inner("Poly1305 (ctmulq)", bp); + } +} + static void test_speed_poly1305_i15(void) { @@ -638,6 +666,21 @@ test_speed_rsa_i32(void) &br_rsa_i32_public, &br_rsa_i32_private); } +static void +test_speed_rsa_i62(void) +{ + br_rsa_public pub; + br_rsa_private priv; + + pub = br_rsa_i62_public_get(); + priv = br_rsa_i62_private_get(); + if (pub) { + test_speed_rsa_inner("RSA i62", pub, priv); + } else { + printf("%-30s UNAVAILABLE\n", "RSA i62"); + } +} + static void test_speed_ec_inner_1(const char *name, const br_ec_impl *impl, const br_ec_curve_def *cd) @@ -1215,6 +1258,16 @@ static const struct { STU(aes192_x86ni_ctr), STU(aes256_x86ni_ctr), + STU(aes128_pwr8_cbcenc), + STU(aes128_pwr8_cbcdec), + STU(aes192_pwr8_cbcenc), + STU(aes192_pwr8_cbcdec), + STU(aes256_pwr8_cbcenc), + STU(aes256_pwr8_cbcdec), + STU(aes128_pwr8_ctr), + STU(aes192_pwr8_ctr), + STU(aes256_pwr8_ctr), + STU(des_tab_cbcenc), STU(des_tab_cbcdec), STU(3des_tab_cbcenc), @@ -1231,14 +1284,17 @@ static const struct { STU(ghash_ctmul32), STU(ghash_ctmul64), STU(ghash_pclmul), + STU(ghash_pwr8), STU(poly1305_ctmul), STU(poly1305_ctmul32), + STU(poly1305_ctmulq), STU(poly1305_i15), STU(rsa_i15), STU(rsa_i31), STU(rsa_i32), + STU(rsa_i62), STU(ec_prime_i15), STU(ec_prime_i31), STU(ec_p256_m15),