Implementation notes: amd64, cherry, crypto_kem/sikep751

Computer: cherry
Microarchitecture: amd64; Silvermont (406c4)
Architecture: amd64
CPU ID: GenuineIntel-000406c4-bfebfbff
SUPERCOP version: 20240716
Operation: crypto_kem
Primitive: sikep751
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
397293151116297 0 0135328 820 1720T:amd64asmclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
397316417114217 0 0131616 820 1720T:amd64asmclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
397433343118844 0 0137512 820 1720T:amd64asmclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
40159705139481 0 056494 812 1720T:amd64asmclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
40191635362203 0 082488 788 1752T:amd64asmgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
40195936347396 0 066528 788 1752T:amd64asmgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
40348992730493 0 047152 780 1720T:amd64asmgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
40369630333768 0 051414 812 1720T:amd64asmclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
40431230834930 0 053448 788 1752T:amd64asmgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
2361241596118609 0 0137704 820 1720T:amd64clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
2380639731106521 0 0123976 820 1720T:amd64clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
2413947418115531 0 0135776 788 1752T:amd64gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024080420240716
2489115237120996 0 0139696 820 1720T:amd64clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
268765097439288 0 056350 812 1720T:amd64clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
284995701847372 0 066456 788 1752T:amd64gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024080420240716
303988094935499 0 054040 788 1752T:amd64gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716
396240578224750 0 041424 780 1720T:amd64gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024080420240716
398355536629641 0 047334 812 1720T:amd64clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024080520240716

Test failure


error 111

Number of similar (implementation,compiler) pairs: 18, namely:
ImplementationCompiler
T:mulxclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:mulxclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:mulxclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:mulxclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:mulxclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:mulxgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:mulxgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:mulxgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:mulxgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:mulxadxclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:mulxadxclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:mulxadxclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:mulxadxclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:mulxadxclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:mulxadxgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:mulxadxgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:mulxadxgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:mulxadxgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Test failure


error 142
Alarm clock

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

Compiler output


api_generic.c: api_generic.c:95:1: warning: unused label 'end' [-Wunused-label]
api_generic.c: end:
api_generic.c: ^~~~
api_generic.c: 1 warning generated.
fips202.c: fips202.c:578:13: warning: unused function 'cshake256_simple_absorb_for_kmac256' [-Wunused-function]
fips202.c: static void cshake256_simple_absorb_for_kmac256(uint64_t s[25], uint16_t cstm, const unsigned char *in, unsigned long long inlen)
fips202.c:             ^
fips202.c: 1 warning generated.

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

Compiler output


api_generic.c: api_generic.c: In function 'crypto_kem_dec_generic':
api_generic.c: api_generic.c:95:1: warning: label 'end' defined but not used [-Wunused-label]
api_generic.c:    95 | end:
api_generic.c:       | ^~~
fips202.c: fips202.c:578:13: warning: 'cshake256_simple_absorb_for_kmac256' defined but not used [-Wunused-function]
fips202.c:   578 | static void cshake256_simple_absorb_for_kmac256(uint64_t s[25], uint16_t cstm, const unsigned char *in, unsigned long long inlen)
fips202.c:       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

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

Namespace violations


