Implementation notes: armeabi, cubie2, crypto_hash/keccakc448

Computer: cubie2
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20161026
Operation: crypto_hash
Primitive: keccakc448
TimeImplementationCompilerBenchmark dateSUPERCOP version
127968opt32bi-rvku2gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
135621opt32bi-rvku2gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
137490opt32bi-s2lcu4gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
146885opt32biT-s2lcu4gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
151253opt32bi-s2lcu4gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
160170opt32biT-s2lcu4gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
195542opt32bi-s2lcu4gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
196200opt32bi-rvku2gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
196206opt32bi-rvku2gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
197796opt32bi-rvku2gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
199124opt32bi-s2lcu4gcc -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
202268opt64u6gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
202553opt64lcu6gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
203179opt32bi-rvku2gcc -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
204036opt32bi-s2lcu4gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
205737opt32biT-s2lcu4gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
206643opt32bi-s2lcu4gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
209252opt32biT-s2lcu4gcc -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
212696opt64u6gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
213148opt32biT-s2lcu4gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
213491opt64lcu6gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
216600opt32biT-s2lcu4gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
222186simplegcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
222360simplegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
235440inplacegcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
236205inplacegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
253146compactgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
254160compactgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
262497opt64lcu24gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
264359opt64lcu24gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
265821compactgcc -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
284969simplegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
289656simplegcc -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
293976opt64u6gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
295332simplegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
296198opt64u6gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
297167inplacegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
297906inplacegcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
299898opt64lcu6gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
300669inplacegcc -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
301913opt64lcu6gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
304368simplegcc -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
307863inplacegcc -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
309405opt64lcu6gcc -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
317701opt64lcu6gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
330058opt64u6gcc -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
331302opt64u6gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
376932compactgcc -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
425577compactgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
430899compactgcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
492184opt64lcu24gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
538756opt64lcu24gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
545345opt64lcu24gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
551586opt64lcu24gcc -mcpu=native -mfpu=neon-vfpv4 -O32016121520161026
627290compact8gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
645256compact8gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121520161026
702831compact8gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026
723198compact8gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121520161026

Test failure

Implementation: crypto_hash/keccakc448/inplace32bi-armv7a
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
error 111
crypto_hash does not handle m=h overlap

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

Test failure

Implementation: crypto_hash/keccakc448/compact8
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3
error 111

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3 compact8
gcc -mcpu=native -mfpu=neon-vfpv4 -O3 compact8

Compiler output

Implementation: crypto_hash/keccakc448/inplace32bi
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
Keccak-inplace32BI.c: Keccak-inplace32BI.c: In function 'crypto_hash_keccakc448_inplace32bi':
Keccak-inplace32BI.c: Keccak-inplace32BI.c:73:6: error: #error "The output size must be a multiple of the lane size in this simple implementation."
Keccak-inplace32BI.c: #error "The output size must be a multiple of the lane size in this simple implementation."
Keccak-inplace32BI.c: ^~~~~

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

Compiler output

Implementation: crypto_hash/keccakc448/simple32bi
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
Keccak-simple32BI.c: Keccak-simple32BI.c: In function 'crypto_hash_keccakc448_simple32bi':
Keccak-simple32BI.c: Keccak-simple32BI.c:73:6: error: #error "The output size must be a multiple of the lane size in this simple implementation."
Keccak-simple32BI.c: #error "The output size must be a multiple of the lane size in this simple implementation."
Keccak-simple32BI.c: ^~~~~

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

Compiler output

Implementation: crypto_hash/keccakc448/inplace32bi-armv6m
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
try.c: /usr/bin/ld: error: crypto_hash_keccakc448.a(Keccak-inplace32BI-armgcc-ARMv6M.o): Conflicting architecture profiles M/A
try.c: /usr/bin/ld: failed to merge target specific data of file crypto_hash_keccakc448.a(Keccak-inplace32BI-armgcc-ARMv6M.o)
try.c: collect2: error: ld returned 1 exit status

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