Implementation notes: amd64, hydra7, crypto_hash/bmw256

Computer: hydra7
Microarchitecture: amd64; Sandy Bridge+AES (206a7)
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20240107
Operation: crypto_hash
Primitive: bmw256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1397911476 0 021752 780 928T:optabegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1399711650 0 022980 796 960T:optabegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1404011487 0 021768 780 928T:optbbegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1409311682 0 023012 796 960T:optbbegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1425912618 0 024309 804 960T:optabegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1426336785 0 047032 780 928T:optc01gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1442720590 0 033549 804 960T:optc02gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1446642507 0 054181 804 960T:optc01gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1447014281 0 027253 804 960T:optabegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1448712642 0 024325 804 960T:optbbegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1451540164 0 051557 804 960T:optc01gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1452814345 0 027317 804 960T:optbbegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1454445850 0 058805 804 960T:optc01gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1457219278 0 030957 804 960T:optc02gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1470212236 0 023716 812 960T:optc03gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1478518011 0 029405 804 960T:optc02gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1482112255 0 023732 812 960T:optc04gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
152356518 0 016767 788 928T:optbgbegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
153987016 0 018291 804 960T:optbgbegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
157366965 0 018604 812 960T:optbgbegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1582215330 0 026877 804 960T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1611712847 0 024389 804 960T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
1715314435 0 024728 780 928T:optc02gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
3182811503 0 022957 804 960T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
3193011963 0 023685 804 960T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
3217313917 0 027020 812 960T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
4112710357 0 020664 780 928T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212

Checksum failure

Implementation: T:optbgbe
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
d900ae76e9431ed1695891fdf0fbf723719acd8e6963e4441d031f1fa956f502
Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:optbgbe

Checksum failure

Implementation: T:sphlib
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
c79502110cadeddc766ccd862f784ba8f7dc7c9ce54fe5f1db1b45e2a9a10c43
Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:sphlib T:sphlib-small

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

Test failure

Implementation: T:optc03
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111
crypto_hash is nondeterministic

Number of similar (compiler,implementation) pairs: 10, 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 -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 -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:optc04
gcc -march=native -mtune=native -O2 -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 -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:sphlib-small

Compiler output

Implementation: T:amd_k8/x86-64/noSSE
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_hash_bmw256.a(Compress256_icc.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE

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

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:26: warning: passing argument 1 of '_mm_storeu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
Compress256_sse_31.c: 374 | _mm_storeu_si128(&p256[00], copyTemp);
Compress256_sse_31.c: | ^~~~~~~~~
Compress256_sse_31.c: | |
Compress256_sse_31.c: | u_int32_t * {aka unsigned int *}
Compress256_sse_31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/pmmintrin.h:31,
Compress256_sse_31.c: from /usr/lib/gcc/x86_64-linux-gnu/11/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/11/include/emmintrin.h:737:30: note: expected '__m128i_u *' but argument is of type 'u_int32_t *' {aka 'unsigned int *'}
Compress256_sse_31.c: 737 | _mm_storeu_si128 (__m128i_u *__P, __m128i __B)
Compress256_sse_31.c: | ~~~~~~~~~~~^~~
Compress256_sse_31.c: Compress256_sse_31.c:377:36: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
Compress256_sse_31.c: 377 | copyTemp = _mm_loadu_si128(&hashState256(state)->DoublePipe[ 4]);
Compress256_sse_31.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Compress256_sse_31.c: | |
Compress256_sse_31.c: | u_int32_t * {aka unsigned int *}
Compress256_sse_31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/pmmintrin.h:31,
Compress256_sse_31.c: from /usr/lib/gcc/x86_64-linux-gnu/11/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/11/include/emmintrin.h:701:35: note: expected 'const __m128i_u *' but argument is of type 'u_int32_t *' {aka 'unsigned int *'}
Compress256_sse_31.c: 701 | _mm_loadu_si128 (__m128i_u const *__P)
Compress256_sse_31.c: | ~~~~~~~~~~~~~~~~~^~~
Compress256_sse_31.c: Compress256_sse_31.c:378:26: warning: passing argument 1 of '_mm_storeu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
Compress256_sse_31.c: 378 | _mm_storeu_si128(&p256[04], copyTemp);
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