Implementation notes: amd64, comet, crypto_sign/gui312

Computer: comet
Microarchitecture: amd64; Comet Lake (806ec)
Architecture: amd64
CPU ID: GenuineIntel-000806ec-bfebfbff
SUPERCOP version: 20240425
Operation: crypto_sign
Primitive: gui312

Compiler output

Implementation: T:amd64
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash_utils.c: hash_utils.c:24:2: warning: 'SHA384_Init' is deprecated [-Wdeprecated-declarations]
hash_utils.c: SHA384_Init( &sha384 );
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/sha.h:119:1: note: 'SHA384_Init' has been explicitly marked deprecated here
hash_utils.c: OSSL_DEPRECATEDIN_3_0 int SHA384_Init(SHA512_CTX *c);
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
hash_utils.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
hash_utils.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
hash_utils.c: ^
hash_utils.c: hash_utils.c:25:2: warning: 'SHA384_Update' is deprecated [-Wdeprecated-declarations]
hash_utils.c: SHA384_Update( &sha384 , m , mlen );
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/sha.h:120:1: note: 'SHA384_Update' has been explicitly marked deprecated here
hash_utils.c: OSSL_DEPRECATEDIN_3_0 int SHA384_Update(SHA512_CTX *c,
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
hash_utils.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
hash_utils.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
hash_utils.c: ^
hash_utils.c: hash_utils.c:26:2: warning: 'SHA384_Final' is deprecated [-Wdeprecated-declarations]
hash_utils.c: ...

Number of similar (compiler,implementation) pairs: 14, 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
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
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

Compiler output

Implementation: T:amd64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash_utils.c: hash_utils.c: In function '_sha2_str':
hash_utils.c: hash_utils.c:24:9: warning: 'SHA384_Init' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 24 | SHA384_Init( &sha384 );
hash_utils.c: | ^~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:119:27: note: declared here
hash_utils.c: 119 | OSSL_DEPRECATEDIN_3_0 int SHA384_Init(SHA512_CTX *c);
hash_utils.c: | ^~~~~~~~~~~
hash_utils.c: hash_utils.c:25:9: warning: 'SHA384_Update' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 25 | SHA384_Update( &sha384 , m , mlen );
hash_utils.c: | ^~~~~~~~~~~~~
hash_utils.c: /usr/include/openssl/sha.h:120:27: note: declared here
hash_utils.c: 120 | OSSL_DEPRECATEDIN_3_0 int SHA384_Update(SHA512_CTX *c,
hash_utils.c: | ^~~~~~~~~~~~~
hash_utils.c: hash_utils.c:26:9: warning: 'SHA384_Final' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 26 | SHA384_Final( digest , &sha384 );
hash_utils.c: | ^~~~~~~~~~~~
hash_utils.c: /usr/include/openssl/sha.h:122:27: note: declared here
hash_utils.c: 122 | OSSL_DEPRECATEDIN_3_0 int SHA384_Final(unsigned char *md, SHA512_CTX *c);
hash_utils.c: | ^~~~~~~~~~~~
hash_utils.c: hash_utils.c: In function 'sha2_file':
hash_utils.c: hash_utils.c:60:9: warning: 'SHA384_Init' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 60 | SHA384_Init( &sha384 );
hash_utils.c: | ^~~~~~~~~~~
hash_utils.c: /usr/include/openssl/sha.h:119:27: note: declared here
hash_utils.c: ...
prng_utils.c: prng_utils.c: In function 'openssl_prng_bytes':
prng_utils.c: prng_utils.c:70:32: warning: implicit declaration of function 'FIPS_mode_set' [-Wimplicit-function-declaration]
prng_utils.c: 70 | fips_mode_on = FIPS_mode_set(1);
prng_utils.c: | ^~~~~~~~~~~~~
try.c: /usr/bin/ld: libcrypto_sign_gui312.a(prng_utils.o): in function `prng_bytes':
try.c: prng_utils.c:(.text+0x...): undefined reference to `FIPS_mode_set'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
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
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
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

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:474:15: error: '__builtin_ia32_palignr128' needs target feature ssse3
gfext_poly_gf2.c: __m128i a3 = _mm_alignr_epi8(a4,a2,8);
gfext_poly_gf2.c: ^
gfext_poly_gf2.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/tmmintrin.h:152:13: note: expanded from macro '_mm_alignr_epi8'
gfext_poly_gf2.c: ((__m128i)__builtin_ia32_palignr128((__v16qi)(__m128i)(a), \
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:475:15: error: '__builtin_ia32_palignr128' needs target feature ssse3
gfext_poly_gf2.c: __m128i b3 = _mm_alignr_epi8(b4,b2,8);
gfext_poly_gf2.c: ^
gfext_poly_gf2.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/tmmintrin.h:152:13: note: expanded from macro '_mm_alignr_epi8'
gfext_poly_gf2.c: ((__m128i)__builtin_ia32_palignr128((__v16qi)(__m128i)(a), \
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:478:2: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
gfext_poly_gf2.c: _MUL_3_KARATSUBA( c0 , c2 , c4 , a0 , a2 , b0 , b2 );
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-14/lib/clang/14.0.6/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
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