Implementation notes: amd64, gcc67, crypto_sign/gui184

Computer: gcc67
Architecture: amd64
CPU ID: AuthenticAMD-00810f10-178bfbff
SUPERCOP version: 20210125
Operation: crypto_sign
Primitive: gui184
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
14584803157714 8 104864468511 948 1050344T:pclmulqdqclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
14986846157282 8 104864467159 948 1050344T:pclmulqdqclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
15840809149293 8 104867658577 948 1050440T:pclmulqdqgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
16741679150470 8 104867659953 948 1050440T:pclmulqdqgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
16777565157282 8 104864467159 948 1050344T:pclmulqdqclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
17122593160652 8 104867672081 948 1050440T:pclmulqdqgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
19589544145478 8 104864453801 940 1050344T:pclmulqdqclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
22033956135991 8 104867644450 948 1050408T:pclmulqdqgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
1577145215142567 0 1048644165353 948 1050440T:amd64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
182014764531292 0 104861253563 932 1050344T:amd64clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
188804491238429 0 104864459345 948 1050440T:amd64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
190392435239273 0 104864460393 948 1050440T:amd64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
193150069830700 0 104861252083 932 1050344T:amd64clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
193210088430700 0 104861252083 932 1050344T:amd64clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
201169821932803 0 104861254539 932 1050344T:amd64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
201837624116433 0 104861236341 924 1050344T:amd64clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
302428562813660 0 104864433898 948 1050408T:amd64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
3866662765198566 0 1048644221553 948 1050440T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
402565465135530 0 104861257483 932 1050344T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
413143957335210 0 104861256259 932 1050344T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
437641921035210 0 104861256259 932 1050344T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
444245301238535 0 104861259795 932 1050344T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
884003311148526 0 104864469689 948 1050440T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
893906923647243 0 104864468185 948 1050440T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114
1187657820014662 0 104861234565 924 1050344T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012020210114
3070325472013060 0 104864433266 948 1050408T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012020210114

Compiler output

Implementation: T:pclmulqdq
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
gfext_poly_gf2.c: In file included from gfext_poly_gf2.c:21:
gfext_poly_gf2.c: In file included from ./gfext.h:20:
gfext_poly_gf2.c: ./gfext_aesni.h:321:2: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
gfext_poly_gf2.c: _MUL_3_KARATSUBA( c0,c128,c256,a0,a128,b0,b128 );
gfext_poly_gf2.c: ^
gfext_poly_gf2.c: ./gfext_aesni.h:55:15: note: expanded from macro '_MUL_3_KARATSUBA'
gfext_poly_gf2.c: __m128i p0 = _mm_clmulepi64_si128( a0 , b0 , 0 ); \
gfext_poly_gf2.c: ^
gfext_poly_gf2.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/__wmmintrin_pclmul.h:27:13: note: expanded from macro '_mm_clmulepi64_si128'
gfext_poly_gf2.c: ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(__X), \
gfext_poly_gf2.c: ^
gfext_poly_gf2.c: In file included from gfext_poly_gf2.c:21:
gfext_poly_gf2.c: In file included from ./gfext.h:20:
gfext_poly_gf2.c: ./gfext_aesni.h:321:2: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
gfext_poly_gf2.c: ./gfext_aesni.h:56:15: note: expanded from macro '_MUL_3_KARATSUBA'
gfext_poly_gf2.c: __m128i p2 = _mm_clmulepi64_si128( b2 , a2 , 0 ); \
gfext_poly_gf2.c: ^
gfext_poly_gf2.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/__wmmintrin_pclmul.h:27:13: note: expanded from macro '_mm_clmulepi64_si128'
gfext_poly_gf2.c: ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(__X), \
gfext_poly_gf2.c: ^
gfext_poly_gf2.c: In file included from gfext_poly_gf2.c:21:
gfext_poly_gf2.c: In file included from ./gfext.h:20:
gfext_poly_gf2.c: ./gfext_aesni.h:321:2: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
gfext_poly_gf2.c: ./gfext_aesni.h:59:17: note: expanded from macro '_MUL_3_KARATSUBA'
gfext_poly_gf2.c: __m128i p012 = _mm_clmulepi64_si128( a1^a0^a2 , b1^b0^b2 , 0 ); \
gfext_poly_gf2.c: ...

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

