Implementation notes: aarch64, hikey960, crypto_hash/groestl512

Computer: hikey960
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20190816
Operation: crypto_hash
Primitive: groestl512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
035496 0 045754 920 744sphlibgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
039676 0 051522 920 776sphlib-adaptedgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
038024 0 047598 904 744sphlib-adaptedgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
042476 0 054338 920 776sphlib-adaptedgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019112620190816
038668 0 048938 920 744sphlib-adaptedgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019112620190816
015956 0 029202 920 744sphlib-smallgcc_-funroll-loops_-O2_-fomit-frame-pointer2019112620190816
016076 0 029362 920 744sphlib-smallgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
3553240140 0 050338 920 744sphlib-adaptedgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
5827535036 0 045226 920 744sphlibgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
5827536284 0 049522 920 744sphlibgcc_-funroll-loops_-O2_-fomit-frame-pointer2019112620190816
5827536332 0 049810 920 776sphlibgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
6660035548 0 045778 920 744sphlibgcc_-O2_-fomit-frame-pointer2019112620190816
6660034972 0 044534 904 744sphlibgcc_-Os_-fomit-frame-pointer2019112620190816
6660834972 0 044534 904 744sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019112620190816
7492563541 16384 51275506 17360 1296opt64gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
7994726681 0 040017 928 744opt32gcc_-funroll-loops_-O2_-fomit-frame-pointer2019112620190816
7994724209 0 034513 928 744opt32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019112620190816
8185139596 0 053090 920 776sphlib-adaptedgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
8325060066 16384 51269774 17344 1264opt64gcc_-Os_-fomit-frame-pointer2019112620190816
8325060066 16384 51269774 17344 1264opt64gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
8325042372 0 053488 816 760sphlib-adaptedclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019112620190816
9157516108 0 029602 920 776sphlib-smallgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
9990069425 16384 51279729 17352 1264opt64gcc_-O2_-fomit-frame-pointer2019112620190816
9990070353 16384 51280657 17352 1264opt64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019112620190816
9990037028 0 050490 920 744sphlibgcc_-funroll-loops_-O_-fomit-frame-pointer2019112620190816
9990035496 0 045762 920 744sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019112620190816
9990039796 0 050034 920 744sphlib-adaptedgcc_-O2_-fomit-frame-pointer2019112620190816
9990038024 0 047598 904 744sphlib-adaptedgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019112620190816
9990014604 0 024842 920 744sphlib-smallgcc_-O2_-fomit-frame-pointer2019112620190816
9990014244 0 023814 904 744sphlib-smallgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
9990014612 0 024850 920 744sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019112620190816
9991276497 16384 51288482 17360 1296opt64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019112620190816
10407534968 0 044566 904 744sphlibgcc_-funroll-loops_-Os_-fomit-frame-pointer2019112620190816
10523766605 16384 51280218 17360 1296opt64gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
10660860058 16384 51269766 17344 1264opt64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019112620190816
10822536684 0 050194 920 776sphlibgcc_-funroll-loops_-O3_-fomit-frame-pointer2019112620190816
10822516704 0 030170 920 744sphlib-smallgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
11141839952 0 051064 816 760sphlibclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019112620190816
11547960837 16384 51274369 17352 1264opt64gcc_-funroll-loops_-O_-fomit-frame-pointer2019112620190816
11655042252 0 055778 920 776sphlib-adaptedgcc_-funroll-loops_-O3_-fomit-frame-pointer2019112620190816
12487558781 16384 51269113 17352 1264opt64gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
12487560837 16384 51274369 17352 1264opt64gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
12487538016 0 047622 904 744sphlib-adaptedgcc_-funroll-loops_-Os_-fomit-frame-pointer2019112620190816
14031616236 0 028098 920 776sphlib-smallgcc_-O3_-fomit-frame-pointer2019112620190816
14152561089 16384 51274441 17352 1264opt64gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
14152535988 0 049266 920 744sphlibgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
14154240844 0 054130 920 744sphlib-adaptedgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
14570534968 0 044566 904 744sphlibgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
14985029661 0 043322 936 776opt32gcc_-funroll-loops_-O3_-fomit-frame-pointer2019112620190816
14985073529 16384 51286841 17352 1264opt64gcc_-funroll-loops_-O2_-fomit-frame-pointer2019112620190816
14985036444 0 048274 920 776sphlibgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
14985016108 0 027954 920 776sphlib-smallgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
14985016076 0 029602 920 776sphlib-smallgcc_-funroll-loops_-O3_-fomit-frame-pointer2019112620190816
15200916704 0 030170 920 744sphlib-smallgcc_-funroll-loops_-O_-fomit-frame-pointer2019112620190816
15403124169 0 034473 928 744opt32gcc_-O2_-fomit-frame-pointer2019112620190816
15817524201 0 034537 928 744opt32gcc_-O_-fomit-frame-pointer2019112620190816
15817524237 0 034577 928 744opt32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019112620190816
15817538016 0 047622 904 744sphlib-adaptedgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
15819426521 0 037866 840 760opt32clang_-O3_-fomit-frame-pointer_-Qunused-arguments2019112620190816
15819424153 0 034417 928 744opt32gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
15819415656 0 026784 816 760sphlib-smallclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019112620190816
15989426541 0 037906 840 760opt32clang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019112620190816
15989423913 0 033629 912 744opt32gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
15991229717 0 043346 936 776opt32gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
16439960058 16384 51269798 17344 1264opt64gcc_-funroll-loops_-Os_-fomit-frame-pointer2019112620190816
16465079677 16384 51293322 17360 1296opt64gcc_-funroll-loops_-O3_-fomit-frame-pointer2019112620190816
17482536892 0 048738 920 776sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019112620190816
17482539804 0 050042 920 744sphlib-adaptedgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019112620190816
17539556416 0 068934 904 744sphlibcc2019112620190816
17539542372 0 053512 816 760sphlib-adaptedclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019112620190816
18317234972 0 044534 904 744sphlibgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
18317238024 0 047598 904 744sphlib-adaptedgcc_-Os_-fomit-frame-pointer2019112620190816
19147542372 0 053512 816 760sphlib-adaptedclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019112620190816
19147542372 0 053512 816 760sphlib-adaptedclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019112620190816
19878139952 0 051080 816 760sphlibclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019112620190816
19980039952 0 051080 816 760sphlibclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019112620190816
19980037028 0 050490 920 744sphlibgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
19980038668 0 048938 920 744sphlib-adaptedgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
19980015656 0 026784 816 760sphlib-smallclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019112620190816
19980014236 0 023838 904 744sphlib-smallgcc_-funroll-loops_-Os_-fomit-frame-pointer2019112620190816
19980014236 0 023838 904 744sphlib-smallgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
19982439952 0 051080 816 760sphlibclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019112620190816
19982435496 0 045754 920 744sphlibgcc_-O_-fomit-frame-pointer2019112620190816
19982415656 0 026784 816 760sphlib-smallclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019112620190816
20812516236 0 028098 920 776sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019112620190816
21026740548 0 053794 920 744sphlib-adaptedgcc_-funroll-loops_-O2_-fomit-frame-pointer2019112620190816
22216761904 0 074430 904 744sphlib-adaptedcc2019112620190816
22477560501 16384 51270841 17352 1264opt64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019112620190816
22891027349 0 039354 936 776opt32gcc_-O3_-fomit-frame-pointer2019112620190816
23386060058 16384 51269798 17344 1264opt64gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
24142526581 0 040113 928 744opt32gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
24561724201 0 034537 928 744opt32gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
24561776621 16384 51288610 17360 1296opt64gcc_-O3_-fomit-frame-pointer2019112620190816
24975023885 0 033573 912 744opt32gcc_-Os_-fomit-frame-pointer2019112620190816
25699335548 0 045778 920 744sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019112620190816
25807561904 0 074430 904 744sphlib-adaptedgcc_-funroll-loops2019112620190816
27472514244 0 023814 904 744sphlib-smallgcc_-Os_-fomit-frame-pointer2019112620190816
27537356416 0 068934 904 744sphlibgcc2019112620190816
28035640232 0 053698 920 744sphlib-adaptedgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
28063238668 0 048938 920 744sphlib-adaptedgcc_-O_-fomit-frame-pointer2019112620190816
29232542476 0 054338 920 776sphlib-adaptedgcc_-O3_-fomit-frame-pointer2019112620190816
29973626881 0 040257 928 744opt32gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
3020221700 0 011245 896 74432bit-bytesliced-c-smallgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
30401823913 0 033629 912 744opt32gcc_-funroll-loops_-Os_-fomit-frame-pointer2019112620190816
3246757648 0 021130 920 77632bit-bytesliced-c-smallgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
33300027308 0 039838 904 744sphlib-smallcc2019112620190816
3413256112 0 017978 920 77632bit-bytesliced-c-smallgcc_-O3_-fomit-frame-pointer2019112620190816
35079023885 0 033573 912 744opt32gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
36668058781 16384 51269113 17352 1264opt64gcc_-O_-fomit-frame-pointer2019112620190816
37387026541 0 037906 840 760opt32clang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019112620190816
37387027333 0 039314 936 776opt32gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
37387014660 0 024858 920 744sphlib-smallgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
3741767648 0 021162 920 77632bit-bytesliced-c-smallgcc_-funroll-loops_-O3_-fomit-frame-pointer2019112620190816
37494015656 0 026768 816 760sphlib-smallclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019112620190816
3829503276 0 014432 816 76032bit-bytesliced-c-smallclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019112620190816
38299615152 0 025426 920 744sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019112620190816
39756214244 0 023814 904 744sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019112620190816
39960040232 0 053698 920 744sphlib-adaptedgcc_-funroll-loops_-O_-fomit-frame-pointer2019112620190816
3997353276 0 014432 816 76032bit-bytesliced-c-smallclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019112620190816
4092554936 0 018337 912 74432bit-bytesliced-c-smallgcc_-funroll-loops_-O_-fomit-frame-pointer2019112620190816
42094826541 0 037906 840 760opt32clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019112620190816
44122523881 0 033565 912 744opt32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019112620190816
46730036892 0 048738 920 776sphlibgcc_-O3_-fomit-frame-pointer2019112620190816
4745255168 0 018385 912 74432bit-bytesliced-c-smallgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
47941358433 16384 51268697 17352 1264opt64gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
51615026581 0 040113 928 744opt32gcc_-funroll-loops_-O_-fomit-frame-pointer2019112620190816
5244756176 0 018026 920 77632bit-bytesliced-c-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019112620190816
53787815104 0 025370 920 744sphlib-smallgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
54535349073 0 061669 912 744opt32gcc2019112620190816
54945049073 0 061669 912 744opt32cc2019112620190816
54945061904 0 074430 904 744sphlib-adaptedgcc2019112620190816
5744256112 0 017946 920 77632bit-bytesliced-c-smallgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112620190816
59107556416 0 068934 904 744sphlibgcc_-funroll-loops2019112620190816
59947227453 0 039450 936 776opt32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019112620190816
6077255104 0 018281 912 74432bit-bytesliced-c-smallgcc_-funroll-loops_-O2_-fomit-frame-pointer2019112620190816
71595015104 0 025370 920 744sphlib-smallgcc_-O_-fomit-frame-pointer2019112620190816
7409253276 0 014408 816 76032bit-bytesliced-c-smallclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019112620190816
7477401668 0 011181 896 74432bit-bytesliced-c-smallgcc_-Os_-fomit-frame-pointer2019112620190816
8742301820 0 011953 912 74432bit-bytesliced-c-smallgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112620190816
102397527308 0 039838 904 744sphlib-smallgcc_-funroll-loops2019112620190816
10406251828 0 012001 912 74432bit-bytesliced-c-smallgcc_-O2_-fomit-frame-pointer2019112620190816
10989001700 0 011245 896 74432bit-bytesliced-c-smallgcc_-funroll-loops_-Os_-fomit-frame-pointer2019112620190816
10989004936 0 018337 912 74432bit-bytesliced-c-smallgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
11072253276 0 014432 816 76032bit-bytesliced-c-smallclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019112620190816
13320002016 0 012225 912 74432bit-bytesliced-c-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019112620190816
14985001876 0 012049 912 74432bit-bytesliced-c-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019112620190816
15551691680 0 011197 896 74432bit-bytesliced-c-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019112620190816
15734251668 0 011181 896 74432bit-bytesliced-c-smallgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112620190816
18231751980 0 012185 912 74432bit-bytesliced-c-smallgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019112620190816
18315001980 0 012185 912 74432bit-bytesliced-c-smallgcc_-O_-fomit-frame-pointer2019112620190816
191081727308 0 039838 904 744sphlib-smallgcc2019112620190816
266600449073 0 061669 912 744opt32gcc_-funroll-loops2019112620190816
41744013888 0 016349 896 74432bit-bytesliced-c-smallcc2019112620190816
69014253888 0 016349 896 74432bit-bytesliced-c-smallgcc2019112620190816
95571003888 0 016349 896 74432bit-bytesliced-c-smallgcc_-funroll-loops2019112620190816

