Implementation notes: amd64, hertz, crypto_aead/minalpherv1

Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20240716
Operation: crypto_aead
Primitive: minalpherv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
26025148814 0 026199 812 1160T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
32732065155 0 018850 788 1064T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
35725616629 0 021991 812 1096T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716

Compiler output


encrypt.c: encrypt.c:223:53: warning: '&' within '^' [-Wbitwise-op-parentheses]
encrypt.c:   223 |     t = ( ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f )<<4 ) | ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f );
encrypt.c:       |                                ~ ~~~~~~~~~~~~~~~~~~~^~~~~
encrypt.c: encrypt.c:223:53: note: place parentheses around the '&' expression to silence this warning
encrypt.c:   223 |     t = ( ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f )<<4 ) | ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f );
encrypt.c:       |                                                     ^
encrypt.c:       |                                  (                       )
encrypt.c: encrypt.c:223:110: warning: '&' within '^' [-Wbitwise-op-parentheses]
encrypt.c:   223 |     t = ( ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f )<<4 ) | ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f );
encrypt.c:       |                                                                                         ~ ~~~~~~~~~~~~~~~~~~~^~~~~
encrypt.c: encrypt.c:223:110: note: place parentheses around the '&' expression to silence this warning
encrypt.c:   223 |     t = ( ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f )<<4 ) | ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f );
encrypt.c:       |                                                                                                              ^
encrypt.c:       |                                                                                           (                       )
encrypt.c: encrypt.c:483:25: warning: variable 'j' set but not used [-Wunused-but-set-variable]
encrypt.c:   483 |   unsigned long long i, j, blocknum;
encrypt.c:       |                         ^
encrypt.c: encrypt.c:570:9: warning: variable 'pad' set but not used [-Wunused-but-set-variable]
encrypt.c:   570 |         int d, pad, cnt;
encrypt.c:       |                ^
encrypt.c: encrypt.c:570:14: warning: variable 'cnt' set but not used [-Wunused-but-set-variable]
encrypt.c:   570 |         int d, pad, cnt;
encrypt.c:       |                     ^
encrypt.c: encrypt.c:800:7: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
encrypt.c:   800 |   int ret;
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))

Compiler output


encrypt.c: encrypt.c: In function 'E':
encrypt.c: encrypt.c:223:53: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
encrypt.c:   223 |     t = ( ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f )<<4 ) | ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f );
encrypt.c:       |                                  ~~~~~~~~~~~~~~~~~~~^~~~~
encrypt.c: encrypt.c:223:110: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
encrypt.c:   223 |     t = ( ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f )<<4 ) | ( ((unsigned char)i) ^ ((unsigned char)_r)&0x0f );
encrypt.c:       |                                                                                           ~~~~~~~~~~~~~~~~~~~^~~~~
encrypt.c: encrypt.c: In function 'AEAD_TGEN':
encrypt.c: encrypt.c:483:25: warning: variable 'j' set but not used [-Wunused-but-set-variable]
encrypt.c:   483 |   unsigned long long i, j, blocknum;
encrypt.c:       |                         ^
encrypt.c: encrypt.c: In function 'AEAD_MGEN':
encrypt.c: encrypt.c:570:21: warning: variable 'cnt' set but not used [-Wunused-but-set-variable]
encrypt.c:   570 |         int d, pad, cnt;
encrypt.c:       |                     ^~~
encrypt.c: encrypt.c:570:16: warning: variable 'pad' set but not used [-Wunused-but-set-variable]
encrypt.c:   570 |         int d, pad, cnt;
encrypt.c:       |                ^~~
encrypt.c: encrypt.c: In function 'crypto_mac_gen':
encrypt.c: encrypt.c:800:7: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
encrypt.c:   800 |   int ret;
encrypt.c:       |       ^~~

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

Namespace violations


encrypt.o crypto_mac_gen T
encrypt.o crypto_mac_verif T

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