Namespace violations

Implementation: T:amd64
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
gfext_poly_gf2.o _get_deg1poly_gcd T
gfext_poly_gf2.o find_unique_root_sparse_poly T
gfext_poly_gf2.o poly_eval T
gfext_poly_gf2.o poly_fdump T
gfext_poly_gf2.o poly_normalize T
gui.o InvHFEv_ T
gui.o gui_central_map T
gui.o gui_genkey T
gui.o gui_genkey_debug T
gui.o gui_ivs_central_map T
gui.o gui_pubmap_seckey T
gui.o gui_secmap T
gui_sig.o gui_sign T
gui_sig.o gui_sign_salt T
gui_sig.o gui_verify T
gui_sig.o gui_verify_salt T
gui_sig.o pack_tails T
gui_sig.o split_tails T
hash_utils.o sha2_chain T
hash_utils.o sha2_chain_byte T
hash_utils.o sha2_chain_file T
hash_utils.o sha2_chain_msg T
hash_utils.o sha2_file T
prng_utils.o prng_bytes T
prng_utils.o prng_dump T
prng_utils.o prng_dump_set T
prng_utils.o prng_expand_buffer T
prng_utils.o userrand_bytes T
prng_utils.o userrand_dump_generated T
prng_utils.o userrand_source_file T

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

Namespace violations

Implementation: T:pclmulqdq
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
blas.o __zero_32 B
gf16.o __gf16_exp R
gf16.o __gf16_inv R
gf16.o __gf16_log R
gf16.o __gf16_mul D
gf16.o __gf16_mulx2 R
gf16.o __gf16_squ R
gf16.o __gf16_squ_sl4 R
gf16.o __gf16_squ_x8 R
gf16.o __gf256_mul R
gf16.o __mask_0x55 R
gf16.o __mask_16 R
gf16.o __mask_low R
gfext_iso_184.o gf2184to25623 R
gfext_iso_184.o gf25623to2184 R
gfext_iso_240.o gf2240to25630 R
gfext_iso_240.o gf25630to2240 R
gfext_iso_312.o gf2312to25639 R
gfext_iso_312.o gf25639to2312 R
gfext_iso_448.o gf2448to25656 R
gfext_iso_448.o gf25656to2448 R
gfext_poly_gf2.o _get_deg1poly_gcd T
gfext_poly_gf2.o find_unique_root_sparse_poly T
gfext_poly_gf2.o poly_eval T
gfext_poly_gf2.o poly_fdump T
gfext_poly_gf2.o poly_normalize T
gui.o InvHFEv_ T
gui.o gui_central_map T
gui.o gui_genkey T
gui.o gui_genkey_debug T
gui.o gui_ivs_central_map T
gui.o gui_pubmap_seckey T
gui.o gui_secmap T
gui_sig.o gui_sign T
gui_sig.o gui_sign_salt T
gui_sig.o gui_verify T
gui_sig.o gui_verify_salt T
gui_sig.o pack_tails T
gui_sig.o split_tails T
hash_utils.o sha2_chain T
hash_utils.o sha2_chain_byte T
hash_utils.o sha2_chain_file T
hash_utils.o sha2_chain_msg T
hash_utils.o sha2_file T
prng_utils.o prng_bytes T
prng_utils.o prng_dump T
prng_utils.o prng_dump_set T
prng_utils.o prng_expand_buffer T
prng_utils.o userrand_bytes T
prng_utils.o userrand_dump_generated T
prng_utils.o userrand_source_file T

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