Implementation notes: armeabi, novenablue, crypto_stream/salsa2012

Computer: novenablue
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20200702
Operation: crypto_stream
Primitive: salsa2012
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
110721612 0 09736 404 784armneon3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
110821594 0 09376 396 784armneon3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
111021600 0 011577 408 784armneon3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
111101628 0 015855 412 800armneon3clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
111101628 0 013105 408 800armneon3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
111101628 0 015871 412 800armneon3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
111131600 0 09968 404 784armneon3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
111381628 0 014159 412 800armneon3clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
111391628 0 014159 412 800armneon3clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
131852920 0 017159 412 800armneon2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
140942904 0 017127 412 800armneon2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
146542208 0 014735 412 800armneon2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
146722208 0 014735 412 800armneon2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
148902288 0 013761 408 800armneon2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
15836976 0 015215 412 800armneonclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
16582960 0 015183 412 800armneonclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
16600960 0 013487 412 800armneonclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
16600960 0 013487 412 800armneonclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
174181056 0 012529 408 800armneonclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
176001500 0 011849 408 784refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
179461336 0 014243 412 800refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
179521336 0 015939 412 800refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
179641336 0 014243 412 800refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
179721332 0 015955 412 800refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
195283200 0 117375 412 808e/regsclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
195463200 0 115679 412 808e/regsclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
195463200 0 115679 412 808e/regsclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
197213212 0 117399 412 808e/regsclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
212582776 0 412741 408 792e/regsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
215142792 0 412757 408 792e/refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
216083316 0 413285 408 792e/mergedgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
218362860 0 115331 412 808e/refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
218542860 0 117027 412 808e/refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
218542860 0 115331 412 808e/refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
219042732 0 411092 404 792e/mergedgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
220182892 0 117075 412 808e/refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
222902524 0 410648 404 792e/mergedgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
223752316 0 410084 396 792e/mergedgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
22661688 0 09428 404 784refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
228723772 0 115193 408 808e/mergedclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
22964596 0 09100 404 784refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
230264100 0 118287 412 808e/mergedclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
237824092 0 116567 412 808e/mergedclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
237824092 0 118263 412 808e/mergedclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
237824092 0 116567 412 808e/mergedclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
24128944 0 012797 408 800refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
24546496 0 08648 396 784refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
255281944 0 410064 404 792e/regsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
258932200 0 410556 404 792e/regsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
259791564 0 49920 404 792e/refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
270002732 0 114153 408 808e/regsclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
283082304 0 113725 408 808e/refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042420200417
293461508 0 49628 404 792e/refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
363351768 0 49536 396 792e/regsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417
415801332 0 49096 396 792e/refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042420200417

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:9:0:
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/4.9/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_salsa2012_armneon_xor':
xor.c: xor.c:21:9: error: unknown type name 'uint32x4_t'
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:21:3: warning: excess elements in scalar initializer
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:21:3: warning: (near initialization for 'abab')
xor.c: xor.c:21:3: warning: excess elements in scalar initializer
xor.c: xor.c:21:3: warning: (near initialization for 'abab')
xor.c: xor.c:21:3: warning: excess elements in scalar initializer
xor.c: xor.c:21:3: warning: (near initialization for 'abab')
xor.c: xor.c:22:9: error: unknown type name 'uint64x1_t'
xor.c: const uint64x1_t nextblock = {1};
xor.c: ^
xor.c: xor.c:23:3: error: unknown type name 'uint32x4_t'
xor.c: uint32x4_t k0k1k2k3 = (uint32x4_t) vld1q_u8((uint8_t *) k);
xor.c: ^
xor.c: xor.c:23:26: error: 'uint32x4_t' undeclared (first use in this function)
xor.c: uint32x4_t k0k1k2k3 = (uint32x4_t) vld1q_u8((uint8_t *) k);
xor.c: ^
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:9:0:
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/4.9/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_salsa2012_armneon2_xor':
xor.c: xor.c:21:9: error: unknown type name 'uint32x4_t'
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:21:3: warning: excess elements in scalar initializer
xor.c: const uint32x4_t abab = {-1,0,-1,0};
xor.c: ^
xor.c: xor.c:21:3: warning: (near initialization for 'abab')
xor.c: xor.c:21:3: warning: excess elements in scalar initializer
xor.c: xor.c:21:3: warning: (near initialization for 'abab')
xor.c: xor.c:21:3: warning: excess elements in scalar initializer
xor.c: xor.c:21:3: warning: (near initialization for 'abab')
xor.c: xor.c:22:9: error: unknown type name 'uint64x1_t'
xor.c: const uint64x1_t nextblock = {1};
xor.c: ^
xor.c: xor.c:23:3: error: unknown type name 'uint32x4_t'
xor.c: uint32x4_t k0k1k2k3 = (uint32x4_t) vld1q_u8((uint8_t *) k);
xor.c: ^
xor.c: xor.c:23:26: error: 'uint32x4_t' undeclared (first use in this function)
xor.c: uint32x4_t k0k1k2k3 = (uint32x4_t) vld1q_u8((uint8_t *) k);
xor.c: ^
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