Implementation notes: aarch64, rpi4ubuntu64, crypto_hash/bmw512

Computer: rpi4ubuntu64
Architecture: aarch64
CPU ID: 410fd083
SUPERCOP version: 20191221
Operation: crypto_hash
Primitive: bmw512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
625010960 0 020328 832 728optbbegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
625511008 0 021665 840 744optbbegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
627010968 0 020336 832 728optabegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
627711032 0 021689 840 744optabegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
630215888 0 025361 840 728optc03gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
631610556 0 021304 848 744optc04gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
632610556 0 020088 848 728optc04gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
633315840 0 026537 840 744optc03gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
636232188 0 042881 840 744optc01gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
638110164 0 019416 832 728optbbegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
638632180 0 042857 840 744optc02gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
641010460 0 019720 832 728optabegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
641731920 0 041393 840 728optc02gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
641831928 0 041409 840 728optc01gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
644010456 0 019864 848 728optc04gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
644610184 0 018632 816 720optbbegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
644710252 0 018696 816 720optabegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
64599048 0 019692 784 736optbbeclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
647829524 0 038865 840 728optc02gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
648129532 0 038881 840 728optc01gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
65209076 0 019724 784 736optabeclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
656415360 0 024713 840 728optc03gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
658830472 0 038993 824 720optc01gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
658830456 0 038993 824 720optc02gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
673927960 0 038620 784 736optc01clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
674127928 0 038588 784 736optc02clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
69889580 0 019816 848 744optbgbegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
70118884 0 018295 840 728optbgbegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
713810652 0 021308 784 736optc04clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
721916044 0 026825 840 744sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
72546052 0 014616 832 720optbgbegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
730013540 0 023137 840 728sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
73399176 0 018439 840 728optbgbegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
742815948 0 026604 784 736optc03clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
74845916 0 016332 784 736optbgbeclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
76079664 0 018288 832 720optc04gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
797813860 0 022425 824 720optc03gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
857313384 0 022081 824 720sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
910814768 0 024241 840 728sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
937013320 0 023964 784 736sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
1085511460 0 021049 840 728sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
117169916 0 020712 848 744refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
119378584 0 018105 840 728refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
1209214132 0 024913 840 744sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
1267210940 0 019657 824 720sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
1293112428 0 023100 784 736sphlib-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
131628352 0 016921 824 720refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
134288812 0 018209 840 728refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
134718552 0 019212 784 736refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
1411112964 0 022441 840 728sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221

Compiler output

Implementation: optc01
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.c: BlueMidnightWish.c:1326:86: warning: '&' within '^' [-Wbitwise-op-parentheses]
BlueMidnightWish.c: hashState256(state)->LastPart[LastByte] = hashState256(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1326:86: note: place parentheses around the '&' expression to silence this warning
BlueMidnightWish.c: hashState256(state)->LastPart[LastByte] = hashState256(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1360:86: warning: '&' within '^' [-Wbitwise-op-parentheses]
BlueMidnightWish.c: hashState512(state)->LastPart[LastByte] = hashState512(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1360:86: note: place parentheses around the '&' expression to silence this warning
BlueMidnightWish.c: hashState512(state)->LastPart[LastByte] = hashState512(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc01 optc02

Compiler output

Implementation: optc03
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.c: BlueMidnightWish.c:688:84: warning: '&' within '^' [-Wbitwise-op-parentheses]
BlueMidnightWish.c: hashState512(state)->LastPart[LastByte] = hashState512(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:688:84: note: place parentheses around the '&' expression to silence this warning
BlueMidnightWish.c: hashState512(state)->LastPart[LastByte] = hashState512(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc03

Compiler output

Implementation: optc04
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.c: BlueMidnightWish.c:988:84: warning: '&' within '^' [-Wbitwise-op-parentheses]
BlueMidnightWish.c: hashState512_(state).LastPart[LastByte] = hashState512_(state).LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:988:84: note: place parentheses around the '&' expression to silence this warning
BlueMidnightWish.c: hashState512_(state).LastPart[LastByte] = hashState512_(state).LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc04

Namespace violations

Implementation: optbgbe
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
bmw_large_speed.o bmw512_ctx2hash T
bmw_large_speed.o bmw512_init T
bmw_large_speed.o bmw512_lastBlock T
bmw_large_speed.o bmw512_nextBlock T
memxor.o memxor T

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

Namespace violations

Implementation: optc01
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -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: 10, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc01
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc01
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc01
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE optc01
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE optc01
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc02
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc02
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc02
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE optc02
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE optc02

Namespace violations

Implementation: optc03
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.o Final T
BlueMidnightWish.o Hash T
BlueMidnightWish.o Init T
BlueMidnightWish.o Update T
BlueMidnightWish.o i512p2 R

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

Namespace violations

Implementation: optc04
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.o Hash T
BlueMidnightWish.o i512p2 R

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

Namespace violations

Implementation: ref
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -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: 5, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref

Namespace violations

Implementation: sphlib
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -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: 10, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sphlib
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sphlib-small
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib-small
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib-small
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib-small
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib-small