Implementation notes: amd64, saber214, crypto_hash/skein512256

Computer: saber214
Microarchitecture: amd64; Bulldozer (600f20)
Architecture: amd64
CPU ID: AuthenticAMD-00600f20-1789c3f5
SUPERCOP version: 20231107
Operation: crypto_hash
Primitive: skein512256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
136784810 0 018316 816 744T:simpleclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
137604846 0 016868 816 728T:simpleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
137934826 0 015940 816 728T:simpleclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
139014973 0 017637 784 800T:littlegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1393222619 0 032326 776 800T:x64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1393323614 0 034390 776 800T:x64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1393622200 0 031837 768 800T:x64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
139674965 0 016125 784 800T:littlegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1401821618 0 031613 768 800T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
141154677 0 014544 760 768T:littlegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1414311708 0 024684 816 744T:sphlibclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
1414411752 0 021412 816 728T:sphlibclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
1416311553 0 020686 808 728T:sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
1417411708 0 022292 816 728T:sphlibclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
1419510503 0 021478 776 800T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1421517610 0 026209 752 768T:x64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
142504901 0 015788 776 800T:littlegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
142844824 0 014462 808 728T:simpleclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
1431011977 0 023468 816 728T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
143524885 0 014932 816 728T:simpleclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
1442912014 0 023142 776 800T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1466412190 0 024830 776 800T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1487423978 0 035126 776 800T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1489622447 0 032534 776 800T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1512916868 0 025785 752 768T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
156955181 0 016349 784 800T:simplegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
159719892 0 019761 752 768T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
161365877 0 018533 784 800T:simplegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
161624544 0 015518 776 800T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
162685239 0 016124 776 800T:simplegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
162894862 0 014736 760 768T:simplegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1750410169 0 022829 784 800T:mmxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
1752510145 0 021317 784 800T:mmxgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
178636678 0 019310 776 800T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
180009969 0 020852 776 800T:mmxgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
180669984 0 019856 760 768T:mmxgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
182146342 0 017462 776 800T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
187454294 0 014161 752 768T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
201756252 0 016868 816 728T:sphlib-smallclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
202446252 0 019260 816 744T:sphlib-smallclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
203875877 0 015038 808 728T:sphlib-smallclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
211776457 0 017964 816 728T:sphlib-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
213286056 0 015716 816 728T:sphlib-smallclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
312775099 0 015996 776 800T:sandygcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
313145285 0 017941 784 800T:sandygcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
313735253 0 016413 784 800T:sandygcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
316224983 0 014848 760 768T:sandygcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023110820231107
3718114306 0 024348 816 728T:littleclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
3723531598 0 041932 816 728T:optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
3728431738 0 044460 816 744T:optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
3749030915 0 039902 808 728T:optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
3762414596 0 028108 816 744T:littleclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
3766614596 0 025716 816 728T:littleclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
3776132995 0 044252 816 728T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
3780131609 0 040908 816 728T:optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
3843514951 0 024590 808 728T:littleclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
3870514999 0 027012 816 728T:littleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
4810613145 0 023196 816 728T:sandyclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
4823713013 0 026524 816 744T:sandyclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
4826813013 0 024132 816 728T:sandyclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
4832313143 0 022782 808 728T:sandyclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530
4922613547 0 025572 816 728T:sandyclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023060720230530

Compiler output

Implementation: T:mmx
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:65:17: warning: implicit declaration of function '_mm_add_si64' is invalid in C99 [-Wimplicit-function-declaration]
hash.c: ts[0] = _mm_add_si64(ts[0],_mm_set_pi32(0,byteCntAdd));
hash.c: ^
hash.c: hash.c:65:15: error: assigning to '__m64' (vector of 1 'long long' value) from incompatible type 'int'
hash.c: ts[0] = _mm_add_si64(ts[0],_mm_set_pi32(0,byteCntAdd));
hash.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:106:12: error: assigning to '__m64' (vector of 1 'long long' value) from incompatible type 'int'
hash.c: X0 = _mm_add_si64(X0,ks[0]);
hash.c: ^ ~~~~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:107:12: error: assigning to '__m64' (vector of 1 'long long' value) from incompatible type 'int'
hash.c: X1 = _mm_add_si64(X1,ks[1]);
hash.c: ^ ~~~~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:108:12: error: assigning to '__m64' (vector of 1 'long long' value) from incompatible type 'int'
hash.c: X2 = _mm_add_si64(X2,ks[2]);
hash.c: ^ ~~~~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:109:12: error: assigning to '__m64' (vector of 1 'long long' value) from incompatible type 'int'
hash.c: X3 = _mm_add_si64(X3,ks[3]);
hash.c: ^ ~~~~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:110:12: error: assigning to '__m64' (vector of 1 'long long' value) from incompatible type 'int'
hash.c: X4 = _mm_add_si64(X4,ks[4]);
hash.c: ^ ~~~~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:111:12: error: assigning to '__m64' (vector of 1 'long long' value) from incompatible type 'int'
hash.c: X5 = _mm_add_si64(X5,_mm_add_si64(ks[5],ts[0]));
hash.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:112:12: error: assigning to '__m64' (vector of 1 'long long' value) from incompatible type 'int'
hash.c: ...

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

Compiler output

Implementation: T:x64
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
skein_block_x64.S: skein_block_x64.S:336:61: warning: trigraph ignored [-Wtrigraphs]
skein_block_x64.S: addq $LOCAL_SIZE,%rsp #get rid of locals (wipe??)
skein_block_x64.S: ^
skein_block_x64.S: 1 warning generated.
skein_block_x64.S: skein_block_x64.S:12:5: error: unknown directive
skein_block_x64.S: .psize 0,128 #list file has no page boundaries
skein_block_x64.S: ^
skein_block_x64.S: <instantiation>:2:7: error: expected absolute expression
skein_block_x64.S: .if _RCNT_ #is there anything to do?
skein_block_x64.S: ^
skein_block_x64.S: <instantiation>:4:5: note: while in macro instantiation
skein_block_x64.S: RotL64 rbx, 256,%((4*_Rbase_+0) % 8),0
skein_block_x64.S: ^
skein_block_x64.S: skein_block_x64.S:560:1: note: while in macro instantiation
skein_block_x64.S: .rept _UNROLL_CNT*2
skein_block_x64.S: ^
skein_block_x64.S: <instantiation>:1:10: error: invalid reassignment of non-absolute variable '_RCNT_'
skein_block_x64.S: _RCNT_ = RC_256&_0&_1
skein_block_x64.S: ^
skein_block_x64.S: <instantiation>:10:5: note: while in macro instantiation
skein_block_x64.S: RotL64 rdx, 256,%((4*_Rbase_+0) % 8),1
skein_block_x64.S: ^
skein_block_x64.S: skein_block_x64.S:560:1: note: while in macro instantiation
skein_block_x64.S: .rept _UNROLL_CNT*2
skein_block_x64.S: ^
skein_block_x64.S: ...

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

Compiler output

Implementation: T:x64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
skein_block_x64.S: skein_block_x64.S:336:61: warning: trigraph ??) ignored, use -trigraphs to enable [-Wtrigraphs]
skein_block_x64.S: 336 | addq $LOCAL_SIZE,%rsp #get rid of locals (wipe??)
skein_block_x64.S: |

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