Implementation notes: amd64, gcc123, crypto_sign/gui184

Computer: gcc123
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20220213
Operation: crypto_sign
Primitive: gui184
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
39854071165532 8 104866077154 932 1050376T:pclmulqdqclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
39880066160772 8 104866070698 932 1050376T:pclmulqdqclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
39886233160772 8 104866070698 932 1050376T:pclmulqdqclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
41383586162769 8 104867671285 932 1050440T:pclmulqdqgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
41507283148519 8 104867655309 932 1050440T:pclmulqdqgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
41722396149905 8 104867656901 932 1050440T:pclmulqdqgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
43673441146021 8 104866052197 940 1050376T:pclmulqdqclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
48833354135509 8 104867641403 932 1050408T:pclmulqdqgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
151164088149186 0 104862872154 932 1050376T:amd64clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
159525928743175 0 104862864002 932 1050376T:amd64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
2205587370139793 0 1048644159581 932 1050440T:amd64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
230161019736247 0 104862857554 932 1050376T:amd64clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
230182390236247 0 104862857554 932 1050376T:amd64clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
235282421839102 0 104864457773 932 1050440T:amd64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
244325705537648 0 104864456061 932 1050440T:amd64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
252088836321193 0 104862839109 924 1050376T:amd64clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
412140440513440 0 104864431035 932 1050408T:amd64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
4866866863213985 0 1048644233981 932 1050440T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
503247861543354 0 104862866346 932 1050376T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
512205197443531 0 104862864322 932 1050376T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
559197272734740 0 104862856034 932 1050376T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
559303797534740 0 104862856034 932 1050376T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
1189664081949768 0 104864468429 932 1050440T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
1283160381947936 0 104864466317 932 1050440T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114
1339026761415178 0 104862833157 924 1050376T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012120210114
2118468055612854 0 104864430403 932 1050408T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012120210114

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-7/lib/clang/7.0.1/include/__wmmintrin_pclmul.h:59: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-7/lib/clang/7.0.1/include/__wmmintrin_pclmul.h:59: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