Implementation notes: armeabi, tonido, crypto_stream/chacha12

Computer: tonido
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20170718
Operation: crypto_stream
Primitive: chacha12
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
32388? ? ?? ? ?moon/armv6/32gcc_-march=native_-mtune=xscale_-O32017072120170718
32400? ? ?? ? ?moon/armv6/32gcc_-funroll-loops_-march=native_-mtune=xscale_-O22017072120170718
32424? ? ?? ? ?moon/armv6/32gcc_-march=native_-mtune=xscale_-O22017072120170718
32454? ? ?? ? ?moon/armv6/32gcc_-funroll-loops_-march=native_-mtune=xscale_-Os2017072120170718
32454? ? ?? ? ?moon/armv6/32gcc_-march=native_-mtune=xscale_-Os2017072120170718
32526? ? ?? ? ?moon/armv6/32gcc_-funroll-loops_-march=native_-mtune=xscale_-O32017072120170718
44154? ? ?? ? ?e/regsgcc_-funroll-loops_-march=native_-mtune=xscale_-O32017072120170718
44172? ? ?? ? ?e/refgcc_-funroll-loops_-march=native_-mtune=xscale_-O32017072120170718
45180? ? ?? ? ?e/regsgcc_-march=native_-mtune=xscale_-O32017072120170718
45330? ? ?? ? ?e/refgcc_-march=native_-mtune=xscale_-O32017072120170718
49140? ? ?? ? ?e/mergedgcc_-funroll-loops_-march=native_-mtune=xscale_-Os2017072120170718
52266? ? ?? ? ?e/mergedgcc_-funroll-loops_-march=native_-mtune=xscale_-O32017072120170718
53106? ? ?? ? ?e/mergedgcc_-funroll-loops_-march=native_-mtune=xscale_-O22017072120170718
53196? ? ?? ? ?e/mergedgcc_-march=native_-mtune=xscale_-O32017072120170718
53724? ? ?? ? ?e/mergedgcc_-march=native_-mtune=xscale_-Os2017072120170718
54612? ? ?? ? ?e/mergedgcc_-march=native_-mtune=xscale_-O22017072120170718
57564? ? ?? ? ?e/refgcc_-funroll-loops_-march=native_-mtune=xscale_-O22017072120170718
59880? ? ?? ? ?e/regsgcc_-funroll-loops_-march=native_-mtune=xscale_-O22017072120170718
65772? ? ?? ? ?e/regsgcc_-march=native_-mtune=xscale_-O22017072120170718
66006? ? ?? ? ?e/regsgcc_-funroll-loops_-march=native_-mtune=xscale_-Os2017072120170718
73200? ? ?? ? ?e/regsgcc_-march=native_-mtune=xscale_-Os2017072120170718
77220? ? ?? ? ?e/refgcc_-march=native_-mtune=xscale_-O22017072120170718
77652? ? ?? ? ?e/refgcc_-funroll-loops_-march=native_-mtune=xscale_-Os2017072120170718
84822? ? ?? ? ?e/refgcc_-march=native_-mtune=xscale_-Os2017072120170718

Test failure

Implementation: crypto_stream/chacha12/moon/neon/32
Compiler: gcc -funroll-loops -march=native -mtune=xscale -O2
error 111

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mtune=xscale -O2 moon/neon/32
gcc -funroll-loops -march=native -mtune=xscale -O3 moon/neon/32
gcc -funroll-loops -march=native -mtune=xscale -Os moon/neon/32
gcc -march=native -mtune=xscale -O2 moon/neon/32
gcc -march=native -mtune=xscale -O3 moon/neon/32
gcc -march=native -mtune=xscale -Os moon/neon/32

Compiler output

Implementation: crypto_stream/chacha12/dolbeau/mipsel-msa
Compiler: gcc -funroll-loops -march=native -mtune=xscale -O2
chacha.c: In file included from chacha.c:11:0:
chacha.c: /usr/lib/gcc/armv5tel-unknown-linux-gnueabi/7.1.1/include/arm_neon.h:31:2: error: #error "NEON intrinsics not available with the soft-float ABI. Please use -mfloat-abi=softp or -mfloat-abi=hard"
chacha.c: #error "NEON intrinsics not available with the soft-float ABI. Please use -mfloat-abi=softp or -mfloat-abi=hard"
chacha.c: ^~~~~

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mtune=xscale -O2 dolbeau/mipsel-msa
gcc -funroll-loops -march=native -mtune=xscale -O3 dolbeau/mipsel-msa
gcc -funroll-loops -march=native -mtune=xscale -Os dolbeau/mipsel-msa
gcc -march=native -mtune=xscale -O2 dolbeau/mipsel-msa
gcc -march=native -mtune=xscale -O3 dolbeau/mipsel-msa
gcc -march=native -mtune=xscale -Os dolbeau/mipsel-msa

