Implementation notes: amd64, rumba7, crypto_aead/hs1sivlov1
Computer: rumba7
Microarchitecture: amd64; Zen (800f11)
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20240808
Operation: crypto_aead
Primitive: hs1sivlov1
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
21598 | 8191 0 0 | 30643 860 1024 | T:ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240716 | 20240716 |
22069 | 7352 0 0 | 30747 860 1056 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240716 | 20240716 |
22115 | 7352 0 0 | 30371 860 1056 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240716 | 20240716 |
22184 | 7180 0 0 | 30709 820 1088 | T:ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240716 | 20240716 |
30135 | 4736 0 0 | 24659 860 1024 | T:ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240716 | 20240716 |
32047 | 5996 0 0 | 28269 820 1088 | T:ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240716 | 20240716 |
33538 | 3971 0 0 | 24741 852 1088 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240716 | 20240716 |
43303 | 6139 0 0 | 27525 820 1088 | T:ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240716 | 20240716 |
Test failure
error 111
crypto_aead_decrypt allows trivial forgeries
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
encrypt.c: encrypt.c:333:14: warning: unused variable 'k' [-Wunused-variable]
encrypt.c: unsigned k = (HS1_SIV_HASH_RNDS > 4 ? 1 : 2);
encrypt.c: ^
encrypt.c: encrypt.c:242:13: warning: unused function 'pmul64' [-Wunused-function]
encrypt.c: static void pmul64(uint64_t *dh, uint64_t *dl, uint64_t a, uint64_t b) {
encrypt.c: ^
encrypt.c: encrypt.c:270:17: warning: unused function 'asu_hash' [-Wunused-function]
encrypt.c: static uint32_t asu_hash(uint64_t x, uint64_t *k) {
encrypt.c: ^
encrypt.c: 3 warnings generated.
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c: In function 'hs1_hash':
encrypt.c: encrypt.c:333:14: warning: unused variable 'k' [-Wunused-variable]
encrypt.c: 333 | unsigned k = (HS1_SIV_HASH_RNDS > 4 ? 1 : 2);
encrypt.c: | ^
encrypt.c: At top level:
encrypt.c: encrypt.c:270:17: warning: 'asu_hash' defined but not used [-Wunused-function]
encrypt.c: 270 | static uint32_t asu_hash(uint64_t x, uint64_t *k) {
encrypt.c: | ^~~~~~~~
encrypt.c: encrypt.c:242:13: warning: 'pmul64' defined but not used [-Wunused-function]
encrypt.c: 242 | static void pmul64(uint64_t *dh, uint64_t *dl, uint64_t a, uint64_t b) {
encrypt.c: | ^~~~~~
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
encrypt.o chacha_ivsetup T
encrypt.o chacha_keysetup T
encrypt.o chacha_xor T
encrypt.o hs1 T
encrypt.o hs1_hash T
encrypt.o hs1siv_chacha256 T
encrypt.o hs1siv_decrypt T
encrypt.o hs1siv_encrypt T
encrypt.o hs1siv_subkeygen T
encrypt.o prf_hash2 T
Number of similar (implementation,compiler) pairs: 8, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |