Implementation notes: amd64, latour, crypto_sign/donald2048

Computer: latour
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_sign
Primitive: donald2048
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
403085761826 15888 3521298504 162239 11320T:cryptoppclang++_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020083020200826
403499757250 10424 4001275914 156751 11416T:cryptoppg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
403637463053 10368 4001284536 156743 11416T:cryptoppg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
403664455309 24400 4001281171 170511 11416T:cryptoppg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
404135156839 15664 3521288492 162247 11320T:cryptoppclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020083020200826
404480765717 15056 3521303084 161391 11320T:cryptoppclang++_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020083020200826
404636461826 15888 3521298504 162239 11320T:cryptoppclang++_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020083020200826
405443764006 10368 4001282796 156743 11416T:cryptoppg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826

Test failure

Implementation: T:openssl
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111
crypto_sign_keypair returns nonzero

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:openssl
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:openssl
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:openssl
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:openssl
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:openssl
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl

Compiler output

Implementation: T:opensslnew
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
keypair.c: keypair.c:29:8: warning: implicit declaration of function 'DSA_set0_pqg' is invalid in C99 [-Wimplicit-function-declaration]
keypair.c: if (!DSA_set0_pqg(x,p,q,g)) goto error;
keypair.c: ^
keypair.c: keypair.c:34:7: warning: implicit declaration of function 'DSA_get0_pub_key' is invalid in C99 [-Wimplicit-function-declaration]
keypair.c: z = DSA_get0_pub_key(x);
keypair.c: ^
keypair.c: keypair.c:34:5: warning: incompatible integer to pointer conversion assigning to 'const BIGNUM *' (aka 'const struct bignum_st *') from 'int' [-Wint-conversion]
keypair.c: z = DSA_get0_pub_key(x);
keypair.c: ^ ~~~~~~~~~~~~~~~~~~~
keypair.c: keypair.c:40:7: warning: implicit declaration of function 'DSA_get0_priv_key' is invalid in C99 [-Wimplicit-function-declaration]
keypair.c: z = DSA_get0_priv_key(x);
keypair.c: ^
keypair.c: keypair.c:40:5: warning: incompatible integer to pointer conversion assigning to 'const BIGNUM *' (aka 'const struct bignum_st *') from 'int' [-Wint-conversion]
keypair.c: z = DSA_get0_priv_key(x);
keypair.c: ^ ~~~~~~~~~~~~~~~~~~~~
keypair.c: 5 warnings generated.
signatureofshorthash.c: signatureofshorthash.c:41:8: warning: implicit declaration of function 'DSA_set0_pqg' is invalid in C99 [-Wimplicit-function-declaration]
signatureofshorthash.c: if (!DSA_set0_pqg(x,p,q,g)) goto error;
signatureofshorthash.c: ^
signatureofshorthash.c: signatureofshorthash.c:51:8: warning: implicit declaration of function 'DSA_set0_key' is invalid in C99 [-Wimplicit-function-declaration]
signatureofshorthash.c: if (!DSA_set0_key(x,pub_key,priv_key)) goto error;
signatureofshorthash.c: ^
signatureofshorthash.c: signatureofshorthash.c:59:3: warning: implicit declaration of function 'DSA_SIG_get0' is invalid in C99 [-Wimplicit-function-declaration]
signatureofshorthash.c: DSA_SIG_get0(y,&r,&s);
signatureofshorthash.c: ^
signatureofshorthash.c: 3 warnings generated.
verification.c: verification.c:38:8: warning: implicit declaration of function 'DSA_set0_pqg' is invalid in C99 [-Wimplicit-function-declaration]
verification.c: if (!DSA_set0_pqg(x,p,q,g)) goto error;
verification.c: ^
verification.c: verification.c:44:8: warning: implicit declaration of function 'DSA_set0_key' is invalid in C99 [-Wimplicit-function-declaration]
verification.c: if (!DSA_set0_key(x,pub_key,0)) goto error;
verification.c: ^
verification.c: verification.c:55:8: warning: implicit declaration of function 'DSA_SIG_set0' is invalid in C99 [-Wimplicit-function-declaration]
verification.c: if (!DSA_SIG_set0(y,r,s)) goto error;
verification.c: ^
verification.c: 3 warnings generated.
try.c: crypto_sign_donald2048.a(keypair.o): In function `crypto_sign_donald2048_opensslnew_timingleaks_keypair':
try.c: keypair.c:(.text+0x...): undefined reference to `DSA_set0_pqg'
try.c: keypair.c:(.text+0x...): undefined reference to `DSA_get0_pub_key'
try.c: keypair.c:(.text+0x...): undefined reference to `DSA_get0_priv_key'
try.c: crypto_sign_donald2048.a(verification.o): In function `crypto_sign_donald2048_opensslnew_timingleaks_verification':
try.c: verification.c:(.text+0x...): undefined reference to `DSA_set0_pqg'
try.c: verification.c:(.text+0x...): undefined reference to `DSA_set0_key'
try.c: verification.c:(.text+0x...): undefined reference to `DSA_SIG_set0'
try.c: crypto_sign_donald2048.a(signatureofshorthash.o): In function `crypto_sign_donald2048_opensslnew_timingleaks_signatureofshorthash':
try.c: signatureofshorthash.c:(.text+0x...): undefined reference to `DSA_set0_pqg'
try.c: signatureofshorthash.c:(.text+0x...): undefined reference to `DSA_set0_key'
try.c: signatureofshorthash.c:(.text+0x...): undefined reference to `DSA_SIG_get0'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opensslnew
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opensslnew
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opensslnew
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opensslnew
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opensslnew