Compiler output

Implementation: crypto_stream/chacha12/dolbeau/arm-neon
Compiler: gcc -funroll-loops -march=native -mtune=xscale -O2
chacha.c: In file included from chacha.c:11:0:
chacha.c: /usr/lib/gcc/armv5tel-unknown-linux-gnueabi/7.1.1/include/arm_neon.h:31:2: error: #error "NEON intrinsics not available with the soft-float ABI. Please use -mfloat-abi=softp or -mfloat-abi=hard"
chacha.c: #error "NEON intrinsics not available with the soft-float ABI. Please use -mfloat-abi=softp or -mfloat-abi=hard"
chacha.c: ^~~~~
chacha.c: In file included from chacha.c:94:0:
chacha.c: u4.h: In function 'ECRYPT_encrypt_bytes':
chacha.c: u4.h:30:3: error: unknown type name 'uint32x4_t'; did you mean '__uint32_t'?
chacha.c: uint32x4_t x_0 = vdupq_n_u32(x[0]);
chacha.c: ^~~~~~~~~~
chacha.c: __uint32_t
chacha.c: ...
chacha.c: ^~~~~~~
chacha.c: u4.h:156:27: error: expected expression before ')' token
chacha.c: vst1q_u32((uint32_t*)(out+192),t3); ^
chacha.c: u4.h:159:26: note: in expansion of macro 'ONEQUAD_TRANSPOSE'
chacha.c: #define ONEQUAD(a,b,c,d) ONEQUAD_TRANSPOSE(a,b,c,d)
chacha.c: ^~~~~~~~~~~~~~~~~
chacha.c: u4.h:170:5: note: in expansion of macro 'ONEQUAD'
chacha.c: ONEQUAD(12,13,14,15);
chacha.c: ^~~~~~~

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mtune=xscale -O2 dolbeau/arm-neon
gcc -funroll-loops -march=native -mtune=xscale -O3 dolbeau/arm-neon
gcc -funroll-loops -march=native -mtune=xscale -Os dolbeau/arm-neon
gcc -march=native -mtune=xscale -O2 dolbeau/arm-neon
gcc -march=native -mtune=xscale -O3 dolbeau/arm-neon
gcc -march=native -mtune=xscale -Os dolbeau/arm-neon

Compiler output

Implementation: crypto_stream/chacha12/dolbeau/ppc-altivec
Compiler: gcc -funroll-loops -march=native -mtune=xscale -O2
chacha.c: chacha.c:11:10: fatal error: altivec.h: No such file or directory
chacha.c: #include <altivec.h>
chacha.c: ^~~~~~~~~~~
chacha.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mtune=xscale -O2 dolbeau/ppc-altivec
gcc -funroll-loops -march=native -mtune=xscale -O3 dolbeau/ppc-altivec
gcc -funroll-loops -march=native -mtune=xscale -Os dolbeau/ppc-altivec
gcc -march=native -mtune=xscale -O2 dolbeau/ppc-altivec
gcc -march=native -mtune=xscale -O3 dolbeau/ppc-altivec
gcc -march=native -mtune=xscale -Os dolbeau/ppc-altivec

Compiler output

