Implementation notes: amd64, rumba7, crypto_kem/lake2

Computer: rumba7
Microarchitecture: amd64; Zen (800f11)
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20240625
Operation: crypto_kem
Primitive: lake2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
385467228380 88 781626363 3748 7328T:refg++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
387801523857 88 781620115 3748 7328T:refg++_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
391521534153 88 781634417 3748 7328T:refg++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
391541519978 88 781614898 3732 7264T:refg++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625

Compiler output


hash.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
hash.c: hash.c:11:5: warning: 'SHA512_Init' is deprecated [-Wdeprecated-declarations]
hash.c:     SHA512_Init(&sha512);
hash.c:     ^
hash.c: /usr/include/openssl/sha.h:123:1: note: 'SHA512_Init' has been explicitly marked deprecated here
hash.c: OSSL_DEPRECATEDIN_3_0 int SHA512_Init(SHA512_CTX *c);
hash.c: ^
hash.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
hash.c: #   define OSSL_DEPRECATEDIN_3_0                OSSL_DEPRECATED(3.0)
hash.c:                                                 ^
hash.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
hash.c: #     define OSSL_DEPRECATED(since) __attribute__((deprecated))
hash.c:                                                    ^
hash.c: hash.c:12:5: warning: 'SHA512_Update' is deprecated [-Wdeprecated-declarations]
hash.c:     SHA512_Update(&sha512, input, size);
hash.c:     ^
hash.c: /usr/include/openssl/sha.h:124:1: note: 'SHA512_Update' has been explicitly marked deprecated here
hash.c: OSSL_DEPRECATEDIN_3_0 int SHA512_Update(SHA512_CTX *c,
hash.c: ^
hash.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
hash.c: #   define OSSL_DEPRECATEDIN_3_0                OSSL_DEPRECATED(3.0)
hash.c:                                                 ^
hash.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
hash.c: #     define OSSL_DEPRECATED(since) __attribute__((deprecated))
hash.c:                                                    ^
hash.c: ...

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

Compiler output


hash.c: hash.c: In function 'void sha512(unsigned char*, unsigned char*, uint64_t)':
hash.c: hash.c:11:16: warning: 'int SHA512_Init(SHA512_CTX*)' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash.c:    11 |     SHA512_Init(&sha512);
hash.c:       |     ~~~~~~~~~~~^~~~~~~~~
hash.c: In file included from hash.c:6:
hash.c: /usr/include/openssl/sha.h:123:27: note: declared here
hash.c:   123 | OSSL_DEPRECATEDIN_3_0 int SHA512_Init(SHA512_CTX *c);
hash.c:       |                           ^~~~~~~~~~~
hash.c: hash.c:12:18: warning: 'int SHA512_Update(SHA512_CTX*, const void*, size_t)' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash.c:    12 |     SHA512_Update(&sha512, input, size);
hash.c:       |     ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
hash.c: In file included from hash.c:6:
hash.c: /usr/include/openssl/sha.h:124:27: note: declared here
hash.c:   124 | OSSL_DEPRECATEDIN_3_0 int SHA512_Update(SHA512_CTX *c,
hash.c:       |                           ^~~~~~~~~~~~~
hash.c: hash.c:13:17: warning: 'int SHA512_Final(unsigned char*, SHA512_CTX*)' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash.c:    13 |     SHA512_Final(output, &sha512);
hash.c:       |     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
hash.c: In file included from hash.c:6:
hash.c: /usr/include/openssl/sha.h:126:27: note: declared here
hash.c:   126 | OSSL_DEPRECATEDIN_3_0 int SHA512_Final(unsigned char *md, SHA512_CTX *c);
hash.c:       |                           ^~~~~~~~~~~~
rng.c: rng.c: In function 'int seedexpander(AES_XOF_struct*, unsigned char*, long unsigned int)':
rng.c: rng.c:74:19: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare]
rng.c:    74 |         if ( xlen <= (16-ctx->buffer_pos) ) { // buffer has what we need
rng.c:       |              ~~~~~^~~~~~~~~~~~~~~~~~~~~~~
rng.c: rng.c: In function 'void AES256_ECB(unsigned char*, unsigned char*, unsigned char*)':
rng.c: rng.c:122:9: warning: variable 'ciphertext_len' set but not used [-Wunused-but-set-variable]
rng.c:   122 |     int ciphertext_len;
rng.c:       |         ^~~~~~~~~~~~~~

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