Implementation notes: amd64, alder2,1f626960,5600000, crypto_sign/ecdonaldb409

Computer: alder2,1f626960,5600000
Microarchitecture: amd64; Golden Cove (906a4-40)
Architecture: amd64
CPU ID: GenuineIntel-000906a4-40-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_sign
Primitive: ecdonaldb409
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
63492342809 0 029482 1044 1784T:opensslnewclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
63785782792 0 026824 1036 1752T:opensslnewclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
63806142941 0 029939 1028 1784T:opensslnewgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
63826612798 0 029322 1044 1784T:opensslnewclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
63833862941 0 027963 1028 1784T:opensslnewgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
63910273428 0 028083 1028 1784T:opensslnewgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
63924812818 0 027200 1036 1752T:opensslnewclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
64018752872 0 029674 1044 1752T:opensslnewclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
64138462684 0 026059 1020 1784T:opensslnewgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625

Compiler output


signatureofshorthash.c: signatureofshorthash.c:54:24: error: incomplete definition of type 'struct ECDSA_SIG_st'
signatureofshorthash.c:   len = BN_num_bytes(rs->r); if (len > PRIME_BYTES) goto rserror;
signatureofshorthash.c:                      ~~^
signatureofshorthash.c: /usr/include/openssl/bn.h:181:40: note: expanded from macro 'BN_num_bytes'
signatureofshorthash.c: # define BN_num_bytes(a) ((BN_num_bits(a)+7)/8)
signatureofshorthash.c:                                        ^
signatureofshorthash.c: /usr/include/openssl/ec.h:1130:16: note: forward declaration of 'struct ECDSA_SIG_st'
signatureofshorthash.c: typedef struct ECDSA_SIG_st ECDSA_SIG;
signatureofshorthash.c:                ^
signatureofshorthash.c: signatureofshorthash.c:55:15: error: incomplete definition of type 'struct ECDSA_SIG_st'
signatureofshorthash.c:   BN_bn2bin(rs->r,sm + PRIME_BYTES - len); sm += PRIME_BYTES;
signatureofshorthash.c:             ~~^
signatureofshorthash.c: /usr/include/openssl/ec.h:1130:16: note: forward declaration of 'struct ECDSA_SIG_st'
signatureofshorthash.c: typedef struct ECDSA_SIG_st ECDSA_SIG;
signatureofshorthash.c:                ^
signatureofshorthash.c: signatureofshorthash.c:57:24: error: incomplete definition of type 'struct ECDSA_SIG_st'
signatureofshorthash.c:   len = BN_num_bytes(rs->s); if (len > PRIME_BYTES) goto rserror;
signatureofshorthash.c:                      ~~^
signatureofshorthash.c: /usr/include/openssl/bn.h:181:40: note: expanded from macro 'BN_num_bytes'
signatureofshorthash.c: # define BN_num_bytes(a) ((BN_num_bits(a)+7)/8)
signatureofshorthash.c:                                        ^
signatureofshorthash.c: /usr/include/openssl/ec.h:1130:16: note: forward declaration of 'struct ECDSA_SIG_st'
signatureofshorthash.c: typedef struct ECDSA_SIG_st ECDSA_SIG;
signatureofshorthash.c:                ^
signatureofshorthash.c: signatureofshorthash.c:58:15: error: incomplete definition of type 'struct ECDSA_SIG_st'
signatureofshorthash.c: ...

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:opensslclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:opensslclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:opensslclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:opensslclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:opensslclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


