Implementation notes: armeabi, cubox, crypto_hash/blake256

Computer: cubox
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20161026
Operation: crypto_hash
Primitive: blake256
TimeImplementationCompilerBenchmark dateSUPERCOP version
51161arm11gcc -mcpu=marvell-pj4 -O32016120820161026
51184arm11gcc -funroll-loops -mcpu=marvell-pj4 -O22016120820161026
51232arm11gcc -funroll-loops -mcpu=marvell-pj4 -O32016120820161026
51264arm11gcc -mcpu=marvell-pj4 -O22016120820161026
51496arm11gcc -funroll-loops -mcpu=marvell-pj4 -Os2016120820161026
51496arm11gcc -mcpu=marvell-pj4 -Os2016120820161026
53220arm_thumb2gcc -funroll-loops -mcpu=marvell-pj4 -O32016120820161026
53226arm_thumb2gcc -mcpu=marvell-pj4 -O32016120820161026
53248arm_thumb2gcc -funroll-loops -mcpu=marvell-pj4 -O22016120820161026
53296arm_thumb2gcc -mcpu=marvell-pj4 -O22016120820161026
53512arm_thumb2gcc -mcpu=marvell-pj4 -Os2016120820161026
53516arm_thumb2gcc -funroll-loops -mcpu=marvell-pj4 -Os2016120820161026
56162bswapgcc -funroll-loops -mcpu=marvell-pj4 -Os2016120820161026
57481sphlibgcc -funroll-loops -mcpu=marvell-pj4 -O32016120820161026
57518sphlibgcc -funroll-loops -mcpu=marvell-pj4 -O22016120820161026
57916regsgcc -funroll-loops -mcpu=marvell-pj4 -Os2016120820161026
58478sphlibgcc -mcpu=marvell-pj4 -O22016120820161026
58555sphlibgcc -mcpu=marvell-pj4 -O32016120820161026
59178bswapgcc -mcpu=marvell-pj4 -Os2016120820161026
61588sphlibgcc -funroll-loops -mcpu=marvell-pj4 -Os2016120820161026
61741regsgcc -mcpu=marvell-pj4 -Os2016120820161026
63569bswapgcc -funroll-loops -mcpu=marvell-pj4 -O22016120820161026
63608bswapgcc -funroll-loops -mcpu=marvell-pj4 -O32016120820161026
63851sphlibgcc -mcpu=marvell-pj4 -Os2016120820161026
64984bswapgcc -mcpu=marvell-pj4 -O32016120820161026
65216bswapgcc -mcpu=marvell-pj4 -O22016120820161026
66379regsgcc -funroll-loops -mcpu=marvell-pj4 -O32016120820161026
66435regsgcc -funroll-loops -mcpu=marvell-pj4 -O22016120820161026
68360regsgcc -mcpu=marvell-pj4 -O32016120820161026
68512regsgcc -mcpu=marvell-pj4 -O22016120820161026
85218sphlib-smallgcc -funroll-loops -mcpu=marvell-pj4 -Os2016120820161026
88568sphlib-smallgcc -mcpu=marvell-pj4 -Os2016120820161026
98092refgcc -mcpu=marvell-pj4 -Os2016120820161026
102732refgcc -funroll-loops -mcpu=marvell-pj4 -Os2016120820161026
107348refgcc -funroll-loops -mcpu=marvell-pj4 -O22016120820161026
112074sphlib-smallgcc -funroll-loops -mcpu=marvell-pj4 -O22016120820161026
112494sphlib-smallgcc -funroll-loops -mcpu=marvell-pj4 -O32016120820161026
119160sphlib-smallgcc -mcpu=marvell-pj4 -O32016120820161026
119276refgcc -mcpu=marvell-pj4 -O22016120820161026
120229sphlib-smallgcc -mcpu=marvell-pj4 -O22016120820161026
120417refgcc -funroll-loops -mcpu=marvell-pj4 -O32016120820161026
126324refgcc -mcpu=marvell-pj4 -O32016120820161026

Test failure