Compiler output

Implementation: mmx
Security model: unknown
Compiler: cc
hash.c: hash.c:897:2: error: #error "MMX instructions must be enabled"
hash.c: #error "MMX instructions must be enabled"
hash.c: ^~~~~

Number of similar (compiler,implementation) pairs: 23, namely:
CompilerImplementations
cc mmx
gcc mmx
gcc -O2 -fomit-frame-pointer mmx
gcc -O3 -fomit-frame-pointer mmx
gcc -O -fomit-frame-pointer mmx
gcc -Os -fomit-frame-pointer mmx
gcc -fno-schedule-insns -O2 -fomit-frame-pointer mmx
gcc -fno-schedule-insns -O3 -fomit-frame-pointer mmx
gcc -fno-schedule-insns -O -fomit-frame-pointer mmx
gcc -fno-schedule-insns -Os -fomit-frame-pointer mmx
gcc -funroll-loops mmx
gcc -funroll-loops -O2 -fomit-frame-pointer mmx
gcc -funroll-loops -O3 -fomit-frame-pointer mmx
gcc -funroll-loops -O -fomit-frame-pointer mmx
gcc -funroll-loops -Os -fomit-frame-pointer mmx
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer mmx
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer mmx
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer mmx
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer mmx
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv mmx
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv mmx
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv mmx
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv mmx