Implementation: crypto_stream/chacha12/amd64-ssse3
Compiler: gcc -funroll-loops -march=native -mtune=xscale -O2
chacha.s: chacha.s: Assembler messages:
chacha.s: chacha.s:22: Error: ARM register expected -- `mov %rsp,%r11'
chacha.s: chacha.s:23: Error: ARM register expected -- `and $31,%r11'
chacha.s: chacha.s:24: Error: ARM register expected -- `add $384,%r11'
chacha.s: chacha.s:25: Error: immediate expression requires a # prefix -- `sub %r11,%rsp'
chacha.s: chacha.s:26: Error: ARM register expected -- `mov %rdi,%r8'
chacha.s: chacha.s:27: Error: ARM register expected -- `mov %rsi,%rsi'
chacha.s: chacha.s:28: Error: ARM register expected -- `mov %rsi,%rdi'
chacha.s: chacha.s:29: Error: ARM register expected -- `mov %rdx,%rdx'
chacha.s: chacha.s:30: Error: ARM register expected -- `cmp $0,%rdx'
chacha.s: ...
chacha.s: chacha.s:1516: Error: bad instruction `movl 0(%rsi),%eax'
chacha.s: chacha.s:1518: Error: bad instruction `movl 4(%rsi),%esi'
chacha.s: chacha.s:1520: Error: bad instruction `movl %r8d,48(%rdi)'
chacha.s: chacha.s:1522: Error: bad instruction `movl %r9d,52(%rdi)'
chacha.s: chacha.s:1524: Error: bad instruction `movl %eax,56(%rdi)'
chacha.s: chacha.s:1526: Error: bad instruction `movl %esi,60(%rdi)'
chacha.s: chacha.s:1528: Error: immediate expression requires a # prefix -- `add %r11,%rsp'
chacha.s: chacha.s:1529: Error: ARM register expected -- `mov %rdi,%rax'
chacha.s: chacha.s:1530: Error: ARM register expected -- `mov %rsi,%rdx'
chacha.s: chacha.s:1531: Error: bad instruction `ret'

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mtune=xscale -O2 amd64-ssse3
gcc -funroll-loops -march=native -mtune=xscale -O3 amd64-ssse3
gcc -funroll-loops -march=native -mtune=xscale -Os amd64-ssse3
gcc -march=native -mtune=xscale -O2 amd64-ssse3
gcc -march=native -mtune=xscale -O3 amd64-ssse3
gcc -march=native -mtune=xscale -Os amd64-ssse3

Compiler output

Implementation: crypto_stream/chacha12/goll_gueron
Compiler: gcc -funroll-loops -march=native -mtune=xscale -O2
stream.c: stream.c:11:10: fatal error: immintrin.h: No such file or directory
stream.c: #include <immintrin.h>
stream.c: ^~~~~~~~~~~~~
stream.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mtune=xscale -O2 goll_gueron
gcc -funroll-loops -march=native -mtune=xscale -O3 goll_gueron
gcc -funroll-loops -march=native -mtune=xscale -Os goll_gueron
gcc -march=native -mtune=xscale -O2 goll_gueron
gcc -march=native -mtune=xscale -O3 goll_gueron
gcc -march=native -mtune=xscale -Os goll_gueron

Compiler output

Implementation: crypto_stream/chacha12/krovetz/vec128
Compiler: gcc -funroll-loops -march=native -mtune=xscale -O2
stream.c: stream.c:80:2: error: #error -- Implementation supports only machines with neon, altivec or SSE2
stream.c: #error -- Implementation supports only machines with neon, altivec or SSE2
stream.c: ^~~~~
stream.c: stream.c: In function 'crypto_stream_chacha12_krovetz_vec128_xor':
stream.c: stream.c:151:14: warning: implicit declaration of function 'NONCE' [-Wimplicit-function-declaration]
stream.c: vec s3 = NONCE(np);
stream.c: ^~~~~
stream.c: stream.c:151:14: error: incompatible types when initializing type 'vec {aka __vector(4) unsigned int}' using type 'int'
stream.c: stream.c:91:19: error: 'VBPI' undeclared (first use in this function); did you mean 'BPI'?
stream.c: #define BPI (VBPI + GPR_TOO) /* Blocks computed per loop iteration */
stream.c: ...
stream.c: ^
stream.c: stream.c:248:13: note: in expansion of macro 'DQROUND_VECTORS'
stream.c: DQROUND_VECTORS(v0,v1,v2,v3)
stream.c: ^~~~~~~~~~~~~~~
stream.c: stream.c:103:35: error: incompatible types when assigning to type 'vec {aka __vector(4) unsigned int}' from type 'int'
stream.c: b = ROTV3(b); c = ROTV2(c); d = ROTV1(d);
stream.c: ^
stream.c: stream.c:248:13: note: in expansion of macro 'DQROUND_VECTORS'
stream.c: DQROUND_VECTORS(v0,v1,v2,v3)
stream.c: ^~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mtune=xscale -O2 krovetz/vec128
gcc -funroll-loops -march=native -mtune=xscale -O3 krovetz/vec128
gcc -funroll-loops -march=native -mtune=xscale -Os krovetz/vec128
gcc -march=native -mtune=xscale -O2 krovetz/vec128
gcc -march=native -mtune=xscale -O3 krovetz/vec128
gcc -march=native -mtune=xscale -Os krovetz/vec128

Compiler output

Implementation: crypto_stream/chacha12/krovetz/avx2
Compiler: gcc -funroll-loops -march=native -mtune=xscale -O2
stream.c: stream.c:8:10: fatal error: immintrin.h: No such file or directory
stream.c: #include <immintrin.h>
stream.c: ^~~~~~~~~~~~~
stream.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mtune=xscale -O2 krovetz/avx2
gcc -funroll-loops -march=native -mtune=xscale -O3 krovetz/avx2
gcc -funroll-loops -march=native -mtune=xscale -Os krovetz/avx2
gcc -march=native -mtune=xscale -O2 krovetz/avx2
gcc -march=native -mtune=xscale -O3 krovetz/avx2
gcc -march=native -mtune=xscale -Os krovetz/avx2