Implementation notes: amd64, intelnuci7, crypto_sign/sphincsf128sha256robust

Computer: intelnuci7
Architecture: amd64
CPU ID: GenuineIntel-000806e9-bfebfbff
SUPERCOP version: 20191017
Operation: crypto_sign
Primitive: sphincsf128sha256robust
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
11157740259176 0 083344 800 1672avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121120191017
11469899658421 0 081523 792 1640avx2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121120191017
11485347457944 0 081011 792 1640avx2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121120191017
11538521257944 0 081011 792 1640avx2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121120191017
12159645245263 0 064561 784 1640avx2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121120191017
12286441852837 0 073752 800 1672avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121120191017
13545395251796 0 072640 800 1672avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121120191017
15028451050429 0 070248 792 1640avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121120191017
27590691623880 0 048040 800 1672refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121120191017
30352556222195 0 045307 792 1640refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121120191017
30429091821739 0 044819 792 1640refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121120191017
30451116621739 0 044819 792 1640refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121120191017
31219306021427 0 042320 800 1672refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121120191017
31570239219538 0 038865 784 1640refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121120191017
36593789421743 0 042624 800 1672refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121120191017
38489993022332 0 044579 792 1640refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121120191017
39471638020596 0 040448 792 1640refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121120191017

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
sha256avx.c: sha256avx.c:11:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[0] = _mm256_unpacklo_epi32(s[0], s[1]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:12:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[1] = _mm256_unpackhi_epi32(s[0], s[1]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:13:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[2] = _mm256_unpacklo_epi32(s[2], s[3]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:14:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[3] = _mm256_unpackhi_epi32(s[2], s[3]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:15:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[4] = _mm256_unpacklo_epi32(s[4], s[5]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:16:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[5] = _mm256_unpackhi_epi32(s[4], s[5]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:17:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[6] = _mm256_unpacklo_epi32(s[6], s[7]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:18:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[7] = _mm256_unpackhi_epi32(s[6], s[7]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:19:15: error: always_inline function '_mm256_unpacklo_epi64' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2

Namespace violations

Implementation: avx2
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
address.o addr_to_bytes T
address.o copy_keypair_addr T
address.o copy_subtree_addr T
address.o set_chain_addr T
address.o set_hash_addr T
address.o set_keypair_addr T
address.o set_layer_addr T
address.o set_tree_addr T
address.o set_tree_height T
address.o set_tree_index T
address.o set_type T
fors.o fors_pk_from_sig T
fors.o fors_sign T
hash_sha256.o gen_message_random T
hash_sha256.o hash_message T
hash_sha256.o initialize_hash_function T
hash_sha256.o prf_addr T
hash_sha256.o state_seeded C
hash_sha256x8.o prf_addrx8 T
hash_sha256x8.o state_seeded C
sha256.o compress_address T
sha256.o mgf1 T
sha256.o seed_state T
sha256.o sha256 T
sha256.o sha256_inc_blocks T
sha256.o sha256_inc_finalize T
sha256.o sha256_inc_init T
sha256.o state_seeded C
sha256avx.o sha256_final8x T
sha256avx.o sha256_init8x T
sha256avx.o sha256_init_frombytes_x8 T
sha256avx.o sha256_transform8x T
sha256avx.o sha256_update8x T
sha256avx.o transpose T
sha256x8.o mgf1x8 T
sha256x8.o sha256x8 T
sign.o crypto_sign_bytes T
sign.o crypto_sign_publickeybytes T
sign.o crypto_sign_secretkeybytes T
sign.o crypto_sign_seed_keypair T
sign.o crypto_sign_seedbytes T
sign.o crypto_sign_signature T
sign.o crypto_sign_verify T
thash_sha256_robust.o state_seeded C
thash_sha256_robust.o thash T
thash_sha256_robustx8.o state_seeded C
thash_sha256_robustx8.o thashx8 T
utils.o bytes_to_ull T
utils.o compute_root T
utils.o treehash T
utils.o ull_to_bytes T
utilsx8.o treehashx8 T
wots.o wots_gen_pk T
wots.o wots_pk_from_sig T
wots.o wots_sign T

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

Namespace violations

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
address.o addr_to_bytes T
address.o copy_keypair_addr T
address.o copy_subtree_addr T
address.o set_chain_addr T
address.o set_hash_addr T
address.o set_keypair_addr T
address.o set_layer_addr T
address.o set_tree_addr T
address.o set_tree_height T
address.o set_tree_index T
address.o set_type T
fors.o fors_pk_from_sig T
fors.o fors_sign T
hash_sha256.o gen_message_random T
hash_sha256.o hash_message T
hash_sha256.o initialize_hash_function T
hash_sha256.o prf_addr T
hash_sha256.o state_seeded C
sha256.o compress_address T
sha256.o mgf1 T
sha256.o seed_state T
sha256.o sha256 T
sha256.o sha256_inc_blocks T
sha256.o sha256_inc_finalize T
sha256.o sha256_inc_init T
sha256.o state_seeded C
sign.o crypto_sign_bytes T
sign.o crypto_sign_publickeybytes T
sign.o crypto_sign_secretkeybytes T
sign.o crypto_sign_seed_keypair T
sign.o crypto_sign_seedbytes T
sign.o crypto_sign_signature T
sign.o crypto_sign_verify T
thash_sha256_robust.o state_seeded C
thash_sha256_robust.o thash T
utils.o bytes_to_ull T
utils.o compute_root T
utils.o treehash T
utils.o ull_to_bytes T
wots.o wots_gen_pk T
wots.o wots_pk_from_sig T
wots.o wots_sign T

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