Implementation notes: amd64, speed2supercop, crypto_hash/bmw512

Computer: speed2supercop
Microarchitecture: amd64; Haswell+AES (306c3)
Architecture: amd64
CPU ID: GenuineIntel-000306c3-1fc9cbf5
SUPERCOP version: 20240625
Operation: crypto_hash
Primitive: bmw512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
56327652 0 021462 824 744T:opt008_asm64clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
56407632 0 017582 824 728T:opt008_asm64clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
56447757 0 020310 824 728T:opt008_asm64clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
56527928 0 018157 784 800T:opt008_asm64gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
56567652 0 021654 824 744T:opt008_asm64clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
56647652 0 018463 816 792T:opt008_asm64clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
56847928 0 020173 784 800T:opt008_asm64gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
56967748 0 017765 784 800T:opt008_asm64gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
57487502 0 016432 760 768T:opt008_asm64gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
622414427 0 024366 792 728T:optabeclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
623614807 0 028598 792 744T:optc04clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
629614635 0 024574 792 728T:optbbeclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
630014807 0 028790 792 744T:optc04clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
630014807 0 024734 792 728T:optc04clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
631214723 0 025511 784 792T:optc04clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
633214613 0 025399 784 792T:optabeclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
634014740 0 025527 784 792T:optbbeclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
635243413 0 052344 728 768T:optc02gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
638014778 0 028790 792 744T:optabeclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
638443427 0 052360 728 768T:optc01gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
640414778 0 028774 792 744T:optbbeclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
642414765 0 028566 792 744T:optbbeclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
642814765 0 028566 792 744T:optabeclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
643622292 0 036094 792 744T:optc03clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
643622252 0 033055 784 792T:optc03clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
646822309 0 036310 792 744T:optc03clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
646817941 0 032054 792 744T:sphlibclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
647217909 0 027966 792 728T:sphlibclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
647622177 0 032118 792 728T:optc03clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
647617909 0 031830 792 744T:sphlibclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
653243141 0 053094 792 728T:optc02clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
654843197 0 053142 792 728T:optc01clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
654815882 0 026823 784 792T:sphlibclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
655643768 0 057558 792 744T:optc01clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
657243740 0 057326 792 744T:optc01clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
657243261 0 053839 784 792T:optc02clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
657643700 0 057278 792 744T:optc02clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
658443282 0 053855 784 792T:optc01clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
658843726 0 057526 792 744T:optc02clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
669615639 0 028166 792 728T:optbbeclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
67488519 0 020694 792 728T:optbgbeclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
676015585 0 028118 792 728T:optc04clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
67967368 0 016240 728 768T:optbgbegcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
681616471 0 025392 728 768T:optbbegcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
684815665 0 028198 792 728T:optabeclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
686023569 0 036118 792 728T:optc03clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
686445870 0 058093 752 800T:optc01gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
687645447 0 057998 792 728T:optc01clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
688445854 0 058077 752 800T:optc02gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
688845886 0 056093 752 800T:optc01gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
688818734 0 031382 792 728T:sphlibclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
690045421 0 057966 792 728T:optc02clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
690045854 0 056061 752 800T:optc02gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
690043453 0 053477 752 800T:optc02gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
690416344 0 025264 728 768T:optabegcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
694414548 0 028470 792 744T:sphlib-smallclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
697243480 0 053493 752 800T:optc01gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
706812680 0 023623 784 792T:sphlib-smallclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
707215565 0 027781 752 800T:optc04gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
708415565 0 025765 752 800T:optc04gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
710815495 0 025501 752 800T:optc04gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
713224472 0 034693 752 800T:optc03gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
717623131 0 033149 752 800T:optc03gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
720024456 0 036693 752 800T:optc03gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
720415080 0 029206 792 744T:sphlib-smallclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
721615881 0 025812 744 800T:optbbegcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
726017090 0 027293 752 800T:optbbegcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
726417074 0 029293 752 800T:optbbegcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
728415735 0 025668 744 800T:optabegcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
73128401 0 021758 792 744T:optbgbeclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
734015419 0 025581 752 800T:sphlibgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
73488401 0 021966 792 744T:optbgbeclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
73607879 0 018567 784 792T:optbgbeclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
737213158 0 024845 752 800T:optbgbegcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
737216296 0 026661 752 800T:sphlibgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
73807770 0 017646 792 728T:optbgbeclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
738814785 0 023864 728 768T:sphlibgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
739217112 0 027309 752 800T:optabegcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
741616846 0 029189 752 800T:sphlibgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
742417096 0 029309 752 800T:optabegcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
750414537 0 024590 792 728T:sphlib-smallclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
75967885 0 018061 752 800T:optbgbegcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
76447679 0 017556 744 800T:optbgbegcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
788014308 0 023248 728 768T:optc04gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
790420264 0 029216 728 768T:optc03gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
848812388 0 022557 752 800T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
888411520 0 020584 728 768T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
922813944 0 024309 752 800T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
970014574 0 026917 752 800T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1086016574 0 029222 792 728T:sphlib-smallclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1188011136 0 025182 792 744T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1206410048 0 020887 784 792T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1228011092 0 024966 792 744T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1230811061 0 021054 792 728T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1233211847 0 024446 792 728T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1242011592 0 021653 752 800T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1250012422 0 022677 752 800T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1256413630 0 025901 752 800T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1826010393 0 019368 728 768T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625