Compiler output

Implementation: T:opensslnew
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
keypair.c: keypair.c: In function 'crypto_sign_donald2048_opensslnew_timingleaks_keypair':
keypair.c: keypair.c:29:8: warning: implicit declaration of function 'DSA_set0_pqg' [-Wimplicit-function-declaration]
keypair.c: if (!DSA_set0_pqg(x,p,q,g)) goto error;
keypair.c: ^
keypair.c: keypair.c:34:7: warning: implicit declaration of function 'DSA_get0_pub_key' [-Wimplicit-function-declaration]
keypair.c: z = DSA_get0_pub_key(x);
keypair.c: ^
keypair.c: keypair.c:34:5: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
keypair.c: z = DSA_get0_pub_key(x);
keypair.c: ^
keypair.c: keypair.c:40:7: warning: implicit declaration of function 'DSA_get0_priv_key' [-Wimplicit-function-declaration]
keypair.c: z = DSA_get0_priv_key(x);
keypair.c: ^
keypair.c: keypair.c:40:5: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
keypair.c: z = DSA_get0_priv_key(x);
keypair.c: ^
signatureofshorthash.c: signatureofshorthash.c: In function 'crypto_sign_donald2048_opensslnew_timingleaks_signatureofshorthash':
signatureofshorthash.c: signatureofshorthash.c:41:8: warning: implicit declaration of function 'DSA_set0_pqg' [-Wimplicit-function-declaration]
signatureofshorthash.c: if (!DSA_set0_pqg(x,p,q,g)) goto error;
signatureofshorthash.c: ^
signatureofshorthash.c: signatureofshorthash.c:51:8: warning: implicit declaration of function 'DSA_set0_key' [-Wimplicit-function-declaration]
signatureofshorthash.c: if (!DSA_set0_key(x,pub_key,priv_key)) goto error;
signatureofshorthash.c: ^
signatureofshorthash.c: signatureofshorthash.c:59:3: warning: implicit declaration of function 'DSA_SIG_get0' [-Wimplicit-function-declaration]
signatureofshorthash.c: DSA_SIG_get0(y,&r,&s);
signatureofshorthash.c: ^
verification.c: verification.c: In function 'crypto_sign_donald2048_opensslnew_timingleaks_verification':
verification.c: verification.c:38:8: warning: implicit declaration of function 'DSA_set0_pqg' [-Wimplicit-function-declaration]
verification.c: if (!DSA_set0_pqg(x,p,q,g)) goto error;
verification.c: ^
verification.c: verification.c:44:8: warning: implicit declaration of function 'DSA_set0_key' [-Wimplicit-function-declaration]
verification.c: if (!DSA_set0_key(x,pub_key,0)) goto error;
verification.c: ^
verification.c: verification.c:55:8: warning: implicit declaration of function 'DSA_SIG_set0' [-Wimplicit-function-declaration]
verification.c: if (!DSA_SIG_set0(y,r,s)) goto error;
verification.c: ^
try.c: crypto_sign_donald2048.a(keypair.o): In function `crypto_sign_donald2048_opensslnew_timingleaks_keypair':
try.c: keypair.c:(.text+0x...): undefined reference to `DSA_set0_pqg'
try.c: keypair.c:(.text+0x...): undefined reference to `DSA_get0_pub_key'
try.c: keypair.c:(.text+0x...): undefined reference to `DSA_get0_priv_key'
try.c: crypto_sign_donald2048.a(verification.o): In function `crypto_sign_donald2048_opensslnew_timingleaks_verification':
try.c: verification.c:(.text+0x...): undefined reference to `DSA_set0_pqg'
try.c: verification.c:(.text+0x...): undefined reference to `DSA_set0_key'
try.c: verification.c:(.text+0x...): undefined reference to `DSA_SIG_set0'
try.c: crypto_sign_donald2048.a(signatureofshorthash.o): In function `crypto_sign_donald2048_opensslnew_timingleaks_signatureofshorthash':
try.c: signatureofshorthash.c:(.text+0x...): undefined reference to `DSA_set0_pqg'
try.c: signatureofshorthash.c:(.text+0x...): undefined reference to `DSA_set0_key'
try.c: signatureofshorthash.c:(.text+0x...): undefined reference to `DSA_SIG_get0'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opensslnew
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opensslnew
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opensslnew
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opensslnew