Implementation notes: amd64, alder2,1f626960,5600000, crypto_aead/simonjambu64v2
Computer: alder2,1f626960,5600000
Microarchitecture: amd64; Golden Cove (906a4-40)
Architecture: amd64
CPU ID: GenuineIntel-000906a4-40-bfebfbff
SUPERCOP version: 20240808
Operation: crypto_aead
Primitive: simonjambu64v2
Test failure
error 111
crypto_aead_encrypt is nondeterministic
Number of similar (implementation,compiler) pairs: 9, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
Simon.c: Simon.c:21:9: warning: unused variable 'j' [-Wunused-variable]
Simon.c: int i, j = 0;
Simon.c: ^
Simon.c: Simon.c:38:9: warning: unused variable 'j' [-Wunused-variable]
Simon.c: int i, j = 0;
Simon.c: ^
Simon.c: Simon.c:59:9: warning: unused variable 'j' [-Wunused-variable]
Simon.c: int i, j = 0;
Simon.c: ^
Simon.c: Simon.c:83:22: warning: '&' within '^' [-Wbitwise-op-parentheses]
Simon.c: x = y ^ ROTL(1, x) & ROTL(8, x) ^ ROTL(2, x) ^ k[i];
Simon.c: ~ ~~~~~~~~~~~^~~~~~~~~~~~
Simon.c: Simon.c:83:22: note: place parentheses around the '&' expression to silence this warning
Simon.c: x = y ^ ROTL(1, x) & ROTL(8, x) ^ ROTL(2, x) ^ k[i];
Simon.c: ~~~~~~~~~~~^~~~~~~~~~~~
Simon.c: Simon.c:98:27: warning: '&' within '^' [-Wbitwise-op-parentheses]
Simon.c: x = y ^ ROTL2(1, x, 48) & ROTL2(8, x, 48) ^ ROTL2(2, x, 48) ^ k[i];
Simon.c: ~ ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
Simon.c: Simon.c:98:27: note: place parentheses around the '&' expression to silence this warning
Simon.c: x = y ^ ROTL2(1, x, 48) & ROTL2(8, x, 48) ^ ROTL2(2, x, 48) ^ k[i];
Simon.c: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
Simon.c: Simon.c:112:25: warning: '&' within '^' [-Wbitwise-op-parentheses]
Simon.c: x = y ^ ROTL64(x, 1) & ROTL64(x, 8) ^ ROTL64(x, 2) ^ k[i];
Simon.c: ~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~
Simon.c: Simon.c:112:25: note: place parentheses around the '&' expression to silence this warning
Simon.c: ...
encrypt_simon64.c: encrypt_simon64.c:217:12: warning: & has lower precedence than !=; != will be evaluated first [-Wparentheses]
encrypt_simon64.c: if ((mlen & (PBS-1) != 0)) {
encrypt_simon64.c: ^~~~~~~~~~~~~~
encrypt_simon64.c: encrypt_simon64.c:217:12: note: place parentheses around the '!=' expression to silence this warning
encrypt_simon64.c: if ((mlen & (PBS-1) != 0)) {
encrypt_simon64.c: ^
encrypt_simon64.c: ( )
encrypt_simon64.c: encrypt_simon64.c:217:12: note: place parentheses around the & expression to evaluate it first
encrypt_simon64.c: if ((mlen & (PBS-1) != 0)) {
encrypt_simon64.c: ^
encrypt_simon64.c: ( )
encrypt_simon64.c: encrypt_simon64.c:241:11: warning: unused variable 'check' [-Wunused-variable]
encrypt_simon64.c: uint8_t check = 0;
encrypt_simon64.c: ^
encrypt_simon64.c: 2 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 (Debian_Clang_11.0.1) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
Simon.c: Simon.c: In function 'SimonKeySetup64':
Simon.c: Simon.c:21:9: warning: unused variable 'j' [-Wunused-variable]
Simon.c: 21 | int i, j = 0;
Simon.c: | ^
Simon.c: Simon.c: In function 'SimonKeySetup96':
Simon.c: Simon.c:38:9: warning: unused variable 'j' [-Wunused-variable]
Simon.c: 38 | int i, j = 0;
Simon.c: | ^
Simon.c: Simon.c: In function 'SimonKeySetup128':
Simon.c: Simon.c:59:9: warning: unused variable 'j' [-Wunused-variable]
Simon.c: 59 | int i, j = 0;
Simon.c: | ^
Simon.c: Simon.c: In function 'SimonEncrypt64':
Simon.c: Simon.c:83:22: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
Simon.c: 83 | x = y ^ ROTL(1, x) & ROTL(8, x) ^ ROTL(2, x) ^ k[i];
Simon.c: Simon.c: In function 'SimonEncrypt96':
Simon.c: Simon.c:98:27: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
Simon.c: 98 | x = y ^ ROTL2(1, x, 48) & ROTL2(8, x, 48) ^ ROTL2(2, x, 48) ^ k[i];
Simon.c: Simon.c: In function 'SimonEncrypt128':
Simon.c: Simon.c:112:25: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
Simon.c: 112 | x = y ^ ROTL64(x, 1) & ROTL64(x, 8) ^ ROTL64(x, 2) ^ k[i];
encrypt_simon64.c: encrypt_simon64.c: In function 'crypto_aead_simonjambu64v2_ref_timingleaks_encrypt':
encrypt_simon64.c: encrypt_simon64.c:217:12: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
encrypt_simon64.c: 217 | if ((mlen & (PBS-1) != 0)) {
encrypt_simon64.c: | ^
encrypt_simon64.c: encrypt_simon64.c: In function 'crypto_aead_simonjambu64v2_ref_timingleaks_decrypt':
encrypt_simon64.c: encrypt_simon64.c:241:11: warning: unused variable 'check' [-Wunused-variable]
encrypt_simon64.c: 241 | uint8_t check = 0;
encrypt_simon64.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 (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |