Implementation notes: amd64, margaux, crypto_hash/skein512512

Computer: margaux
Microarchitecture: amd64; Core 2 65nm (6fb)
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20230530
Operation: crypto_hash
Primitive: skein512512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
104114792 0 016235 804 960T:littlegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
104964825 0 016395 844 896T:simpleclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
105524841 0 017523 844 896T:simpleclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
1055321027 0 031564 796 960T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
106324878 0 017331 844 896T:simpleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
1071311957 0 022707 844 896T:sphlibclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
1072510486 0 022005 804 960T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
1080511945 0 022979 844 896T:sphlibclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
1091511707 0 021053 836 896T:sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
1093211945 0 024091 844 896T:sphlibclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
1093622749 0 033877 804 960T:x64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
1094322243 0 032629 804 960T:x64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
109535067 0 015715 844 896T:simpleclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
1095821577 0 031724 796 960T:x64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
1103611977 0 023899 844 896T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
111264997 0 018084 812 960T:littlegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
111585013 0 016924 812 960T:littlegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
112554868 0 014749 836 896T:simpleclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
1126517392 0 026456 780 928T:x64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
112954713 0 015087 788 928T:littlegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
1143923014 0 034565 804 960T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
1145421957 0 032773 804 960T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
1146412006 0 023877 804 960T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
1183511599 0 024685 804 960T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
1229216641 0 026064 780 928T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
124225129 0 016571 804 960T:simplegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
127335717 0 018804 812 960T:simplegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
130345301 0 017212 812 960T:sandygcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
130855269 0 018356 812 960T:sandygcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
131275189 0 017100 812 960T:simplegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
132545019 0 015391 788 928T:sandygcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
132904544 0 016061 804 960T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
132935051 0 016491 804 960T:sandygcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
133654862 0 015247 788 928T:simplegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
141639892 0 020256 780 928T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
142386207 0 019293 804 960T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
155656390 0 018261 804 960T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
167924294 0 014672 780 928T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
172856457 0 018395 844 896T:sphlib-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
173636489 0 018651 844 896T:sphlib-smallclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
174266489 0 017539 844 896T:sphlib-smallclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
174316020 0 015389 836 896T:sphlib-smallclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
180916309 0 017075 844 896T:sphlib-smallclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2698713251 0 023907 844 896T:sandyclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2766413261 0 024827 844 896T:sandyclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2792713277 0 025955 844 896T:sandyclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2815413149 0 023021 836 896T:sandyclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2856113563 0 026019 844 896T:sandyclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2908014658 0 025315 844 896T:littleclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2944333330 0 044083 844 896T:optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2944633422 0 045283 844 896T:optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2956130806 0 039973 836 896T:optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2975233007 0 043011 844 896T:optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2985914733 0 026299 844 896T:littleclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2997414749 0 027427 844 896T:littleclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
2998614706 0 024589 836 896T:littleclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
3057832995 0 044683 844 896T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
3060915015 0 027459 844 896T:littleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023053120230530
4422323649 0 036740 812 960T:mmxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
4431123649 0 035564 812 960T:mmxgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
5122526479 0 037915 804 960T:mmxgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530
5283825236 0 035615 788 928T:mmxgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023053120230530

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