From: Andy Polyakov Date: Sun, 31 Dec 2017 12:23:08 +0000 (+0100) Subject: ec/curve25519.c: avoid 2^51 radix on SPARC. X-Git-Tag: OpenSSL_1_1_1-pre1~225 X-Git-Url: https://git.openssl.org/?p=openssl.git;a=commitdiff_plain;h=26b05245f0d3a6cea970f104f6aff388948fe318 ec/curve25519.c: avoid 2^51 radix on SPARC. SPARC ISA doesn't have provisions to back up 128-bit multiplications and additions. And so multiplications are done with library calls and carries with comparisons and conditional moves. As result base 2^51 code is >40% slower... Reviewed-by: Tim Hudson --- diff --git a/crypto/ec/curve25519.c b/crypto/ec/curve25519.c index d1c725fa39..f32fc04d6a 100644 --- a/crypto/ec/curve25519.c +++ b/crypto/ec/curve25519.c @@ -12,6 +12,7 @@ #include #if !defined(PEDANTIC) && \ + !defined(__sparc__) && \ (defined(__SIZEOF_INT128__) && __SIZEOF_INT128__==16) /* * Base 2^51 implementation.