Implementation notes: armeabi, bblack, crypto_hash/groestl512

Computer: bblack
Microarchitecture: armeabi; Cortex-A8 (413fc082)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240425
Operation: crypto_hash
Primitive: groestl512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
26853221113 0 029441 452 704T:opt32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
41073650394 0 057554 440 704T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
42148054038 0 061210 440 704T:sphlib-adaptedgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
44410423985 0 033414 456 704T:opt32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
48306472908 0 083447 412 704T:sphlibclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
48314872908 0 083447 412 704T:sphlibclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
48927271500 0 080413 408 704T:sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
49022873656 0 093711 412 720T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
49035653750 0 061262 448 704T:sphlib-adaptedgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
49672873860 0 085111 412 712T:sphlibclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
49844052138 0 059646 448 704T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
49851629225 0 050189 424 720T:opt32clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
50298030409 0 042581 424 712T:opt32clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
50472828645 0 040109 424 704T:opt32clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
50480828645 0 040109 424 704T:opt32clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
50568026393 0 036149 416 704T:opt32clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
51727276256 0 085181 408 704T:sphlib-adaptedclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
52997678360 0 088911 412 704T:sphlib-adaptedclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
53026878360 0 088911 412 704T:sphlib-adaptedclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
53097678488 0 098551 412 720T:sphlib-adaptedclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
53110078660 0 089919 412 712T:sphlib-adaptedclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
55143620445 0 028337 444 704T:opt32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
58589264416 0 071982 448 704T:sphlib-adaptedgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
59059620701 0 028969 452 704T:opt32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
59860063344 0 071934 448 704T:sphlib-adaptedgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
61801227320 0 035906 448 704T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
61909624096 0 031654 448 704T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
67901667192 0 075774 448 704T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
68338864996 0 072550 448 704T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
80483628532 0 048583 412 720T:sphlib-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
80575626900 0 037447 412 704T:sphlib-smallclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
80617226900 0 037447 412 704T:sphlib-smallclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
80654825972 0 034885 408 704T:sphlib-smallclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
81313220558 0 027722 440 704T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
81858829056 0 040311 412 712T:sphlib-smallclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
8356245220 0 013822 448 704T:32bit-bytesliced-c-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
8358805760 0 017155 412 712T:32bit-bytesliced-c-smallclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
8383363372 0 014059 412 704T:32bit-bytesliced-c-smallclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
8383403372 0 014059 412 704T:32bit-bytesliced-c-smallclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
9148764428 0 024627 412 720T:32bit-bytesliced-c-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
92500020898 0 028406 448 704T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
14488961432 0 08561 436 704T:32bit-bytesliced-c-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
14752281588 0 09109 444 704T:32bit-bytesliced-c-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
16578002000 0 011057 408 704T:32bit-bytesliced-c-smallclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
18544161852 0 09325 444 704T:32bit-bytesliced-c-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425

Test failure


error 111

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:neon-tableclang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:neon-tableclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:neon-tableclang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:neon-tableclang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:neon-tableclang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:neon-tablegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:neon-tablegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:neon-tablegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:neon-tablegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Compiler output


groestl.c: groestl.c:294:5: error: invalid symbol redefinition
groestl.c:     DEFINE_TABLES;
groestl.c:     ^
groestl.c: ./groestl_tables_asm.h:45:14: note: expanded from macro 'DEFINE_TABLES'
groestl.c:           "\n T0up:                      "\
groestl.c:              ^
groestl.c: <inline asm>:3:2: note: instantiated into assembly here
groestl.c:  T0up:
groestl.c:  ^
groestl.c: groestl.c:294:5: error: invalid symbol redefinition
groestl.c:     DEFINE_TABLES;
groestl.c:     ^
groestl.c: ./groestl_tables_asm.h:302:14: note: expanded from macro 'DEFINE_TABLES'
groestl.c:           "\n T0dn:                      "\
groestl.c:              ^
groestl.c: <inline asm>:260:2: note: instantiated into assembly here
groestl.c:  T0dn:
groestl.c:  ^
groestl.c: groestl.c:294:5: error: invalid symbol redefinition
groestl.c:     DEFINE_TABLES;
groestl.c:     ^
groestl.c: ./groestl_tables_asm.h:559:14: note: expanded from macro 'DEFINE_TABLES'
groestl.c:           "\n T1up:                      "\
groestl.c:              ^
groestl.c: <inline asm>:517:2: note: instantiated into assembly here
groestl.c: ...

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:arm32clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:arm32clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:arm32clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:arm32clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:arm32clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


groestl.c: /tmp/ccK5hxwl.s: Assembler messages:
groestl.c: /tmp/ccK5hxwl.s:3026: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccK5hxwl.s:3852: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccK5hxwl.s:5636: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccK5hxwl.s:7262: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccK5hxwl.s:8248: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccK5hxwl.s:10027: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:arm32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Compiler output


