Implementation notes: amd64, rome0, crypto_sign/ecdonaldk283

Computer: rome0
Microarchitecture: amd64; Zen 2 (830f10)
Architecture: amd64
CPU ID: AuthenticAMD-00830f10-178bfbff
SUPERCOP version: 20240625
Operation: crypto_sign
Primitive: ecdonaldk283
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
52470782773 0 026088 1036 1720T:opensslnewclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062520240625
52584132889 0 028851 1028 1752T:opensslnewgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062520240625
52625622779 0 028394 1044 1752T:opensslnewclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062520240625
52854302684 0 025315 1020 1752T:opensslnewgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062520240625
52931332790 0 028570 1044 1752T:opensslnewclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062520240625
52954362800 0 026328 1036 1720T:opensslnewclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062520240625
53004442889 0 027155 1028 1752T:opensslnewgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062520240625
53019223460 0 027275 1028 1752T:opensslnewgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062520240625
53080732835 0 028898 1044 1720T:opensslnewclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062520240625

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_ecdonaldk283_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_ecdonaldk283_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_ecdonaldk283_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)