Compiler output

Implementation: mmx
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
hash.c: hash.c:897:2: error: "MMX instructions must be enabled"
hash.c: #error "MMX instructions must be enabled"
hash.c: ^
hash.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments mmx
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments mmx
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments mmx
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments mmx

Compiler output

Implementation: opt64
Security model: unknown
Compiler: cc
hash.c: hash.c:194:14: warning: 'inP' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 inP[COLS1024] __attribute__((aligned(16)));
hash.c: ^~~
hash.c: hash.c:193:14: warning: 'outQ' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 outQ[COLS1024] __attribute__((aligned(16)));
hash.c: ^~~~
hash.c: hash.c:192:14: warning: 'z' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 z[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:191:14: warning: 'y' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 y[COLS1024] __attribute__((aligned(16)));
hash.c: ^
try.c: crypto_hash_groestl512.a(hash.o): In function `Transform':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc opt64
gcc opt64
gcc -funroll-loops opt64

Compiler output

Implementation: opt64
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
hash.c: hash.c:191:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 y[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:190:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:192:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 z[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:190:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:193:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 outQ[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:190:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:194:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 inP[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:190:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: ...
try.c: crypto_hash_groestl512.a(hash.o): In function `Transform':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: crypto_hash_groestl512.a(hash.o): In function `Update':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: crypto_hash_groestl512.a(hash.o): In function `Final':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments opt64
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments opt64
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments opt64
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments opt64

Compiler output

Implementation: opt64
Security model: unknown
Compiler: gcc -O2 -fomit-frame-pointer
hash.c: hash.c:194:14: warning: 'inP' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 inP[COLS1024] __attribute__((aligned(16)));
hash.c: ^~~
hash.c: hash.c:193:14: warning: 'outQ' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 outQ[COLS1024] __attribute__((aligned(16)));
hash.c: ^~~~
hash.c: hash.c:192:14: warning: 'z' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 z[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:191:14: warning: 'y' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 y[COLS1024] __attribute__((aligned(16)));
hash.c: ^

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer opt64
gcc -O3 -fomit-frame-pointer opt64
gcc -O -fomit-frame-pointer opt64
gcc -Os -fomit-frame-pointer opt64
gcc -fno-schedule-insns -O2 -fomit-frame-pointer opt64
gcc -fno-schedule-insns -O3 -fomit-frame-pointer opt64
gcc -fno-schedule-insns -O -fomit-frame-pointer opt64
gcc -fno-schedule-insns -Os -fomit-frame-pointer opt64
gcc -funroll-loops -O2 -fomit-frame-pointer opt64
gcc -funroll-loops -O3 -fomit-frame-pointer opt64
gcc -funroll-loops -O -fomit-frame-pointer opt64
gcc -funroll-loops -Os -fomit-frame-pointer opt64
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer opt64
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer opt64
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer opt64
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer opt64
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv opt64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv opt64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv opt64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv opt64