groestl.c: /tmp/ccoNnOB4.s: Assembler messages:
groestl.c: /tmp/ccoNnOB4.s:3069: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccoNnOB4.s:3906: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccoNnOB4.s:5897: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccoNnOB4.s:7523: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccoNnOB4.s:8739: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccoNnOB4.s:10627: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:arm32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Compiler output


groestl.c: /tmp/ccsDTMvh.s: Assembler messages:
groestl.c: /tmp/ccsDTMvh.s:3038: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccsDTMvh.s:3876: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccsDTMvh.s:5654: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccsDTMvh.s:7292: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccsDTMvh.s:8243: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccsDTMvh.s:10022: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:arm32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Compiler output


groestl.c: /tmp/ccMXDQxn.s: Assembler messages:
groestl.c: /tmp/ccMXDQxn.s:3046: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccMXDQxn.s:3872: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccMXDQxn.s:5632: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccMXDQxn.s:7258: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccMXDQxn.s:8214: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'
groestl.c: /tmp/ccMXDQxn.s:9996: Error: thumb conditional instruction should be in IT block -- `addne fp,fp,#2'

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:arm32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Compiler output


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 (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:mmxclang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:mmxclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:mmxclang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:mmxclang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:mmxclang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


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 (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:mmxgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:mmxgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:mmxgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:mmxgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Compiler output


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: /usr/bin/ld: libcrypto_hash_groestl512.a(hash.o): in function `Transform':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: /usr/bin/ld: libcrypto_hash_groestl512.a(hash.o): in function `Update':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: /usr/bin/ld: libcrypto_hash_groestl512.a(hash.o): in function `Final':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: 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 (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:opt64clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:opt64clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:opt64clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:opt64clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


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: /usr/bin/ld: libcrypto_hash_groestl512.a(hash.o): in function `Transform':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: 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 (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:opt64clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


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: /usr/bin/ld: libcrypto_hash_groestl512.a(hash.o): in function `Transform':
try.c: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F512'
try.c: collect2: error: ld returned 1 exit status

Number of similar (implementation,compiler) pairs: 2, namely:
ImplementationCompiler
T:opt64gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:opt64gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Compiler output


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: /usr/bin/ld: libcrypto_hash_groestl512.a(hash.o): in function `Transform':
try.c: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: libcrypto_hash_groestl512.a(hash.o): in function `Update':
try.c: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: libcrypto_hash_groestl512.a(hash.o): in function `Final':
try.c: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F512'
try.c: collect2: error: ld returned 1 exit status

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:opt64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Compiler output


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: /usr/bin/ld: libcrypto_hash_groestl512.a(hash.o): in function `Transform':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: /usr/bin/ld: hash.c:(.text+0x...): undefined reference to `F1024'
try.c: collect2: error: ld returned 1 exit status

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:opt64gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Namespace violations


hash.o memxor T
hash.o mixbytes T
hash.o permutation T
hash.o setmessage T

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:32bit-bytesliced-c-smallclang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:32bit-bytesliced-c-smallclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:32bit-bytesliced-c-smallclang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:32bit-bytesliced-c-smallclang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:32bit-bytesliced-c-smallclang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:32bit-bytesliced-c-smallgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:32bit-bytesliced-c-smallgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:32bit-bytesliced-c-smallgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:32bit-bytesliced-c-smallgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Namespace violations


hash.o F1024 T
hash.o F512 T
hash.o Final T
hash.o Hash T
hash.o Init T
hash.o OutputTransformation T
hash.o PrintHash T
hash.o RND1024P T
hash.o RND1024Q T
hash.o RND512P T
hash.o RND512Q T
hash.o T R
hash.o Transform T
hash.o Update T

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:opt32clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:opt32clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:opt32clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:opt32clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:opt32clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:opt32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:opt32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:opt32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:opt32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Namespace violations


groestl.o sph_groestl224 T
groestl.o sph_groestl224_addbits_and_close T
groestl.o sph_groestl224_close T
groestl.o sph_groestl224_init T
groestl.o sph_groestl256 T
groestl.o sph_groestl256_addbits_and_close T
groestl.o sph_groestl256_close T
groestl.o sph_groestl256_init T
groestl.o sph_groestl384 T
groestl.o sph_groestl384_addbits_and_close T
groestl.o sph_groestl384_close T
groestl.o sph_groestl384_init T
groestl.o sph_groestl512 T
groestl.o sph_groestl512_addbits_and_close T
groestl.o sph_groestl512_close T
groestl.o sph_groestl512_init T

Number of similar (implementation,compiler) pairs: 27, namely:
ImplementationCompiler
T:sphlibclang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlibclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlibclang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlibclang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlibclang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlib-adaptedclang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlib-adaptedclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlib-adaptedclang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlib-adaptedclang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlib-adaptedclang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlib-adaptedgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlib-adaptedgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlib-adaptedgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlib-adaptedgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlib-smallclang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlib-smallclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlib-smallclang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlib-smallclang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlib-smallclang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlib-smallgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlib-smallgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlib-smallgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlib-smallgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)