Implementation: crypto_hash/blake256/vect128-neon
Compiler: gcc -funroll-loops -mcpu=marvell-pj4 -O2
error 111

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=marvell-pj4 -O2 vect128-neon
gcc -funroll-loops -mcpu=marvell-pj4 -O3 vect128-neon
gcc -funroll-loops -mcpu=marvell-pj4 -Os vect128-neon
gcc -mcpu=marvell-pj4 -O2 vect128-neon
gcc -mcpu=marvell-pj4 -O3 vect128-neon
gcc -mcpu=marvell-pj4 -Os vect128-neon

Compiler output

Implementation: crypto_hash/blake256/vect128-mmxhack
Compiler: gcc -funroll-loops -mcpu=marvell-pj4 -O2
vector.c: In file included from vector.c:7:0:
vector.c: vector.h:968:2: error: #error "I don't know how to vectorize on this architecture."
vector.c: #error "I don't know how to vectorize on this architecture."
vector.c: ^~~~~
vector.c: vector.h:982:3: error: unknown type name 'v16'
vector.c: v16 v16;
vector.c: ^~~
vector.c: vector.h:987:3: error: unknown type name 'v8'
vector.c: v8 v8;
vector.c: ^~
vector.c: ...
vector.c: static const union cv8 v0 = CV(0);
vector.c: ^~
vector.c: In file included from vector.c:140:0:
vector.c: /usr/lib/gcc/armv7l-unknown-linux-gnueabihf/6.2.1/include/mmintrin.h:28:2: error: #error mmintrin.h included without enabling WMMX/WMMX2 instructions (e.g. -march=iwmmxt or -march=iwmmxt2)
vector.c: #error mmintrin.h included without enabling WMMX/WMMX2 instructions (e.g. -march=iwmmxt or -march=iwmmxt2)
vector.c: ^~~~~
vector.c: vector.c:141:23: fatal error: emmintrin.h: No such file or directory
vector.c: #include gt;
vector.c: ^
vector.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=marvell-pj4 -O2 vect128-mmxhack
gcc -funroll-loops -mcpu=marvell-pj4 -O3 vect128-mmxhack
gcc -funroll-loops -mcpu=marvell-pj4 -Os vect128-mmxhack
gcc -mcpu=marvell-pj4 -O2 vect128-mmxhack
gcc -mcpu=marvell-pj4 -O3 vect128-mmxhack
gcc -mcpu=marvell-pj4 -Os vect128-mmxhack

Compiler output

Implementation: crypto_hash/blake256/vect128
Compiler: gcc -funroll-loops -mcpu=marvell-pj4 -O2
vector.c: In file included from vector.c:7:0:
vector.c: vector.h:968:2: error: #error "I don't know how to vectorize on this architecture."
vector.c: #error "I don't know how to vectorize on this architecture."
vector.c: ^~~~~
vector.c: vector.h:982:3: error: unknown type name 'v16'
vector.c: v16 v16;
vector.c: ^~~
vector.c: vector.h:987:3: error: unknown type name 'v8'
vector.c: v8 v8;
vector.c: ^~
vector.c: ...
vector.c: vector.c: In function 'blake256_update':
vector.c: vector.c:887:15: error: 'v32' undeclared (first use in this function)
vector.c: round256((v32*)S->gt;buf, (v32*)S->gt;h,
vector.c: ^~~
vector.c: vector.c:887:19: error: expected expression before ')' token
vector.c: round256((v32*)S->gt;buf, (v32*)S->gt;h,
vector.c: ^
vector.c: vector.c:902:19: error: expected expression before ')' token
vector.c: round256((v32*)data, (v32*)S->gt;h,
vector.c: ^

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=marvell-pj4 -O2 vect128
gcc -funroll-loops -mcpu=marvell-pj4 -O3 vect128
gcc -funroll-loops -mcpu=marvell-pj4 -Os vect128
gcc -mcpu=marvell-pj4 -O2 vect128
gcc -mcpu=marvell-pj4 -O3 vect128
gcc -mcpu=marvell-pj4 -Os vect128