Implementation notes: armeabi, bblack, crypto_core/salsa208

Computer: bblack
Microarchitecture: armeabi; Cortex-A8 (413fc082)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_core
Primitive: salsa208
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1792380 0 012431 408 712armneon2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
1792380 0 021143 408 728armneon2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
1792380 0 08421 436 712armneon2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121820231212
1792380 0 07897 428 712armneon2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121820231212
1832380 0 012431 408 712armneon2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
1832380 0 09502 440 712armneon2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121820231212
1832380 0 08249 436 712armneon2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121820231212
1836876 0 021631 408 728armneonclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
1872380 0 012391 408 720armneon2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
1872380 0 010765 404 712armneon2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
18761052 0 09069 436 712refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121820231212
19161052 0 010150 440 712refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121820231212
19601228 0 021979 408 728refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
19961228 0 013227 408 720refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
19961228 0 011601 404 712refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
20001228 0 013267 408 712refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
20001228 0 013267 408 712refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121820231212
2204802 0 08297 428 712refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121820231212
2332820 0 08685 436 712refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121820231212

Compiler output

Implementation: armneon
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
core.c: In file included from core.c:9:
core.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/arm_neon.h:28:2: error: "NEON support not enabled"
core.c: #error "NEON support not enabled"
core.c: ^
core.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/arm_neon.h:48:24: error: 'neon_vector_type' attribute is not supported for this target
core.c: typedef __attribute__((neon_vector_type(8))) int8_t int8x8_t;
core.c: ^
core.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/arm_neon.h:49:24: error: 'neon_vector_type' attribute is not supported for this target
core.c: typedef __attribute__((neon_vector_type(16))) int8_t int8x16_t;
core.c: ^
core.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/arm_neon.h:50:24: error: 'neon_vector_type' attribute is not supported for this target
core.c: typedef __attribute__((neon_vector_type(4))) int16_t int16x4_t;
core.c: ^
core.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/arm_neon.h:51:24: error: 'neon_vector_type' attribute is not supported for this target
core.c: typedef __attribute__((neon_vector_type(8))) int16_t int16x8_t;
core.c: ^
core.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/arm_neon.h:52:24: error: 'neon_vector_type' attribute is not supported for this target
core.c: typedef __attribute__((neon_vector_type(2))) int32_t int32x2_t;
core.c: ^
core.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/arm_neon.h:53:24: error: 'neon_vector_type' attribute is not supported for this target
core.c: typedef __attribute__((neon_vector_type(4))) int32_t int32x4_t;
core.c: ^
core.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/arm_neon.h:54:24: error: 'neon_vector_type' attribute is not supported for this target
core.c: typedef __attribute__((neon_vector_type(1))) int64_t int64x1_t;
core.c: ^
core.c: ...

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

Compiler output

Implementation: armneon
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
core.c: In file included from core.c:9:
core.c: core.c: In function 'crypto_core_salsa208_armneon_constbranchindex':
core.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:8866:1: error: inlining failed in call to always_inline 'vextq_u32': target specific option mismatch
core.c: vextq_u32 (uint32x4_t __a, uint32x4_t __b, const int __c)
core.c: ^~~~~~~~~
core.c: core.c:51:23: note: called from here
core.c: uint32x4_t start3 = vextq_u32(k2k3n3k7,k2k3n3k7,1);
core.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: In file included from core.c:9:
core.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:8866:1: error: inlining failed in call to always_inline 'vextq_u32': target specific option mismatch
core.c: vextq_u32 (uint32x4_t __a, uint32x4_t __b, const int __c)
core.c: ^~~~~~~~~
core.c: core.c:50:23: note: called from here
core.c: uint32x4_t start2 = vextq_u32(n1n2k6k1,n1n2k6k1,1);
core.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: In file included from core.c:9:
core.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:8866:1: error: inlining failed in call to always_inline 'vextq_u32': target specific option mismatch
core.c: vextq_u32 (uint32x4_t __a, uint32x4_t __b, const int __c)
core.c: ^~~~~~~~~
core.c: core.c:49:23: note: called from here
core.c: uint32x4_t start1 = vextq_u32(k4k5k0n0,k4k5k0n0,1);
core.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: In file included from core.c:9:
core.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
core.c: vcombine_u32 (uint32x2_t __a, uint32x2_t __b)
core.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