Implementation notes: armeabi, c1, crypto_hash/groestl256

Computer: c1
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20161026
Operation: crypto_hash
Primitive: groestl256
TimeImplementationCompilerBenchmark dateSUPERCOP version
177277neon-bitslicegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
177508neon-bitslicegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
177979neon-bitslicegcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
179339neon-bitslicegcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
184761neon-bitslicegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
194547neon-tablegcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
199143neon-tablegcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
199399neon-tablegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
207425neon-bitslicegcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
207709neon-tablegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
219877arm11gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
223848arm11gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
227235arm32gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
228258neon-tablegcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
229501arm11gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
241879neon-tablegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
253787arm11gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
254101arm32gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
258367arm11gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
259623arm32gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
259967arm11gcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
305430opt32gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
305435opt32gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
316653opt32gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
319284opt32gcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
342469sphlib-smallgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
373703sphlibgcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
383789sphlibgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
391071sphlib-adaptedgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
402417sphlib-smallgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
40986432bit-2ktablegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
410757sphlib-smallgcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
411400sphlib-smallgcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
412637sphlib-adaptedgcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
413485sphlib-smallgcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
43485232bit-2ktablegcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
43574432bit-2ktablegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
453564sphlib-smallgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
47794232bit-2ktablegcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
502990sphlib-adaptedgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
524980opt32gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
526946opt32gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
554792sphlib-adaptedgcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
56086932bit-2ktablegcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
59474232bit-bytesliced-c-fastgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
598753sphlib-adaptedgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
602076sphlibgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
606587sphlibgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
61846532bit-bytesliced-c-fastgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
61860032bit-2ktablegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
619674sphlibgcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
658654sphlib-adaptedgcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
660464sphlibgcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
69067832bit-bytesliced-c-fastgcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
714574opt64gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
74330932bit-bytesliced-c-smallgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
76444632bit-bytesliced-c-fastgcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
8038268bit_cgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
82393532bit-bytesliced-c-smallgcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
82679432bit-bytesliced-c-fastgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
8273618bit_cgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
829885opt64gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
85440032bit-bytesliced-c-smallgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
8713178bit_cgcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
8788638bit_cgcc -mcpu=native -mfpu=neon-vfpv4 -O32016121020161026
88617232bit-bytesliced-c-fastgcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
9067098bit_cgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
9200998bit_cgcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
1342889opt64gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
136751932bit-bytesliced-c-smallgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
137053432bit-bytesliced-c-smallgcc -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026
138485732bit-bytesliced-c-smallgcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121020161026
1897707opt64gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121020161026

Checksum failure

Implementation: crypto_hash/groestl256/arm32
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
f079b87636261cf3c9ea6c0c0fa5429569bc7bd103f8d0f0bb23bd4ba5d49053
Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2 arm32
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3 arm32
gcc -mcpu=native -mfpu=neon-vfpv4 -O3 arm32

Test failure

Implementation: crypto_hash/groestl256/thumb-asm-small
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
error 142
sh: line 1: 10696 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2 thumb-asm-small

Test failure

Implementation: crypto_hash/groestl256/thumb-asm-fast
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
error 142
sh: line 1: 9672 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2 thumb-asm-fast

Test failure

Implementation: crypto_hash/groestl256/thumb-asm-fast
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3
error 111

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3 thumb-asm-fast thumb-asm-small
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os thumb-asm-small
gcc -mcpu=native -mfpu=neon-vfpv4 -O2 thumb-asm-fast thumb-asm-small
gcc -mcpu=native -mfpu=neon-vfpv4 -O3 thumb-asm-fast thumb-asm-small
gcc -mcpu=native -mfpu=neon-vfpv4 -Os thumb-asm-small

Test failure

Implementation: crypto_hash/groestl256/thumb-asm-fast
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os
error 142
sh: line 1: 9844 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os thumb-asm-fast

Test failure

Implementation: crypto_hash/groestl256/thumb-asm-fast
Compiler: gcc -mcpu=native -mfpu=neon-vfpv4 -Os
error 142
sh: line 1: 9287 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -mcpu=native -mfpu=neon-vfpv4 -Os thumb-asm-fast

Compiler output

Implementation: crypto_hash/groestl256/vperm-intr
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
hash.c: In file included from hash.c:34:0:
hash.c: groestl-intr-vperm.h:13:23: fatal error: tmmintrin.h: No such file or directory
hash.c: #include gt;
hash.c: ^
hash.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2 vperm-intr
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3 vperm-intr
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os vperm-intr
gcc -mcpu=native -mfpu=neon-vfpv4 -O2 vperm-intr
gcc -mcpu=native -mfpu=neon-vfpv4 -O3 vperm-intr
gcc -mcpu=native -mfpu=neon-vfpv4 -Os vperm-intr

Compiler output

Implementation: crypto_hash/groestl256/neon-bitslice
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
hash.c: hash.c: In function 'crypto_hash_groestl256_neon_bitslice':
hash.c: hash.c:40:12: warning: iteration 64 invokes undefined behavior [-Waggressive-loop-optimizations]
hash.c: ctx[i] = 0;
hash.c: ~~~~~~~^~~
hash.c: hash.c:39:3: note: within this loop
hash.c: for(i=0;i hash.c: ^~~

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2 neon-bitslice
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3 neon-bitslice
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os neon-bitslice
gcc -mcpu=native -mfpu=neon-vfpv4 -O2 neon-bitslice
gcc -mcpu=native -mfpu=neon-vfpv4 -O3 neon-bitslice
gcc -mcpu=native -mfpu=neon-vfpv4 -Os neon-bitslice

Compiler output

Implementation: crypto_hash/groestl256/neon-vperm
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
hash.c: hash.c: In function 'crypto_hash_groestl256_neon_vperm':
hash.c: hash.c:38:12: warning: iteration 64 invokes undefined behavior [-Waggressive-loop-optimizations]
hash.c: ctx[i] = 0;
hash.c: ~~~~~~~^~~
hash.c: hash.c:37:3: note: within this loop
hash.c: for(i=0;i hash.c: ^~~
vperm-neon.S: vperm-neon.S: Assembler messages:
vperm-neon.S: vperm-neon.S:911: Error: expected symbol name
vperm-neon.S: vperm-neon.S:922: Error: expected symbol name

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2 neon-vperm
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3 neon-vperm
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os neon-vperm
gcc -mcpu=native -mfpu=neon-vfpv4 -O2 neon-vperm
gcc -mcpu=native -mfpu=neon-vfpv4 -O3 neon-vperm
gcc -mcpu=native -mfpu=neon-vfpv4 -Os neon-vperm

Compiler output

Implementation: crypto_hash/groestl256/opt64
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
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: 5, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2 opt64
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3 opt64
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os opt64
gcc -mcpu=native -mfpu=neon-vfpv4 -O2 opt64
gcc -mcpu=native -mfpu=neon-vfpv4 -Os opt64

Compiler output

Implementation: crypto_hash/groestl256/opt64
Compiler: gcc -mcpu=native -mfpu=neon-vfpv4 -O3
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: ^
hash.c: gcc: internal compiler error: Killed (program cc1)
hash.c: Please submit a full bug report,
hash.c: with preprocessed source if appropriate.
hash.c: See gt; for instructions.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -mcpu=native -mfpu=neon-vfpv4 -O3 opt64