Implementation notes: amd64, saber214, crypto_sign/gui448

Computer: saber214
Microarchitecture: amd64; Bulldozer (600f20)
Architecture: amd64
CPU ID: AuthenticAMD-00600f20-1789c3f5
SUPERCOP version: 20240625
Operation: crypto_sign
Primitive: gui448

Compiler output


gfext_poly_gf2.c: gfext_poly_gf2.c:88:20: warning: unused function 'poly_muladd' [-Wunused-function]
gfext_poly_gf2.c: static inline void poly_muladd( uint8_t *p3, const uint8_t *p1 , unsigned p1deg , unsigned p1raise , const uint8_t *c )
gfext_poly_gf2.c:                    ^
gfext_poly_gf2.c: 1 warning generated.
hash_utils.c: hash_utils.c:29:2: warning: 'SHA512_Init' is deprecated [-Wdeprecated-declarations]
hash_utils.c:         SHA512_Init( &sha512 );
hash_utils.c:         ^
hash_utils.c: /usr/include/openssl/sha.h:123:1: note: 'SHA512_Init' has been explicitly marked deprecated here
hash_utils.c: OSSL_DEPRECATEDIN_3_0 int SHA512_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:30:2: warning: 'SHA512_Update' is deprecated [-Wdeprecated-declarations]
hash_utils.c:         SHA512_Update( &sha512 , m , mlen );
hash_utils.c:         ^
hash_utils.c: /usr/include/openssl/sha.h:124:1: note: 'SHA512_Update' has been explicitly marked deprecated here
hash_utils.c: OSSL_DEPRECATEDIN_3_0 int SHA512_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:31:2: warning: 'SHA512_Final' is deprecated [-Wdeprecated-declarations]
hash_utils.c: ...

Number of similar (implementation,compiler) pairs: 14, namely:
ImplementationCompiler
T:amd64clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:amd64clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:amd64clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:amd64clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:amd64clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:pclmulqdqclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:pclmulqdqclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:pclmulqdqclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:pclmulqdqclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


hash_utils.c: hash_utils.c: In function '_sha2_str':
hash_utils.c: hash_utils.c:29:9: warning: 'SHA512_Init' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c:    29 |         SHA512_Init( &sha512 );
hash_utils.c:       |         ^~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:123:27: note: declared here
hash_utils.c:   123 | OSSL_DEPRECATEDIN_3_0 int SHA512_Init(SHA512_CTX *c);
hash_utils.c:       |                           ^~~~~~~~~~~
hash_utils.c: hash_utils.c:30:9: warning: 'SHA512_Update' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c:    30 |         SHA512_Update( &sha512 , m , mlen );
hash_utils.c:       |         ^~~~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:124:27: note: declared here
hash_utils.c:   124 | OSSL_DEPRECATEDIN_3_0 int SHA512_Update(SHA512_CTX *c,
hash_utils.c:       |                           ^~~~~~~~~~~~~
hash_utils.c: hash_utils.c:31:9: warning: 'SHA512_Final' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c:    31 |         SHA512_Final( digest , &sha512 );
hash_utils.c:       |         ^~~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:126:27: note: declared here
hash_utils.c:   126 | OSSL_DEPRECATEDIN_3_0 int SHA512_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:65:9: warning: 'SHA512_Init' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c:    65 |         SHA512_Init( &sha512 );
hash_utils.c: ...

Number of similar (implementation,compiler) pairs: 12, namely:
ImplementationCompiler
T:amd64gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:amd64gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:amd64gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:amd64gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:pclmulqdqgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:pclmulqdqgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:pclmulqdqgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:pclmulqdqgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


gfext_poly_gf2.c: gfext_poly_gf2.c:88:20: warning: unused function 'poly_muladd' [-Wunused-function]
gfext_poly_gf2.c: static inline void poly_muladd( uint8_t *p3, const uint8_t *p1 , unsigned p1deg , unsigned p1raise , const uint8_t *c )
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:655:2: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
gfext_poly_gf2.c:         _MUL_4_KARATSUBA( c0 , c2 , c4 , c6 , a0 , a2 , b0 , b2 );
gfext_poly_gf2.c:         ^
gfext_poly_gf2.c: ./gfext_aesni.h:78:8: note: expanded from macro '_MUL_4_KARATSUBA'
gfext_poly_gf2.c:   c0 = _mm_clmulepi64_si128( a0,b0 , 0x00 ); \
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:655:2: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
gfext_poly_gf2.c: ./gfext_aesni.h:79:8: note: expanded from macro '_MUL_4_KARATSUBA'
gfext_poly_gf2.c:   c2 = _mm_clmulepi64_si128( a0,b0 , 0x11 ); \
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: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:pclmulqdqclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)