Implementation notes: amd64, firefly, crypto_aead/spook128su512v2

Computer: firefly
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: spook128su512v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
865956230 0 022302 816 896T:hes128c64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
885276230 0 022302 816 896T:hes128c32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
1193014158 0 018382 816 896T:hes128c32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
1328024158 0 018382 816 896T:hes128c64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
1481203789 0 016693 792 896T:hes128c64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
1483273910 0 018022 816 896T:hes128c64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
1609083910 0 018022 816 896T:hes128c32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
1681073789 0 016693 792 896T:hes128c32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
6741536612 0 021039 792 872T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
7001896763 0 021527 792 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
7155996937 0 022247 792 872T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
7243397163 0 023262 816 896T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
7775616612 0 021039 792 872T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
7938224972 0 019262 816 896T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
8344864555 0 017421 784 856T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121320201130
8620634491 0 017461 792 896T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130
9897134671 0 018822 816 896T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121320201130

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