Implementation notes: amd64, colossus5, crypto_hash/bmw256

Computer: colossus5
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20210125
Operation: crypto_hash
Primitive: bmw256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
916042434 0 055526 776 808T:optc01gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
932011811 0 021569 752 776T:optabegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
932012468 0 023453 784 808T:optc03gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
932012449 0 023213 784 808T:optc03gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
932012452 0 023437 784 808T:optc04gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
934012516 0 025677 784 808T:optc03gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
934012484 0 025645 784 808T:optc04gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
934012430 0 023197 784 808T:optc04gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
942011861 0 021617 752 776T:optbbegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
958037569 0 047329 752 776T:optc01gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
960012875 0 023709 768 808T:optabegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
964013201 0 026278 776 808T:optbbegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
968013121 0 026198 776 808T:optabegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
970013152 0 023981 768 808T:optbbegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
974012289 0 022909 768 808T:optbbegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
974018332 0 029030 776 808T:optc02gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
976014765 0 025372 776 808T:optbgbegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
978015322 0 026140 776 808T:optbgbegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
980012249 0 022861 768 808T:optabegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
996019274 0 030190 776 808T:optc02gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
996019274 0 032366 776 808T:optc02gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1002016133 0 028581 784 808T:optbgbegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1002041949 0 052878 776 808T:optc01gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
100806438 0 016216 760 776T:optbgbegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1028020861 0 034070 776 808T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1028018949 0 032158 776 808T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1034039828 0 050534 776 808T:optc01gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1034016217 0 027278 776 808T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1046015318 0 026166 776 808T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1194010717 0 020576 760 776T:optc04gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1218014677 0 024481 752 776T:optc02gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1218010668 0 020528 760 776T:optc03gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1232012918 0 023758 776 808T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1252014321 0 025382 776 808T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1282014479 0 024393 752 776T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1412013406 0 026629 784 808T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1476012258 0 022169 752 776T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1748011165 0 022142 776 808T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
1760010800 0 021542 776 808T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125
286609988 0 019801 752 776T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021031020210125

Test failure

Implementation: T:amd_k8/x86-64/noSSE
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:amd_k8/x86-64/noSSE
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:amd_k8/x86-64/noSSE
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:amd_k8/x86-64/noSSE
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:amd_k8/x86-64/noSSE
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_2_45nm/x86-64/sse4_v1
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_2_45nm/x86-64/sse4_v1
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_2_45nm/x86-64/sse4_v1
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_2_45nm/x86-64/sse4_v1
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_2_65nm/x86-64/ssse3_v1
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_2_65nm/x86-64/ssse3_v1
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_2_65nm/x86-64/ssse3_v1
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_2_65nm/x86-64/ssse3_v1
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_i7_45nm/x86-64/sse4_v1
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_i7_45nm/x86-64/sse4_v1
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_i7_45nm/x86-64/sse4_v1
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core_i7_45nm/x86-64/sse4_v1

Compiler output

Implementation: T:optc31ssse3
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
Compress256_sse_31.c: Compress256_sse_31.c: In function 'Compress256':
Compress256_sse_31.c: Compress256_sse_31.c:374:19: warning: passing argument 1 of '_mm_storeu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
Compress256_sse_31.c: _mm_storeu_si128(&p256[00], copyTemp);
Compress256_sse_31.c: ^
Compress256_sse_31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/pmmintrin.h:31:0,
Compress256_sse_31.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:31,
Compress256_sse_31.c: from Compress256_sse_31.c:12:
Compress256_sse_31.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/emmintrin.h:719:1: note: expected '__vector(2) long long int *' but argument is of type 'u_int32_t * {aka unsigned int *}'
Compress256_sse_31.c: _mm_storeu_si128 (__m128i_u *__P, __m128i __B)
Compress256_sse_31.c: ^~~~~~~~~~~~~~~~
Compress256_sse_31.c: Compress256_sse_31.c:377:29: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
Compress256_sse_31.c: copyTemp = _mm_loadu_si128(&hashState256(state)->DoublePipe[ 4]);
Compress256_sse_31.c: ^
Compress256_sse_31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/pmmintrin.h:31:0,
Compress256_sse_31.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:31,
Compress256_sse_31.c: from Compress256_sse_31.c:12:
Compress256_sse_31.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/emmintrin.h:701:1: note: expected 'const __vector(2) long long int *' but argument is of type 'u_int32_t * {aka unsigned int *}'
Compress256_sse_31.c: _mm_loadu_si128 (__m128i_u const *__P)
Compress256_sse_31.c: ^~~~~~~~~~~~~~~
Compress256_sse_31.c: Compress256_sse_31.c:378:19: warning: passing argument 1 of '_mm_storeu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
Compress256_sse_31.c: _mm_storeu_si128(&p256[04], copyTemp);
Compress256_sse_31.c: ^
Compress256_sse_31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/pmmintrin.h:31:0,
Compress256_sse_31.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:31,
Compress256_sse_31.c: from Compress256_sse_31.c:12:
Compress256_sse_31.c: ...

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

Namespace violations

Implementation: T:optbgbe
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
bmw_small_speed.o bmw256_ctx2hash T
bmw_small_speed.o bmw256_init T
bmw_small_speed.o bmw256_lastBlock T
bmw_small_speed.o bmw256_nextBlock T
memxor.o memxor T

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

Namespace violations

Implementation: T:optc01
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
BlueMidnightWish.o Final T
BlueMidnightWish.o Hash T
BlueMidnightWish.o Init T
BlueMidnightWish.o Update T
BlueMidnightWish.o i224p2 R
BlueMidnightWish.o i256p2 R
BlueMidnightWish.o i384p2 R
BlueMidnightWish.o i512p2 R

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

Namespace violations

Implementation: T:optc02
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
BlueMidnightWish.o Final T
BlueMidnightWish.o Hash T
BlueMidnightWish.o Init T
BlueMidnightWish.o Update256 T
BlueMidnightWish.o i256p2 R

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

Namespace violations

Implementation: T:optc03
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
BlueMidnightWish.o Hash T
BlueMidnightWish.o i256p2 R

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

Namespace violations

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
BlueMidnightWish.o Compression256 T
BlueMidnightWish.o Compression512 T
BlueMidnightWish.o Final T
BlueMidnightWish.o Hash T
BlueMidnightWish.o Init T
BlueMidnightWish.o Update T
BlueMidnightWish.o expand32_1 T
BlueMidnightWish.o expand32_2 T
BlueMidnightWish.o expand64_1 T
BlueMidnightWish.o expand64_2 T
BlueMidnightWish.o i224p2 R
BlueMidnightWish.o i256p2 R
BlueMidnightWish.o i384p2 R
BlueMidnightWish.o i512p2 R

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
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

Namespace violations

Implementation: T:sphlib
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
bmw.o sph_bmw224 T
bmw.o sph_bmw224_addbits_and_close T
bmw.o sph_bmw224_close T
bmw.o sph_bmw224_init T
bmw.o sph_bmw256 T
bmw.o sph_bmw256_addbits_and_close T
bmw.o sph_bmw256_close T
bmw.o sph_bmw256_init T
bmw.o sph_bmw384 T
bmw.o sph_bmw384_addbits_and_close T
bmw.o sph_bmw384_close T
bmw.o sph_bmw384_init T
bmw.o sph_bmw512 T
bmw.o sph_bmw512_addbits_and_close T
bmw.o sph_bmw512_close T
bmw.o sph_bmw512_init T

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