Implementation notes: armeabi, pi2, crypto_hash/echo512

Computer: pi2
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20160731
Operation: crypto_hash
Primitive: echo512
TimeImplementationCompilerBenchmark dateSUPERCOP version
363629sphlibgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731
365722sphlibgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
403494sphlib-smallgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
429316generic/opt32gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731
429468generic/opt32clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
434699generic/opt32gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
489854powerpc/pp32cv2gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731
492605sphlib-smallgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
493633sphlib-smallclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
508010sphlib-smallgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731
513506powerpc/pp32cv2gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
517040powerpc/pp32cv2gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
545402generic/opt32gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
560018powerpc/pp32cv2clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
564993sphlibgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
590768sphlibgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731
591671generic/opt32gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731
609491sphlib-smallgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731
632496powerpc/pp32cv1gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731
668855sphlibclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
669181generic/opt64gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
680203powerpc/pp32cv2gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731
692398powerpc/pp32cv1gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
700961generic/opt64clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
709714generic/opt64gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016080520160731
713118powerpc/pp32cv1clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016080520160731
737727powerpc/pp32cv1gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016080520160731
846820generic/opt64gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731
912546powerpc/pp32cv1gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016080520160731
918612generic/opt64gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016080520160731

Compiler output

Implementation: crypto_hash/echo512/generic/opt64
Compiler: clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
echo64.c: echo64.c:501:29: warning: passing 'const unsigned char *' to parameter of type 'BitSequence *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
echo64.c: if (Hash(CRYPTO_BYTES * 8,in,inlen * 8,out) == SUCCESS) return 0;
echo64.c: ^~
echo64.c: echo64.c:488:46: note: passing argument to parameter 'data' here
echo64.c: HashReturn Hash(int hashbitlen, BitSequence *data, DataLength databitlen, BitSequence *hashval)
echo64.c: ^
echo64.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments generic/opt64

Compiler output

Implementation: crypto_hash/echo512/ccalik/bitsliced
Compiler: clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
hash.c: In file included from hash.c:18:
hash.c: In file included from /usr/bin/../lib/clang/3.8.1/include/tmmintrin.h:27:
hash.c: In file included from /usr/bin/../lib/clang/3.8.1/include/pmmintrin.h:27:
hash.c: In file included from /usr/bin/../lib/clang/3.8.1/include/emmintrin.h:27:
hash.c: In file included from /usr/bin/../lib/clang/3.8.1/include/xmmintrin.h:27:
hash.c: /usr/bin/../lib/clang/3.8.1/include/mmintrin.h:45:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
hash.c: return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
hash.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: /usr/bin/../lib/clang/3.8.1/include/mmintrin.h:69:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
hash.c: return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
hash.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: /usr/bin/../lib/clang/3.8.1/include/mmintrin.h:75:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
hash.c: return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
hash.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: /usr/bin/../lib/clang/3.8.1/include/mmintrin.h:81:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
hash.c: return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
hash.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: /usr/bin/../lib/clang/3.8.1/include/mmintrin.h:87:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
hash.c: return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
hash.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: /usr/bin/../lib/clang/3.8.1/include/mmintrin.h:93:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
hash.c: return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
hash.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: /usr/bin/../lib/clang/3.8.1/include/mmintrin.h:99:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
hash.c: return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2);
hash.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/bitsliced

Compiler output

Implementation: crypto_hash/echo512/generic/opt64
Compiler: gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv
echo64.c: echo64.c: In function 'crypto_hash_echo512_generic_opt64':
echo64.c: echo64.c:501:29: warning: passing argument 2 of 'Hash' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
echo64.c: if (Hash(CRYPTO_BYTES * 8,in,inlen * 8,out) == SUCCESS) return 0;
echo64.c: ^~
echo64.c: echo64.c:488:12: note: expected 'BitSequence * {aka unsigned char *}' but argument is of type 'const unsigned char *'
echo64.c: HashReturn Hash(int hashbitlen, BitSequence *data, DataLength databitlen, BitSequence *hashval)
echo64.c: ^~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv generic/opt64
gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv generic/opt64
gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv generic/opt64
gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv generic/opt64

Compiler output

Implementation: crypto_hash/echo512/ccalik/bitsliced
Compiler: gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c:18: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: 4, namely:
CompilerImplementations
gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv ccalik/bitsliced
gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv ccalik/bitsliced
gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv ccalik/bitsliced
gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv ccalik/bitsliced