Implementation notes: armeabi, berry2, crypto_stream/salsa2012

Computer: berry2
Microarchitecture: armeabi; Cortex-A7 (410fc075)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20221122
Operation: crypto_stream
Primitive: salsa2012
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
141911596 0 011923 388 784armneon3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
141961596 0 013884 392 784armneon3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
141961628 0 012015 388 784armneon3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
143341596 0 011150 380 784armneon3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
143791604 0 023616 384 792armneon3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011820210114
191952780 0 415064 392 792e/refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
192012780 0 415064 392 792e/regsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
215283512 0 415800 392 792e/mergedgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
215772788 0 413115 388 792e/mergedgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
235081516 0 023895 384 792refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011820210114
235221868 0 014528 392 784refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
249933068 0 125006 384 800e/regsclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011820210114
255581976 0 412299 388 792e/regsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
273042492 0 412046 380 784e/mergedgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
2832817732 1184 01052912 73769 12048T:cryptoppg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032420210323
284103476 0 413863 388 792e/mergedgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
2847917125 1184 01050020 73769 12048T:cryptoppg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032420210323
2848316228 1184 01049175 73761 12048T:cryptoppg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032420210323
288326399 1440 01040318 74085 12048T:cryptoppg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032420210323
289923884 0 125824 384 800e/mergedclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011820210114
30984904 0 011603 388 784refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
31200832 0 010761 380 784refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
317023080 0 125017 384 800e/refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021011820210114
323622732 0 413115 388 792e/regsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
32605904 0 011663 388 784refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
332561948 0 412271 388 792e/refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
366922196 0 412579 388 792e/refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
368231816 0 411368 380 784e/regsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114
419401640 0 411191 380 784e/refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021011820210114

Compiler output

Implementation: armneon
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
xor.c: In file included from xor.c:9:
xor.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/arm_neon.h:28:2: error: "NEON support not enabled"
xor.c: #error "NEON support not enabled"
xor.c: ^
xor.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE armneon armneon2

Compiler output

Implementation: armneon
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
xor.c: In file included from xor.c:9:
xor.c: xor.c: In function 'crypto_stream_salsa2012_armneon_constbranchindex_xor':
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:7192:1: error: inlining failed in call to always_inline 'vcombine_u32': target specific option mismatch
xor.c: vcombine_u32 (uint32x2_t __a, uint32x2_t __b)
xor.c: ^~~~~~~~~~~~
xor.c: xor.c:40:23: note: called from here
xor.c: uint32x4_t start1 = vcombine_u32(k5k0,n0k4);
xor.c: ^~~~~~~~~~~~~~~~~~~~~~~
xor.c: In file included from xor.c:9:
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:8779:1: error: inlining failed in call to always_inline 'vext_u32': target specific option mismatch
xor.c: vext_u32 (uint32x2_t __a, uint32x2_t __b, const int __c)
xor.c: ^~~~~~~~
xor.c: xor.c:38:21: note: called from here
xor.c: uint32x2_t k7k2 = vext_u32(k6k7,k2k3,1);
xor.c: ^~~~~~~~~~~~~~~~~~~~~
xor.c: In file included from xor.c:9:
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:8779:1: error: inlining failed in call to always_inline 'vext_u32': target specific option mismatch
xor.c: vext_u32 (uint32x2_t __a, uint32x2_t __b, const int __c)
xor.c: ^~~~~~~~
xor.c: xor.c:36:21: note: called from here
xor.c: uint32x2_t k1n1 = vext_u32(k0k1,n1n0,1);
xor.c: ^~~~~~~~~~~~~~~~~~~~~
xor.c: In file included from xor.c:9:
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:8779:1: error: inlining failed in call to always_inline 'vext_u32': target specific option mismatch
xor.c: vext_u32 (uint32x2_t __a, uint32x2_t __b, const int __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: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
xor.c: In file included from xor.c:9:
xor.c: xor.c: In function 'crypto_stream_salsa2012_armneon2_constbranchindex_xor':
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:7192:1: error: inlining failed in call to always_inline 'vcombine_u32': target specific option mismatch
xor.c: vcombine_u32 (uint32x2_t __a, uint32x2_t __b)
xor.c: ^~~~~~~~~~~~
xor.c: xor.c:40:23: note: called from here
xor.c: uint32x4_t start1 = vcombine_u32(k5k0,n0k4);
xor.c: ^~~~~~~~~~~~~~~~~~~~~~~
xor.c: In file included from xor.c:9:
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:8779:1: error: inlining failed in call to always_inline 'vext_u32': target specific option mismatch
xor.c: vext_u32 (uint32x2_t __a, uint32x2_t __b, const int __c)
xor.c: ^~~~~~~~
xor.c: xor.c:38:21: note: called from here
xor.c: uint32x2_t k7k2 = vext_u32(k6k7,k2k3,1);
xor.c: ^~~~~~~~~~~~~~~~~~~~~
xor.c: In file included from xor.c:9:
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:8779:1: error: inlining failed in call to always_inline 'vext_u32': target specific option mismatch
xor.c: vext_u32 (uint32x2_t __a, uint32x2_t __b, const int __c)
xor.c: ^~~~~~~~
xor.c: xor.c:36:21: note: called from here
xor.c: uint32x2_t k1n1 = vext_u32(k0k1,n1n0,1);
xor.c: ^~~~~~~~~~~~~~~~~~~~~
xor.c: In file included from xor.c:9:
xor.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:8779:1: error: inlining failed in call to always_inline 'vext_u32': target specific option mismatch
xor.c: vext_u32 (uint32x2_t __a, uint32x2_t __b, const int __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