Compiler output


update.c: update.c:83:84: warning: '&' within '^' [-Wbitwise-op-parentheses]
update.c:         hashState512_(state).LastPart[LastByte] = hashState512_(state).LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
update.c:                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
update.c: update.c:83:84: note: place parentheses around the '&' expression to silence this warning
update.c:         hashState512_(state).LastPart[LastByte] = hashState512_(state).LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
update.c:                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
update.c: 1 warning generated.
try.c: /usr/bin/ld: libcrypto_hash_bmw512.a(Compress.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
try.c: /usr/bin/ld: libcrypto_hash_bmw512.a(Compress.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
measure.c: /usr/bin/ld: libcrypto_hash_bmw512.a(Compress.o): warning: relocation in read-only section `.eh_frame'
measure.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:opt008_asm64clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opt008_asm64clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opt008_asm64clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opt008_asm64clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opt008_asm64clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))

Compiler output


update.c: update.c: In function 'Hash':
update.c: update.c:83:91: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
update.c:    83 |         hashState512_(state).LastPart[LastByte] = hashState512_(state).LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
update.c:       |                                                                                           ^
update.c: update.c:127:9: warning: array subscript -2 is outside array bounds of 'u_int64_t[16]' {aka 'long unsigned int[16]'} [-Warray-bounds=]
update.c:   127 |         Compress512(data64, data64 +16, (hashState *) (CONST64final-2)); // TODO: This is a HACK...
update.c:       |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
update.c: update.c:113:50: note: at offset -16 into object 'CONST64final' of size 128
update.c:   113 |         u_int64_t __attribute__ ((aligned (16))) CONST64final[16] =
update.c:       |                                                  ^~~~~~~~~~~~
try.c: /usr/bin/ld: libcrypto_hash_bmw512.a(Compress.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
try.c: /usr/bin/ld: libcrypto_hash_bmw512.a(Compress.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
measure.c: /usr/bin/ld: libcrypto_hash_bmw512.a(Compress.o): warning: relocation in read-only section `.eh_frame'
measure.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
T:opt008_asm64gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:opt008_asm64gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:opt008_asm64gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)

Compiler output


update.c: update.c: In function 'Hash':
update.c: update.c:83:91: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
update.c:    83 |         hashState512_(state).LastPart[LastByte] = hashState512_(state).LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
update.c:       |                                                                                           ^
try.c: /usr/bin/ld: libcrypto_hash_bmw512.a(Compress.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
try.c: /usr/bin/ld: libcrypto_hash_bmw512.a(Compress.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
measure.c: /usr/bin/ld: libcrypto_hash_bmw512.a(Compress.o): warning: relocation in read-only section `.eh_frame'
measure.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:opt008_asm64gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)

Compiler output


BlueMidnightWish.c: BlueMidnightWish.c:1182:29: warning: unused variable 'tdat32' [-Wunused-variable]
BlueMidnightWish.c:         u_int32_t *data32, *p256, *tdat32, *tp256;
BlueMidnightWish.c:                                    ^
BlueMidnightWish.c: BlueMidnightWish.c:1182:38: warning: unused variable 'tp256' [-Wunused-variable]
BlueMidnightWish.c:         u_int32_t *data32, *p256, *tdat32, *tp256;
BlueMidnightWish.c:                                             ^
BlueMidnightWish.c: BlueMidnightWish.c:1188:69: warning: unused variable 't256_22' [-Wunused-variable]
BlueMidnightWish.c:     u_int32_t t256_16, t256_17, t256_18, t256_19, t256_20, t256_21, t256_22, t256_23;
BlueMidnightWish.c:                                                                     ^
BlueMidnightWish.c: BlueMidnightWish.c:1188:78: warning: unused variable 't256_23' [-Wunused-variable]
BlueMidnightWish.c:     u_int32_t t256_16, t256_17, t256_18, t256_19, t256_20, t256_21, t256_22, t256_23;
BlueMidnightWish.c:                                                                              ^
BlueMidnightWish.c: BlueMidnightWish.c:1189:15: warning: unused variable 't256_24' [-Wunused-variable]
BlueMidnightWish.c:     u_int32_t t256_24, t256_25, t256_26, t256_27, t256_28, t256_29, t256_30, t256_31;
BlueMidnightWish.c:               ^
BlueMidnightWish.c: BlueMidnightWish.c:1189:24: warning: unused variable 't256_25' [-Wunused-variable]
BlueMidnightWish.c:     u_int32_t t256_24, t256_25, t256_26, t256_27, t256_28, t256_29, t256_30, t256_31;
BlueMidnightWish.c:                        ^
BlueMidnightWish.c: BlueMidnightWish.c:1189:33: warning: unused variable 't256_26' [-Wunused-variable]
BlueMidnightWish.c:     u_int32_t t256_24, t256_25, t256_26, t256_27, t256_28, t256_29, t256_30, t256_31;
BlueMidnightWish.c:                                 ^
BlueMidnightWish.c: BlueMidnightWish.c:1189:42: warning: unused variable 't256_27' [-Wunused-variable]
BlueMidnightWish.c:     u_int32_t t256_24, t256_25, t256_26, t256_27, t256_28, t256_29, t256_30, t256_31;
BlueMidnightWish.c:                                          ^
BlueMidnightWish.c: BlueMidnightWish.c:1189:51: warning: unused variable 't256_28' [-Wunused-variable]
BlueMidnightWish.c: ...

Number of similar (implementation,compiler) pairs: 10, namely:
ImplementationCompiler
T:optc01clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc01clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc01clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc01clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc01clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc02clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc02clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc02clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc02clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc02clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))

Compiler output


BlueMidnightWish.c: BlueMidnightWish.c: In function 'Update':
BlueMidnightWish.c: BlueMidnightWish.c:1200:78: warning: unused variable 't512_31' [-Wunused-variable]
BlueMidnightWish.c:  1200 |     u_int64_t t512_24, t512_25, t512_26, t512_27, t512_28, t512_29, t512_30, t512_31;
BlueMidnightWish.c:       |                                                                              ^~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1200:69: warning: unused variable 't512_30' [-Wunused-variable]
BlueMidnightWish.c:  1200 |     u_int64_t t512_24, t512_25, t512_26, t512_27, t512_28, t512_29, t512_30, t512_31;
BlueMidnightWish.c:       |                                                                     ^~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1200:60: warning: unused variable 't512_29' [-Wunused-variable]
BlueMidnightWish.c:  1200 |     u_int64_t t512_24, t512_25, t512_26, t512_27, t512_28, t512_29, t512_30, t512_31;
BlueMidnightWish.c:       |                                                            ^~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1200:51: warning: unused variable 't512_28' [-Wunused-variable]
BlueMidnightWish.c:  1200 |     u_int64_t t512_24, t512_25, t512_26, t512_27, t512_28, t512_29, t512_30, t512_31;
BlueMidnightWish.c:       |                                                   ^~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1200:42: warning: unused variable 't512_27' [-Wunused-variable]
BlueMidnightWish.c:  1200 |     u_int64_t t512_24, t512_25, t512_26, t512_27, t512_28, t512_29, t512_30, t512_31;
BlueMidnightWish.c:       |                                          ^~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1200:33: warning: unused variable 't512_26' [-Wunused-variable]
BlueMidnightWish.c:  1200 |     u_int64_t t512_24, t512_25, t512_26, t512_27, t512_28, t512_29, t512_30, t512_31;
BlueMidnightWish.c:       |                                 ^~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1200:24: warning: unused variable 't512_25' [-Wunused-variable]
BlueMidnightWish.c:  1200 |     u_int64_t t512_24, t512_25, t512_26, t512_27, t512_28, t512_29, t512_30, t512_31;
BlueMidnightWish.c:       |                        ^~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1200:15: warning: unused variable 't512_24' [-Wunused-variable]
BlueMidnightWish.c:  1200 |     u_int64_t t512_24, t512_25, t512_26, t512_27, t512_28, t512_29, t512_30, t512_31;
BlueMidnightWish.c:       |               ^~~~~~~
BlueMidnightWish.c: ...

Number of similar (implementation,compiler) pairs: 8, namely:
ImplementationCompiler
T:optc01gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc01gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc01gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc01gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc02gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc02gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc02gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc02gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)

Compiler output


BlueMidnightWish.c: BlueMidnightWish.c:650:3: warning: misleading indentation; statement is not part of the previous 'else' [-Wmisleading-indentation]
BlueMidnightWish.c:                 p512   = hashState512(state)->DoublePipe;
BlueMidnightWish.c:                 ^
BlueMidnightWish.c: BlueMidnightWish.c:648:2: note: previous statement is here
BlueMidnightWish.c:         else
BlueMidnightWish.c:         ^
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: 2 warnings generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:optc03clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc03clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc03clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc03clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc03clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))

Compiler output


BlueMidnightWish.c: BlueMidnightWish.c: In function 'Update':
BlueMidnightWish.c: BlueMidnightWish.c:648:9: warning: this 'else' clause does not guard... [-Wmisleading-indentation]
BlueMidnightWish.c:   648 |         else
BlueMidnightWish.c:       |         ^~~~
BlueMidnightWish.c: BlueMidnightWish.c:650:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'else'
BlueMidnightWish.c:   650 |                 p512   = hashState512(state)->DoublePipe;
BlueMidnightWish.c:       |                 ^~~~
BlueMidnightWish.c: BlueMidnightWish.c: In function 'Final':
BlueMidnightWish.c: BlueMidnightWish.c:688:91: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
BlueMidnightWish.c:   688 |         hashState512(state)->LastPart[LastByte] = hashState512(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c:       |                                                                                           ^

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:optc03gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc03gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc03gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc03gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)

Compiler output


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 (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:optc04clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc04clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc04clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc04clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optc04clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))

Compiler output


BlueMidnightWish.c: BlueMidnightWish.c: In function 'Hash':
BlueMidnightWish.c: BlueMidnightWish.c:988:91: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
BlueMidnightWish.c:   988 |         hashState512_(state).LastPart[LastByte] = hashState512_(state).LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c:       |                                                                                           ^

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:optc04gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc04gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc04gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optc04gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)

Compiler output


BlueMidnightWish.c: BlueMidnightWish.c:390:44: warning: incompatible pointer types passing 'u_int64_t *' (aka 'unsigned long *') to parameter of type 'const __m128i *' [-Wincompatible-pointer-types]
BlueMidnightWish.c:         _mm_store_si128(&p512[00], _mm_load_si128(&hashState512(state)->DoublePipe[0]));
BlueMidnightWish.c:                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: /usr/lib/llvm-16/lib/clang/16/include/emmintrin.h:3354:31: note: passing argument to parameter '__p' here
BlueMidnightWish.c: _mm_load_si128(__m128i const *__p) {
BlueMidnightWish.c:                               ^
BlueMidnightWish.c: BlueMidnightWish.c:390:18: warning: incompatible pointer types passing 'u_int64_t *' (aka 'unsigned long *') to parameter of type '__m128i *' [-Wincompatible-pointer-types]
BlueMidnightWish.c:         _mm_store_si128(&p512[00], _mm_load_si128(&hashState512(state)->DoublePipe[0]));
BlueMidnightWish.c:                         ^~~~~~~~~
BlueMidnightWish.c: /usr/lib/llvm-16/lib/clang/16/include/emmintrin.h:3803:68: note: passing argument to parameter '__p' here
BlueMidnightWish.c: static __inline__ void __DEFAULT_FN_ATTRS _mm_store_si128(__m128i *__p,
BlueMidnightWish.c:                                                                    ^
BlueMidnightWish.c: BlueMidnightWish.c:391:44: warning: incompatible pointer types passing 'u_int64_t *' (aka 'unsigned long *') to parameter of type 'const __m128i *' [-Wincompatible-pointer-types]
BlueMidnightWish.c:         _mm_store_si128(&p512[02], _mm_load_si128(&hashState512(state)->DoublePipe[2]));
BlueMidnightWish.c:                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: /usr/lib/llvm-16/lib/clang/16/include/emmintrin.h:3354:31: note: passing argument to parameter '__p' here
BlueMidnightWish.c: _mm_load_si128(__m128i const *__p) {
BlueMidnightWish.c:                               ^
BlueMidnightWish.c: BlueMidnightWish.c:391:18: warning: incompatible pointer types passing 'u_int64_t *' (aka 'unsigned long *') to parameter of type '__m128i *' [-Wincompatible-pointer-types]
BlueMidnightWish.c:         _mm_store_si128(&p512[02], _mm_load_si128(&hashState512(state)->DoublePipe[2]));
BlueMidnightWish.c:                         ^~~~~~~~~
BlueMidnightWish.c: /usr/lib/llvm-16/lib/clang/16/include/emmintrin.h:3803:68: note: passing argument to parameter '__p' here
BlueMidnightWish.c: static __inline__ void __DEFAULT_FN_ATTRS _mm_store_si128(__m128i *__p,
BlueMidnightWish.c:                                                                    ^
BlueMidnightWish.c: BlueMidnightWish.c:392:44: warning: incompatible pointer types passing 'u_int64_t *' (aka 'unsigned long *') to parameter of type 'const __m128i *' [-Wincompatible-pointer-types]
BlueMidnightWish.c: ...

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:optx86sse2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optx86sse2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optx86sse2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optx86sse2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:optx86sse2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))

Compiler output


BlueMidnightWish.c: BlueMidnightWish.c: In function 'Compress512':
BlueMidnightWish.c: BlueMidnightWish.c:390:51: warning: passing argument 1 of '_mm_load_si128' from incompatible pointer type [-Wincompatible-pointer-types]
BlueMidnightWish.c:   390 |         _mm_store_si128(&p512[00], _mm_load_si128(&hashState512(state)->DoublePipe[0]));
BlueMidnightWish.c:       |                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c:       |                                                   |
BlueMidnightWish.c:       |                                                   u_int64_t * {aka long unsigned int *}
BlueMidnightWish.c: In file included from BlueMidnightWish.c:12:
BlueMidnightWish.c: /usr/lib/gcc/x86_64-linux-gnu/13/include/emmintrin.h:698:32: note: expected 'const __m128i *' but argument is of type 'u_int64_t *' {aka 'long unsigned int *'}
BlueMidnightWish.c:   698 | _mm_load_si128 (__m128i const *__P)
BlueMidnightWish.c:       |                 ~~~~~~~~~~~~~~~^~~
BlueMidnightWish.c: BlueMidnightWish.c:390:25: warning: passing argument 1 of '_mm_store_si128' from incompatible pointer type [-Wincompatible-pointer-types]
BlueMidnightWish.c:   390 |         _mm_store_si128(&p512[00], _mm_load_si128(&hashState512(state)->DoublePipe[0]));
BlueMidnightWish.c:       |                         ^~~~~~~~~
BlueMidnightWish.c:       |                         |
BlueMidnightWish.c:       |                         u_int64_t * {aka long unsigned int *}
BlueMidnightWish.c: /usr/lib/gcc/x86_64-linux-gnu/13/include/emmintrin.h:734:27: note: expected '__m128i *' but argument is of type 'u_int64_t *' {aka 'long unsigned int *'}
BlueMidnightWish.c:   734 | _mm_store_si128 (__m128i *__P, __m128i __B)
BlueMidnightWish.c:       |                  ~~~~~~~~~^~~
BlueMidnightWish.c: BlueMidnightWish.c:391:51: warning: passing argument 1 of '_mm_load_si128' from incompatible pointer type [-Wincompatible-pointer-types]
BlueMidnightWish.c:   391 |         _mm_store_si128(&p512[02], _mm_load_si128(&hashState512(state)->DoublePipe[2]));
BlueMidnightWish.c:       |                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c:       |                                                   |
BlueMidnightWish.c:       |                                                   u_int64_t * {aka long unsigned int *}
BlueMidnightWish.c: /usr/lib/gcc/x86_64-linux-gnu/13/include/emmintrin.h:698:32: note: expected 'const __m128i *' but argument is of type 'u_int64_t *' {aka 'long unsigned int *'}
BlueMidnightWish.c:   698 | _mm_load_si128 (__m128i const *__P)
BlueMidnightWish.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:optx86sse2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optx86sse2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optx86sse2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:optx86sse2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)