P751.o A_gen R
P751.o Alice_order R
P751.o B_gen R
P751.o Bob_order R
P751.o EphemeralKeyGeneration_A_SIDHp751 T
P751.o EphemeralKeyGeneration_B_SIDHp751 T
P751.o EphemeralSecretAgreement_A_SIDHp751 T
P751.o EphemeralSecretAgreement_B_SIDHp751 T
P751.o Montgomery_R2 R
P751.o Montgomery_one R
P751.o clear_words T
P751.o copy_words T
P751.o ct_cmov T
P751.o ct_compare T
P751.o eval_3_isog T
P751.o eval_4_isog T
P751.o fp2add751 T
P751.o fp2copy751 T
P751.o fp2correction751 T
P751.o fp2div2_751 T
P751.o fp2inv751_mont T
P751.o fp2mul751_mont T
P751.o fp2neg751 T
P751.o fp2sqr751_mont T
P751.o fp2sub751 T
P751.o fp2zero751 T
P751.o fpcopy751 T
P751.o fpinv751_chain_mont T
P751.o fpinv751_mont T
P751.o fpmul751_mont T
P751.o fpsqr751_mont T
P751.o fpzero751 T
P751.o from_fp2mont T
P751.o from_mont T
P751.o get_3_isog T
P751.o get_4_isog T
P751.o get_A T
P751.o inv_3_way T
P751.o j_inv T
P751.o mp_add T
P751.o mp_shiftl1 T
P751.o mp_shiftleft T
P751.o mp_shiftr1 T
P751.o mp_sub T
P751.o p751 R
P751.o p751p1 R
P751.o p751x16p R
P751.o p751x2 R
P751.o p751x4 R
P751.o random_mod_order_A_SIDHp751 T
P751.o random_mod_order_B_SIDHp751 T
P751.o strat_Alice R
P751.o strat_Bob R
P751.o to_fp2mont T
P751.o to_mont T
P751.o xDBL T
P751.o xDBLADD T
P751.o xDBLe T
P751.o xTPL T
P751.o xTPLe T
fips202.o KeccakF1600_StatePermute T
fips202.o shake128 T
fips202.o shake128_absorb T
fips202.o shake128_squeezeblocks T
fips202.o shake256 T
fips202.o shake256_absorb T
fips202.o shake256_squeezeblocks T
fp_generic.o digit_x_digit T
fp_generic.o fpadd751 T
fp_generic.o fpcorrection751 T
fp_generic.o fpdiv2_751 T
fp_generic.o fpneg751 T
fp_generic.o fpsub751 T
fp_generic.o mp_mul T
fp_generic.o mp_sub751_p2 T
fp_generic.o mp_sub751_p4 T
fp_generic.o rdc_mont T

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

Namespace violations


P751.o A_gen R
P751.o Alice_order R
P751.o B_gen R
P751.o Bob_order R
P751.o EphemeralKeyGeneration_A_SIDHp751 T
P751.o EphemeralKeyGeneration_B_SIDHp751 T
P751.o EphemeralSecretAgreement_A_SIDHp751 T
P751.o EphemeralSecretAgreement_B_SIDHp751 T
P751.o Montgomery_R2 R
P751.o Montgomery_one R
P751.o clear_words T
P751.o copy_words T
P751.o ct_cmov T
P751.o ct_compare T
P751.o eval_3_isog T
P751.o eval_4_isog T
P751.o fp2add751 T
P751.o fp2copy751 T
P751.o fp2correction751 T
P751.o fp2div2_751 T
P751.o fp2inv751_mont T
P751.o fp2mul751_mont T
P751.o fp2neg751 T
P751.o fp2sqr751_mont T
P751.o fp2sub751 T
P751.o fp2zero751 T
P751.o fpcopy751 T
P751.o fpinv751_chain_mont T
P751.o fpinv751_mont T
P751.o fpmul751_mont T
P751.o fpsqr751_mont T
P751.o fpzero751 T
P751.o from_fp2mont T
P751.o from_mont T
P751.o get_3_isog T
P751.o get_4_isog T
P751.o get_A T
P751.o inv_3_way T
P751.o j_inv T
P751.o mp_add T
P751.o mp_shiftl1 T
P751.o mp_shiftleft T
P751.o mp_shiftr1 T
P751.o mp_sub T
P751.o p751 R
P751.o p751p1 R
P751.o p751x16p R
P751.o p751x2 R
P751.o p751x4 R
P751.o random_mod_order_A_SIDHp751 T
P751.o random_mod_order_B_SIDHp751 T
P751.o strat_Alice R
P751.o strat_Bob R
P751.o to_fp2mont T
P751.o to_mont T
P751.o xDBL T
P751.o xDBLADD T
P751.o xDBLe T
P751.o xTPL T
P751.o xTPLe T
fips202.o KeccakF1600_StatePermute T
fips202.o shake128 T
fips202.o shake128_absorb T
fips202.o shake128_squeezeblocks T
fips202.o shake256 T
fips202.o shake256_absorb T
fips202.o shake256_squeezeblocks T
fp_x64.o fpadd751 T
fp_x64.o fpcorrection751 T
fp_x64.o fpdiv2_751 T
fp_x64.o fpneg751 T
fp_x64.o fpsub751 T
fp_x64.o mp_mul T
fp_x64.o mp_sub751_p2 T
fp_x64.o mp_sub751_p4 T
fp_x64.o rdc_mont T
fp_x64_asm.o fpadd751_asm T
fp_x64_asm.o fpsub751_asm T
fp_x64_asm.o mp_add751_asm T
fp_x64_asm.o mp_dblsub751x2_asm T
fp_x64_asm.o mp_sub751_p2_asm T
fp_x64_asm.o mp_sub751_p4_asm T
fp_x64_asm.o mp_subadd751x2_asm T
fp_x64_asm.o mul751_asm T
fp_x64_asm.o rdc751_asm T

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