Implementation notes: armeabi, artik, crypto_stream/salsa20

Computer: artik
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20191221
Operation: crypto_stream
Primitive: salsa20
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
145613500 0 016155 440 848armneon6clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
145683500 0 016155 440 848armneon6clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
145893462 0 011966 412 848armneon6gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
146253468 0 014659 424 848armneon6gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
146503500 0 017147 440 880armneon6clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
146633468 0 012502 420 848armneon6gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
146633480 0 012274 420 848armneon6gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
158683500 0 017131 440 880armneon6clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
172691628 0 014283 440 848armneon3clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
172941628 0 014283 440 848armneon3clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
173041628 0 013201 436 848armneon3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
173141600 0 012779 424 848armneon3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
173331600 0 010630 420 848armneon3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
173391612 0 010402 420 848armneon3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
173591628 0 015259 440 880armneon3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
173781628 0 015259 440 880armneon3clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
175751594 0 010086 412 848armneon3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
200843500 0 015081 436 848armneon6clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
212242212 0 015843 440 880armneon2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
219462220 0 014867 440 848armneon2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
219582220 0 014867 440 848armneon2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
219752220 0 015843 440 880armneon2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
220622116 0 013689 436 848armneon2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
25450948 0 014575 440 880armneonclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
25983948 0 014567 440 880armneonclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
26020948 0 013591 440 848armneonclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
26047948 0 013591 440 848armneonclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
26435932 0 012501 436 848armneonclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
276471632 0 013187 424 848refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
276841172 0 015179 440 880refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
277121172 0 014195 440 848refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
277221172 0 014195 440 848refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
277631172 0 015171 440 880refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
279612608 0 413775 424 856e/mergedgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
283652120 0 411138 420 856e/mergedgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
288503064 0 116639 440 880e/regsclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
301272744 0 116319 440 880e/refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
302062712 0 413875 424 856e/refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
304732748 0 116319 440 880e/refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
305362748 0 115343 440 848e/refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
306262748 0 115343 440 848e/refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
308713072 0 115663 440 848e/regsclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
308723072 0 115663 440 848e/regsclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
311433072 0 116639 440 880e/regsclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
314272748 0 413919 424 856e/regsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
314532580 0 411370 420 856e/mergedgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
314994008 0 117587 440 880e/mergedclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
326053644 0 115161 436 848e/mergedclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
33568744 0 010142 420 848refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
33745696 0 09870 420 848refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
33867792 0 012737 436 848refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
339043944 0 116539 440 848e/mergedclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
339703944 0 117515 440 880e/mergedclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
343013944 0 116539 440 848e/mergedclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
350551784 0 410266 412 848e/mergedgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
354322100 0 411114 420 856e/regsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
356401448 0 410462 420 856e/refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
362672596 0 114109 436 848e/regsclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
369392104 0 410898 420 856e/regsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
379582112 0 113629 436 848e/refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010620191221
395821616 0 410406 420 856e/refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
44204616 0 09474 412 848refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
535521656 0 410134 412 848e/regsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221
606781188 0 49662 412 848e/refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010620191221

Compiler output

Implementation: armneon
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
xor.c: In file included from xor.c:8:0:
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/5/include/arm_neon.h:31:2: error: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
xor.c: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
xor.c: ^
xor.c: xor.c: In function 'crypto_stream_salsa20_armneon_xor':
xor.c: xor.c:20:9: error: unknown type name 'uint32x4_t'
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:20:31: warning: excess elements in scalar initializer
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:20:31: note: (near initialization for 'abab')
xor.c: xor.c:20:33: warning: excess elements in scalar initializer
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:20:33: note: (near initialization for 'abab')
xor.c: xor.c:20:36: warning: excess elements in scalar initializer
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:20:36: note: (near initialization for 'abab')
xor.c: xor.c:21:9: error: unknown type name 'uint64x1_t'
xor.c: const uint64x1_t nextblock = {1};
xor.c: ^
xor.c: xor.c:22:3: error: unknown type name 'uint32x4_t'
xor.c: uint32x4_t k0k1k2k3 = (uint32x4_t) vld1q_u8((uint8_t *) k);
xor.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE armneon
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE armneon
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE armneon
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE armneon

Compiler output

Implementation: armneon2
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
xor.c: In file included from xor.c:8:0:
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/5/include/arm_neon.h:31:2: error: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
xor.c: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
xor.c: ^
xor.c: xor.c: In function 'crypto_stream_salsa20_armneon2_xor':
xor.c: xor.c:20:9: error: unknown type name 'uint32x4_t'
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:20:31: warning: excess elements in scalar initializer
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:20:31: note: (near initialization for 'abab')
xor.c: xor.c:20:33: warning: excess elements in scalar initializer
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:20:33: note: (near initialization for 'abab')
xor.c: xor.c:20:36: warning: excess elements in scalar initializer
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:20:36: note: (near initialization for 'abab')
xor.c: xor.c:21:9: error: unknown type name 'uint64x1_t'
xor.c: const uint64x1_t nextblock = {1};
xor.c: ^
xor.c: xor.c:22:3: error: unknown type name 'uint32x4_t'
xor.c: uint32x4_t k0k1k2k3 = (uint32x4_t) vld1q_u8((uint8_t *) k);
xor.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE armneon2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE armneon2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE armneon2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE armneon2