Implementation notes: amd64, saber214, crypto_aead/spook128mu384v2

Computer: saber214
Microarchitecture: amd64; Bulldozer (600f20)
Architecture: amd64
CPU ID: AuthenticAMD-00600f20-1789c3f5
SUPERCOP version: 20240808
Operation: crypto_aead
Primitive: spook128mu384v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1662245482 0 021501 784 928T:hes128c32gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
1662475482 0 021501 784 928T:hes128c64gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
2328264175 0 018710 776 928T:hes128c32gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
2329404175 0 018710 776 928T:hes128c64gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
3534314123 0 018422 776 928T:hes128c64gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
3534694123 0 018422 776 928T:hes128c32gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
3673293855 0 016801 752 896T:hes128c64gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
4397773855 0 016801 752 896T:hes128c32gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
9948527738 0 023684 816 856T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
9951277505 0 024588 816 872T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
11598436066 0 020772 816 856T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
12080284733 0 017782 808 856T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
12460187049 0 023133 784 928T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
13190345832 0 020422 776 928T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
13650385020 0 018460 816 856T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
15163954986 0 018033 752 896T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716
15344995186 0 019558 776 928T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071920240716

Compiler output


shadow_128bit.c: shadow_128bit.c:100:18: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
shadow_128bit.c:     row_set t0 = __builtin_shuffle(simd->rows[0], simd->rows[1], dbox_shuffle1);
shadow_128bit.c:                  ^
shadow_128bit.c: shadow_128bit.c:100:13: error: initializing 'row_set' (vector of 4 'uint32_t' values) with an expression of incompatible type 'int'
shadow_128bit.c:     row_set t0 = __builtin_shuffle(simd->rows[0], simd->rows[1], dbox_shuffle1);
shadow_128bit.c:             ^    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:101:13: error: initializing 'row_set' (vector of 4 'uint32_t' values) with an expression of incompatible type 'int'
shadow_128bit.c:     row_set t1 = __builtin_shuffle(simd->rows[2], simd->rows[3], dbox_shuffle1);
shadow_128bit.c:             ^    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:102:13: error: initializing 'row_set' (vector of 4 'uint32_t' values) with an expression of incompatible type 'int'
shadow_128bit.c:     row_set t2 = __builtin_shuffle(simd->rows[0], simd->rows[1], dbox_shuffle2);
shadow_128bit.c:             ^    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:103:13: error: initializing 'row_set' (vector of 4 'uint32_t' values) with an expression of incompatible type 'int'
shadow_128bit.c:     row_set t3 = __builtin_shuffle(simd->rows[2], simd->rows[3], dbox_shuffle2);
shadow_128bit.c:             ^    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:104:19: error: assigning to 'row_set' (vector of 4 'uint32_t' values) from incompatible type 'int'
shadow_128bit.c:     simd->rows[0] = __builtin_shuffle(t0, t1, dbox_shuffle3);
shadow_128bit.c:                   ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:105:19: error: assigning to 'row_set' (vector of 4 'uint32_t' values) from incompatible type 'int'
shadow_128bit.c:     simd->rows[1] = __builtin_shuffle(t0, t1, dbox_shuffle4);
shadow_128bit.c:                   ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:106:19: error: assigning to 'row_set' (vector of 4 'uint32_t' values) from incompatible type 'int'
shadow_128bit.c:     simd->rows[2] = __builtin_shuffle(t2, t3, dbox_shuffle3);
shadow_128bit.c:                   ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:107:19: error: assigning to 'row_set' (vector of 4 'uint32_t' values) from incompatible type 'int'
shadow_128bit.c: ...

Number of similar (implementation,compiler) pairs: 10, namely:
ImplementationCompiler
T:hes128c32clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:hes128c32clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:hes128c32clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:hes128c32clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:hes128c32clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:hes128c64clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:hes128c64clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:hes128c64clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:hes128c64clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:hes128c64clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


shadow_128bit.c: shadow_128bit.c: In function 'shadow':
shadow_128bit.c: shadow_128bit.c:229:13: warning: unused variable 'res3' [-Wunused-variable]
shadow_128bit.c:   229 |     row_set res3 = { simd.rows[0][3], simd.rows[1][3], simd.rows[2][3], simd.rows[3][3] };
shadow_128bit.c:       |             ^~~~

Number of similar (implementation,compiler) pairs: 8, namely:
ImplementationCompiler
T:hes128c32gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c32gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c32gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c32gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c64gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c64gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c64gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c64gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Namespace violations


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 (implementation,compiler) pairs: 8, namely:
ImplementationCompiler
T:hes128c32gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c32gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c32gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c32gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c64gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c64gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c64gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:hes128c64gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Namespace violations


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 (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)