Implementation notes: armeabi, berry2, crypto_stream/salsa208

Computer: berry2
Microarchitecture: armeabi; Cortex-A7 (410fc075)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_stream
Primitive: salsa208
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
104641596 0 011919 388 784armneon3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
104681596 0 013880 392 784armneon3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
104681628 0 012011 388 784armneon3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
104701596 0 011149 380 784armneon3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
104781604 0 023647 384 792armneon3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520240107
146182784 0 415068 392 792e/refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
146342784 0 415068 392 792e/regsgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
172721516 0 023926 384 792refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520240107
173681868 0 014528 392 784refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
174043512 0 415796 392 792e/mergedgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
174542796 0 413119 388 792e/mergedgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
193103068 0 125037 384 800e/regsclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520240107
200163080 0 125048 384 800e/refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520240107
208102492 0 412045 380 784e/mergedgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
213521972 0 412295 388 792e/regsgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
230683476 0 413859 388 792e/mergedgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
2352017125 1184 01050020 73769 12048T:cryptoppg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
2359017732 1184 01052912 73769 12048T:cryptoppg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
237223884 0 125855 384 800e/mergedclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024012520240107
2389216228 1184 01049175 73761 12048T:cryptoppg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
240856399 1440 01040318 74085 12048T:cryptoppg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
24836904 0 011603 388 784refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
25052832 0 010760 380 784refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
26432904 0 011663 388 784refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
271482724 0 413107 388 792e/regsgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
289341976 0 412299 388 792e/refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
294181816 0 411367 380 784e/regsgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
311282216 0 412599 388 792e/refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107
366541640 0 411190 380 784e/refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024012520240107

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_salsa208_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_salsa208_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