signatureofshorthash.c: signatureofshorthash.c: In function 'crypto_sign_ecdonaldb409_openssl_timingleaks_signatureofshorthash':
signatureofshorthash.c: signatureofshorthash.c:39:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
signatureofshorthash.c:    39 |   if (!BN_bin2bn(sk,PRIME_BYTES,kx)) goto error; sk += PRIME_BYTES;
signatureofshorthash.c:       |   ^~
signatureofshorthash.c: signatureofshorthash.c:39:50: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
signatureofshorthash.c:    39 |   if (!BN_bin2bn(sk,PRIME_BYTES,kx)) goto error; sk += PRIME_BYTES;
signatureofshorthash.c:       |                                                  ^~
signatureofshorthash.c: signatureofshorthash.c:42:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
signatureofshorthash.c:    42 |   if (!BN_bin2bn(sk,PRIME_BYTES,kx)) goto error; sk += PRIME_BYTES;
signatureofshorthash.c:       |   ^~
signatureofshorthash.c: signatureofshorthash.c:42:50: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
signatureofshorthash.c:    42 |   if (!BN_bin2bn(sk,PRIME_BYTES,kx)) goto error; sk += PRIME_BYTES;
signatureofshorthash.c:       |                                                  ^~
signatureofshorthash.c: In file included from /usr/include/openssl/asn1.h:23,
signatureofshorthash.c:                  from /usr/include/openssl/objects.h:15,
signatureofshorthash.c:                  from signatureofshorthash.c:2:
signatureofshorthash.c: signatureofshorthash.c:54:24: error: invalid use of incomplete typedef 'ECDSA_SIG' {aka 'struct ECDSA_SIG_st'}
signatureofshorthash.c:    54 |   len = BN_num_bytes(rs->r); if (len > PRIME_BYTES) goto rserror;
signatureofshorthash.c:       |                        ^~
signatureofshorthash.c: signatureofshorthash.c:55:15: error: invalid use of incomplete typedef 'ECDSA_SIG' {aka 'struct ECDSA_SIG_st'}
signatureofshorthash.c:    55 |   BN_bn2bin(rs->r,sm + PRIME_BYTES - len); sm += PRIME_BYTES;
signatureofshorthash.c:       |               ^~
signatureofshorthash.c: In file included from /usr/include/openssl/asn1.h:23,
signatureofshorthash.c:                  from /usr/include/openssl/objects.h:15,
signatureofshorthash.c:                  from signatureofshorthash.c:2:
signatureofshorthash.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:opensslgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:opensslgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:opensslgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:opensslgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


signatureofshorthash.c: signatureofshorthash.c: In function 'crypto_sign_ecdonaldb409_opensslnew_timingleaks_signatureofshorthash':
signatureofshorthash.c: signatureofshorthash.c:41:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
signatureofshorthash.c:    41 |   if (!BN_bin2bn(sk,PRIME_BYTES,kx)) goto error; sk += PRIME_BYTES;
signatureofshorthash.c:       |   ^~
signatureofshorthash.c: signatureofshorthash.c:41:50: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
signatureofshorthash.c:    41 |   if (!BN_bin2bn(sk,PRIME_BYTES,kx)) goto error; sk += PRIME_BYTES;
signatureofshorthash.c:       |                                                  ^~
signatureofshorthash.c: signatureofshorthash.c:44:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
signatureofshorthash.c:    44 |   if (!BN_bin2bn(sk,PRIME_BYTES,kx)) goto error; sk += PRIME_BYTES;
signatureofshorthash.c:       |   ^~
signatureofshorthash.c: signatureofshorthash.c:44:50: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
signatureofshorthash.c:    44 |   if (!BN_bin2bn(sk,PRIME_BYTES,kx)) goto error; sk += PRIME_BYTES;
signatureofshorthash.c:       |                                                  ^~
verification.c: verification.c: In function 'crypto_sign_ecdonaldb409_opensslnew_timingleaks_verification':
verification.c: verification.c:39:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
verification.c:    39 |   if (!BN_bin2bn(pk,PRIME_BYTES,kx)) goto error; pk += PRIME_BYTES;
verification.c:       |   ^~
verification.c: verification.c:39:50: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
verification.c:    39 |   if (!BN_bin2bn(pk,PRIME_BYTES,kx)) goto error; pk += PRIME_BYTES;
verification.c:       |                                                  ^~
verification.c: verification.c:50:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
verification.c:    50 |   if (!BN_bin2bn(sm,PRIME_BYTES,r)) goto error; sm += PRIME_BYTES;
verification.c:       |   ^~
verification.c: verification.c:50:49: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
verification.c:    50 |   if (!BN_bin2bn(sm,PRIME_BYTES,r)) goto error; sm += PRIME_BYTES;
verification.c:       |                                                 ^~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:opensslnewgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:opensslnewgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:opensslnewgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:opensslnewgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)