Implementation notes: amd64, gcc14, crypto_aead/spook128mu384v2

Computer: gcc14
Architecture: amd64
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20220506
Operation: crypto_aead
Primitive: spook128mu384v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2424015545 0 022230 844 1040T:hes128c32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
2428845545 0 022230 844 1040T:hes128c64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
2870934180 0 019046 844 1040T:hes128c64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
2877864180 0 019046 844 1040T:hes128c32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
3273863881 0 018518 844 1040T:hes128c64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
3275453881 0 018518 844 1040T:hes128c32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
3515353641 0 017001 820 1040T:hes128c64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
3523463641 0 017001 820 1040T:hes128c32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
11260286893 0 023622 844 1040T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
11524386404 0 020827 820 1008T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011520210114
11544376404 0 020827 820 1008T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011520210114
11545006562 0 021763 820 1008T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011520210114
11569596635 0 021971 820 1008T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011520210114
12206324542 0 017813 812 1008T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011520210114
12458265029 0 019950 844 1040T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
12636684614 0 019302 844 1040T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114
14446594419 0 017841 820 1040T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011520210114

Compiler output

Implementation: T:hes128c32
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
shadow_128bit.c: shadow_128bit.c:74:12: error: cannot convert between vector values of different size ('row_set' (vector of 4 'uint32_t' values) and 'int')
shadow_128bit.c: a = *x ^ ROT32(*x, 12);
shadow_128bit.c: ^~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:71:25: note: expanded from macro 'ROT32'
shadow_128bit.c: #define ROT32(x,n) (((x)>>(n))|((x)<<(32-(n))))
shadow_128bit.c: ~~~^ ~~~
shadow_128bit.c: shadow_128bit.c:74:12: error: cannot convert between vector values of different size ('row_set' (vector of 4 'uint32_t' values) and 'int')
shadow_128bit.c: a = *x ^ ROT32(*x, 12);
shadow_128bit.c: ^~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:71:36: note: expanded from macro 'ROT32'
shadow_128bit.c: #define ROT32(x,n) (((x)>>(n))|((x)<<(32-(n))))
shadow_128bit.c: ~~~^ ~~~~~~~~
shadow_128bit.c: shadow_128bit.c:75:12: error: cannot convert between vector values of different size ('row_set' (vector of 4 'uint32_t' values) and 'int')
shadow_128bit.c: b = *y ^ ROT32(*y, 12);
shadow_128bit.c: ^~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:71:25: note: expanded from macro 'ROT32'
shadow_128bit.c: #define ROT32(x,n) (((x)>>(n))|((x)<<(32-(n))))
shadow_128bit.c: ~~~^ ~~~
shadow_128bit.c: shadow_128bit.c:75:12: error: cannot convert between vector values of different size ('row_set' (vector of 4 'uint32_t' values) and 'int')
shadow_128bit.c: b = *y ^ ROT32(*y, 12);
shadow_128bit.c: ^~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:71:36: note: expanded from macro 'ROT32'
shadow_128bit.c: #define ROT32(x,n) (((x)>>(n))|((x)<<(32-(n))))
shadow_128bit.c: ~~~^ ~~~~~~~~
shadow_128bit.c: shadow_128bit.c:76:11: error: cannot convert between vector values of different size ('row_set' (vector of 4 'uint32_t' values) and 'int')
shadow_128bit.c: ...

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c32
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c32
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c32
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c32
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c32
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c64
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c64
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c64
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c64
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c64

Namespace violations

Implementation: T:hes128c32
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
clyde_32bit.o clyde128_encrypt T
s1p.o init_keys T
s1p.o s1p_decrypt T
s1p.o s1p_encrypt T
shadow_128bit.o shadow T

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:hes128c32
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:hes128c32
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:hes128c32
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:hes128c32
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:hes128c64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:hes128c64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:hes128c64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:hes128c64

Namespace violations

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
primitives.o clyde128_decrypt T
primitives.o clyde128_encrypt T
primitives.o shadow T
s1p.o init_keys T
s1p.o s1p_decrypt T
s1p.o s1p_encrypt T
utils.o le32u_dec T
utils.o le32u_enc T
utils.o rotr T
utils.o xor_bytes T

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref