Implementation notes: amd64, h8atom, crypto_sign/gui184

Computer: h8atom
Microarchitecture: amd64; Bonnell (30661)
Architecture: amd64
CPU ID: GenuineIntel-00030661-bfebfbff
SUPERCOP version: 20240107
Operation: crypto_sign
Primitive: gui184

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:19:2: warning: 'SHA256_Init' is deprecated [-Wdeprecated-declarations]
hash_utils.c: SHA256_Init( &sha256 );
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/sha.h:73:1: note: 'SHA256_Init' has been explicitly marked deprecated here
hash_utils.c: OSSL_DEPRECATEDIN_3_0 int SHA256_Init(SHA256_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:20:2: warning: 'SHA256_Update' is deprecated [-Wdeprecated-declarations]
hash_utils.c: SHA256_Update( &sha256 , m , mlen );
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/sha.h:74:1: note: 'SHA256_Update' has been explicitly marked deprecated here
hash_utils.c: OSSL_DEPRECATEDIN_3_0 int SHA256_Update(SHA256_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:21:2: warning: 'SHA256_Final' is deprecated [-Wdeprecated-declarations]
hash_utils.c: ...

Number of similar (compiler,implementation) pairs: 10, 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: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:19:9: warning: 'SHA256_Init' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 19 | SHA256_Init( &sha256 );
hash_utils.c: | ^~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:73:27: note: declared here
hash_utils.c: 73 | OSSL_DEPRECATEDIN_3_0 int SHA256_Init(SHA256_CTX *c);
hash_utils.c: | ^~~~~~~~~~~
hash_utils.c: hash_utils.c:20:9: warning: 'SHA256_Update' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 20 | SHA256_Update( &sha256 , m , mlen );
hash_utils.c: | ^~~~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:74:27: note: declared here
hash_utils.c: 74 | OSSL_DEPRECATEDIN_3_0 int SHA256_Update(SHA256_CTX *c,
hash_utils.c: | ^~~~~~~~~~~~~
hash_utils.c: hash_utils.c:21:9: warning: 'SHA256_Final' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 21 | SHA256_Final( digest , &sha256 );
hash_utils.c: | ^~~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:76:27: note: declared here
hash_utils.c: 76 | OSSL_DEPRECATEDIN_3_0 int SHA256_Final(unsigned char *md, SHA256_CTX *c);
hash_utils.c: | ^~~~~~~~~~~~
hash_utils.c: hash_utils.c: In function 'sha2_file':
hash_utils.c: hash_utils.c:55:9: warning: 'SHA256_Init' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 55 | SHA256_Init( &sha256 );
hash_utils.c: ...

Number of similar (compiler,implementation) pairs: 8, 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: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 -march=native -O2 -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-14/lib/clang/14.0.0/include/__wmmintrin_pclmul.h:45: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-14/lib/clang/14.0.0/include/__wmmintrin_pclmul.h:45: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: 5, 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
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:pclmulqdq

Compiler output

Implementation: T:pclmulqdq
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
gfext_poly_gf2.c: In file included from gfext_aesni.h:12,
gfext_poly_gf2.c: from gfext.h:20,
gfext_poly_gf2.c: from gfext_poly_gf2.c:21:
gfext_poly_gf2.c: gfext_aesni.h: In function '_gf2ext184_reduce_sse':
gfext_poly_gf2.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/wmmintrin.h:116:1: error: inlining failed in call to 'always_inline' '_mm_clmulepi64_si128': target specific option mismatch
gfext_poly_gf2.c: 116 | _mm_clmulepi64_si128 (__m128i __X, __m128i __Y, const int __I)
gfext_poly_gf2.c: | ^~~~~~~~~~~~~~~~~~~~
gfext_poly_gf2.c: In file included from gfext.h:20,
gfext_poly_gf2.c: from gfext_poly_gf2.c:21:
gfext_poly_gf2.c: gfext_aesni.h:302:15: note: called from here
gfext_poly_gf2.c: 302 | x0 ^= _mm_clmulepi64_si128( _mm_srli_epi64( x128 , 56 ) , reducer , 0x10 );
gfext_poly_gf2.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfext_poly_gf2.c: In file included from gfext_aesni.h:12,
gfext_poly_gf2.c: from gfext.h:20,
gfext_poly_gf2.c: from gfext_poly_gf2.c:21:
gfext_poly_gf2.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/wmmintrin.h:116:1: error: inlining failed in call to 'always_inline' '_mm_clmulepi64_si128': target specific option mismatch
gfext_poly_gf2.c: 116 | _mm_clmulepi64_si128 (__m128i __X, __m128i __Y, const int __I)
gfext_poly_gf2.c: | ^~~~~~~~~~~~~~~~~~~~
gfext_poly_gf2.c: In file included from gfext.h:20,
gfext_poly_gf2.c: from gfext_poly_gf2.c:21:
gfext_poly_gf2.c: gfext_aesni.h:301:15: note: called from here
gfext_poly_gf2.c: 301 | x0 ^= _mm_clmulepi64_si128( x128 , reducer , 1 );
gfext_poly_gf2.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfext_poly_gf2.c: In file included from gfext_aesni.h:12,
gfext_poly_gf2.c: from gfext.h:20,
gfext_poly_gf2.c: ...

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