Implementation notes: amd64, hertz, crypto_kem/threebears624r2ccax
Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20240808
Operation: crypto_kem
Primitive: threebears624r2ccax
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
118718 | 28033 0 0 | 139000 860 1832 | vec | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
119530 | 36743 0 0 | 147784 860 1832 | vec | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
124720 | 9257 0 0 | 114122 852 1832 | vec | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
129144 | 10160 0 0 | 114755 836 1800 | vec | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
129572 | 13544 0 0 | 120139 836 1832 | vec | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
136559 | 8622 0 0 | 111659 828 1768 | vec | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
151938 | 35584 0 0 | 74417 852 1832 | opt | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
152959 | 30864 0 0 | 69617 852 1832 | opt | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
158311 | 8939 0 0 | 41691 844 1832 | opt | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
160370 | 13448 0 0 | 47932 828 1832 | opt | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
160388 | 10020 0 0 | 42476 828 1800 | opt | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
170879 | 8522 0 0 | 39428 820 1768 | opt | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240810 | 20240808 |
Compiler output
threebears.c: threebears.c:102:22: warning: argument 1 of type 'uint8_t *' {aka 'unsigned char *'} declared as a pointer [-Warray-parameter=]
threebears.c: 102 | void keygen(uint8_t *pk, uint8_t *sk, const uint8_t *seed) {
threebears.c: | ~~~~~~~~~^~
threebears.c: In file included from threebears.c:8:
threebears.c: threebears.h:23:13: note: previously declared as an array 'uint8_t[804]' {aka 'unsigned char[804]'}
threebears.c: 23 | uint8_t pk[PQCRYPTO_KEM_THREEBEARS624R2CCAX_IMPL_PRIV_PUBLIC_KEY_BYTES],
threebears.c: | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
threebears.c: threebears.c:102:35: warning: argument 2 of type 'uint8_t *' {aka 'unsigned char *'} declared as a pointer [-Warray-parameter=]
threebears.c: 102 | void keygen(uint8_t *pk, uint8_t *sk, const uint8_t *seed) {
threebears.c: | ~~~~~~~~~^~
threebears.c: threebears.h:24:13: note: previously declared as an array 'uint8_t[1624]' {aka 'unsigned char[1624]'}
threebears.c: 24 | uint8_t sk[PQCRYPTO_KEM_THREEBEARS624R2CCAX_IMPL_PRIV_PRIVATE_KEY_BYTES],
threebears.c: | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
threebears.c: threebears.c:102:54: warning: argument 3 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
threebears.c: 102 | void keygen(uint8_t *pk, uint8_t *sk, const uint8_t *seed) {
threebears.c: | ~~~~~~~~~~~~~~~^~~~
threebears.c: threebears.h:25:19: note: previously declared as an array 'const uint8_t[40]' {aka 'const unsigned char[40]'}
threebears.c: 25 | const uint8_t seed[PQCRYPTO_KEM_THREEBEARS624R2CCAX_IMPL_PRIV_KEYGEN_SEED_BYTES]
threebears.c: | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
threebears.c: threebears.c:144:14: warning: argument 1 of type 'uint8_t *' {aka 'unsigned char *'} declared as a pointer [-Warray-parameter=]
threebears.c: 144 | uint8_t *shared_secret,
threebears.c: | ~~~~~~~~~^~~~~~~~~~~~~
threebears.c: threebears.h:39:13: note: previously declared as an array 'uint8_t[32]' {aka 'unsigned char[32]'}
threebears.c: 39 | uint8_t shared_secret[PQCRYPTO_KEM_THREEBEARS624R2CCAX_IMPL_PRIV_SHARED_SECRET_BYTES],
threebears.c: | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
threebears.c: ...
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
opt | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
opt | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
opt | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
Compiler output
threebears.c: threebears.c:102:22: warning: argument 1 of type 'uint8_t *' {aka 'unsigned char *'} declared as a pointer [-Warray-parameter=]
threebears.c: 102 | void keygen(uint8_t *pk, uint8_t *sk, const uint8_t *seed) {
threebears.c: | ~~~~~~~~~^~
threebears.c: In file included from threebears.c:8:
threebears.c: threebears.h:23:13: note: previously declared as an array 'uint8_t[804]' {aka 'unsigned char[804]'}
threebears.c: 23 | uint8_t pk[PQCRYPTO_KEM_THREEBEARS624R2CCAX_IMPL_PRIV_PUBLIC_KEY_BYTES],
threebears.c: | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
threebears.c: threebears.c:102:35: warning: argument 2 of type 'uint8_t *' {aka 'unsigned char *'} declared as a pointer [-Warray-parameter=]
threebears.c: 102 | void keygen(uint8_t *pk, uint8_t *sk, const uint8_t *seed) {
threebears.c: | ~~~~~~~~~^~
threebears.c: threebears.h:24:13: note: previously declared as an array 'uint8_t[1624]' {aka 'unsigned char[1624]'}
threebears.c: 24 | uint8_t sk[PQCRYPTO_KEM_THREEBEARS624R2CCAX_IMPL_PRIV_PRIVATE_KEY_BYTES],
threebears.c: | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
threebears.c: threebears.c:102:54: warning: argument 3 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
threebears.c: 102 | void keygen(uint8_t *pk, uint8_t *sk, const uint8_t *seed) {
threebears.c: | ~~~~~~~~~~~~~~~^~~~
threebears.c: threebears.h:25:19: note: previously declared as an array 'const uint8_t[40]' {aka 'const unsigned char[40]'}
threebears.c: 25 | const uint8_t seed[PQCRYPTO_KEM_THREEBEARS624R2CCAX_IMPL_PRIV_KEYGEN_SEED_BYTES]
threebears.c: | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
threebears.c: threebears.c:159:14: warning: argument 1 of type 'uint8_t *' {aka 'unsigned char *'} declared as a pointer [-Warray-parameter=]
threebears.c: 159 | uint8_t *shared_secret,
threebears.c: | ~~~~~~~~~^~~~~~~~~~~~~
threebears.c: threebears.h:39:13: note: previously declared as an array 'uint8_t[32]' {aka 'unsigned char[32]'}
threebears.c: 39 | uint8_t shared_secret[PQCRYPTO_KEM_THREEBEARS624R2CCAX_IMPL_PRIV_SHARED_SECRET_BYTES],
threebears.c: | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
threebears.c: ...
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
vec | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
vec | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
vec | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
Namespace violations
melas_fec.o pqcrypto_kem_threebears624r2ccax_impl_priv_melas_fec_correct T
melas_fec.o pqcrypto_kem_threebears624r2ccax_impl_priv_melas_fec_set T
ring.o pqcrypto_kem_threebears624r2ccax_impl_priv_canon_3120 T
ring.o pqcrypto_kem_threebears624r2ccax_impl_priv_contract_3120 T
ring.o pqcrypto_kem_threebears624r2ccax_impl_priv_expand_3120 T
ring.o pqcrypto_kem_threebears624r2ccax_impl_priv_mac_3120 T
shake.o pqcrypto_kem_threebears624r2ccax_impl_priv_hash_output T
shake.o pqcrypto_kem_threebears624r2ccax_impl_priv_hash_times_n T
shake.o pqcrypto_kem_threebears624r2ccax_impl_priv_hash_update T
shake.o pqcrypto_kem_threebears624r2ccax_impl_priv_threebears_cshake_init T
threebears.o pqcrypto_kem_threebears624r2ccax_impl_priv_decapsulate T
threebears.o pqcrypto_kem_threebears624r2ccax_impl_priv_encapsulate T
threebears.o pqcrypto_kem_threebears624r2ccax_impl_priv_keygen T
threebears.o pqcrypto_kem_threebears624r2ccax_impl_priv_secure_bzero T
Number of similar (implementation,compiler) pairs: 12, namely:
Implementation | Compiler |
opt | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
opt | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
opt | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
opt | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
opt | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
opt | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
vec | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
vec | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
vec | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
vec | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
vec | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
vec | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
TIMECOP error (can be valgrind bug)
error 111
Process terminating with default action of signal 4 (SIGILL)
Illegal opcode at address 0x10AEE6
at 0x...: core (try-anything.c:61)
by 0x...: salsa20 (try-anything.c:89)
by 0x...: canary (try-anything.c:148)
by 0x...: output_prepare (try-anything.c:178)
by 0x...: test (try.c:124)
by 0x...: main (try-anything.c:345)
Number of similar (implementation,compiler) pairs: 2, namely:
Implementation | Compiler |
opt | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
vec | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
TIMECOP error (can be valgrind bug)
error 111
Process terminating with default action of signal 4 (SIGILL)
Illegal opcode at address 0x10BA04
at 0x...: salsa20 (try-anything.c:90)
by 0x...: canary (try-anything.c:148)
by 0x...: output_prepare (try-anything.c:178)
by 0x...: test (try.c:124)
by 0x...: main (try-anything.c:345)
Number of similar (implementation,compiler) pairs: 2, namely:
Implementation | Compiler |
opt | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
vec | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
TIMECOP error (can be valgrind bug)
error 111
Process terminating with default action of signal 4 (SIGILL)
Illegal opcode at address 0x10A0B2
at 0x...: core (try-anything.c:64)
by 0x...: salsa20 (try-anything.c:89)
by 0x...: canary (try-anything.c:148)
by 0x...: output_prepare (try-anything.c:178)
by 0x...: test (try.c:124)
by 0x...: main (try-anything.c:345)
Number of similar (implementation,compiler) pairs: 2, namely:
Implementation | Compiler |
opt | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
vec | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
TIMECOP error (can be valgrind bug)
error 111
Process terminating with default action of signal 4 (SIGILL)
Illegal opcode at address 0x10A0D7
at 0x...: core (try-anything.c:68)
by 0x...: salsa20.part.0 (try-anything.c:89)
by 0x...: salsa20 (try-anything.c:85)
by 0x...: canary (try-anything.c:148)
by 0x...: output_prepare (try-anything.c:178)
by 0x...: test (try.c:124)
by 0x...: main (try-anything.c:345)
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
opt | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
TIMECOP error (can be valgrind bug)
error 111
Process terminating with default action of signal 4 (SIGILL)
Illegal opcode at address 0x10A12C
at 0x...: core (try-anything.c:64)
by 0x...: salsa20.part.0 (try-anything.c:89)
by 0x...: salsa20 (try-anything.c:85)
by 0x...: canary (try-anything.c:148)
by 0x...: output_prepare (try-anything.c:178)
by 0x...: test (try.c:124)
by 0x...: main (try-anything.c:345)
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
opt | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
TIMECOP error (can be valgrind bug)
error 111
Process terminating with default action of signal 4 (SIGILL)
Illegal opcode at address 0x109EC9
at 0x...: core (try-anything.c:64)
by 0x...: salsa20.part.0 (try-anything.c:89)
by 0x...: salsa20 (try-anything.c:85)
by 0x...: canary (try-anything.c:148)
by 0x...: output_prepare (try-anything.c:178)
by 0x...: test (try.c:124)
by 0x...: main (try-anything.c:345)
Number of similar (implementation,compiler) pairs: 2, namely:
Implementation | Compiler |
opt | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
vec | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
TIMECOP error (can be valgrind bug)
error 111
Process terminating with default action of signal 4 (SIGILL)
Illegal opcode at address 0x10A117
at 0x...: core (try-anything.c:68)
by 0x...: salsa20.part.0 (try-anything.c:89)
by 0x...: salsa20 (try-anything.c:85)
by 0x...: canary (try-anything.c:148)
by 0x...: output_prepare (try-anything.c:178)
by 0x...: test (try.c:124)
by 0x...: main (try-anything.c:345)
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
vec | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
TIMECOP error (can be valgrind bug)
error 111
Process terminating with default action of signal 4 (SIGILL)
Illegal opcode at address 0x10A16C
at 0x...: core (try-anything.c:64)
by 0x...: salsa20.part.0 (try-anything.c:89)
by 0x...: salsa20 (try-anything.c:85)
by 0x...: canary (try-anything.c:148)
by 0x...: output_prepare (try-anything.c:178)
by 0x...: test (try.c:124)
by 0x...: main (try-anything.c:345)
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
vec | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |