Implementation notes: armeabi, bblack, crypto_kem/ntruhps2048509

Computer: bblack
Microarchitecture: armeabi; Cortex-A8 (413fc082)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_kem
Primitive: ntruhps2048509
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
238151619992 0 058951 424 1496T:compactclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024022520240107
244046819992 0 065095 424 1496compactclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024022520240107
77094847780 0 038215 424 1488T:compactclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024022520240107
77106968500 0 038727 424 1496T:compactclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024022520240107
77119007780 0 038215 424 1488T:compactclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024022520240107
77681488500 0 044871 424 1496compactclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024022520240107
77816047780 0 044359 424 1488compactclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024022520240107
77861487780 0 044359 424 1488compactclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024022520240107
97515763602 0 029638 456 1488T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024020420231212
98208683602 0 035782 456 1488refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024020420231212
1022230810628 0 049475 424 1496T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024020420231212
102529765548 0 035651 424 1496T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024020420231212
102531805548 0 035907 424 1488T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024020420231212
102533525548 0 035907 424 1488T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024020420231212
102585963610 0 029282 448 1488T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024020420231212
102594325428 0 034097 420 1488T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024020420231212
1028346810628 0 055619 424 1496refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024020420231212
103105965548 0 041795 424 1496refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024020420231212
103167643610 0 035426 448 1488refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024020420231212
103168885548 0 042051 424 1488refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024020420231212
103176805548 0 042051 424 1488refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024020420231212
103182205428 0 040241 420 1488refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024020420231212
108672565020 0 033845 420 1488T:compactclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024022520240107
109264645020 0 039989 420 1488compactclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024022520240107
109955043066 0 029138 456 1488T:compactgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024022520240107
110495843066 0 035282 456 1488compactgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024022520240107
112775524492 0 031720 460 1488T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024020420231212
112893843828 0 029902 456 1488T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024020420231212
113391324492 0 037864 460 1488refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024020420231212
113513003828 0 036046 456 1488refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024020420231212
117204725752 0 033004 460 1488T:compactgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024022520240107
117774245752 0 039148 460 1488compactgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024022520240107
120054563148 0 029138 456 1488T:compactgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024022520240107
120643283148 0 035282 456 1488compactgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024022520240107
137108762972 0 029206 448 1488T:compactgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024022520240107
137749162972 0 035350 448 1488compactgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024022520240107

Compiler output

Implementation: T:neon
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
neon_poly_mod.c: In file included from neon_poly_mod.c:20:
neon_poly_mod.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/arm_neon.h:28:2: error: "NEON support not enabled"
neon_poly_mod.c: #error "NEON support not enabled"
neon_poly_mod.c: ^
neon_poly_mod.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
neon_poly_mod.c: typedef __attribute__((neon_vector_type(8))) int8_t int8x8_t;
neon_poly_mod.c: ^
neon_poly_mod.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
neon_poly_mod.c: typedef __attribute__((neon_vector_type(16))) int8_t int8x16_t;
neon_poly_mod.c: ^
neon_poly_mod.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
neon_poly_mod.c: typedef __attribute__((neon_vector_type(4))) int16_t int16x4_t;
neon_poly_mod.c: ^
neon_poly_mod.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
neon_poly_mod.c: typedef __attribute__((neon_vector_type(8))) int16_t int16x8_t;
neon_poly_mod.c: ^
neon_poly_mod.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
neon_poly_mod.c: typedef __attribute__((neon_vector_type(2))) int32_t int32x2_t;
neon_poly_mod.c: ^
neon_poly_mod.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
neon_poly_mod.c: typedef __attribute__((neon_vector_type(4))) int32_t int32x4_t;
neon_poly_mod.c: ^
neon_poly_mod.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
neon_poly_mod.c: typedef __attribute__((neon_vector_type(1))) int64_t int64x1_t;
neon_poly_mod.c: ^
neon_poly_mod.c: ...

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

Compiler output

Implementation: T:neon
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
neon_poly_rq_mul.c: In file included from neon_poly_rq_mul.c:20:
neon_poly_rq_mul.c: In file included from ./rq_mul/neon_poly_rq_mul.c:24:
neon_poly_rq_mul.c: ./rq_mul/neon_matrix_transpose.c:64:11: warning: implicit declaration of function 'vtrn1q_u16' is invalid in C99 [-Wimplicit-function-declaration]
neon_poly_rq_mul.c: y16 = vtrn1q_u16(y0, y1);
neon_poly_rq_mul.c: ^
neon_poly_rq_mul.c: ./rq_mul/neon_matrix_transpose.c:64:9: error: assigning to 'uint16x8_t' (vector of 8 'uint16_t' values) from incompatible type 'int'
neon_poly_rq_mul.c: y16 = vtrn1q_u16(y0, y1);
neon_poly_rq_mul.c: ^ ~~~~~~~~~~~~~~~~~~
neon_poly_rq_mul.c: ./rq_mul/neon_matrix_transpose.c:65:11: warning: implicit declaration of function 'vtrn2q_u16' is invalid in C99 [-Wimplicit-function-declaration]
neon_poly_rq_mul.c: y17 = vtrn2q_u16(y0, y1);
neon_poly_rq_mul.c: ^
neon_poly_rq_mul.c: ./rq_mul/neon_matrix_transpose.c:65:9: error: assigning to 'uint16x8_t' (vector of 8 'uint16_t' values) from incompatible type 'int'
neon_poly_rq_mul.c: y17 = vtrn2q_u16(y0, y1);
neon_poly_rq_mul.c: ^ ~~~~~~~~~~~~~~~~~~
neon_poly_rq_mul.c: ./rq_mul/neon_matrix_transpose.c:66:9: error: assigning to 'uint16x8_t' (vector of 8 'uint16_t' values) from incompatible type 'int'
neon_poly_rq_mul.c: y18 = vtrn1q_u16(y2, y3);
neon_poly_rq_mul.c: ^ ~~~~~~~~~~~~~~~~~~
neon_poly_rq_mul.c: ./rq_mul/neon_matrix_transpose.c:67:9: error: assigning to 'uint16x8_t' (vector of 8 'uint16_t' values) from incompatible type 'int'
neon_poly_rq_mul.c: y19 = vtrn2q_u16(y2, y3);
neon_poly_rq_mul.c: ^ ~~~~~~~~~~~~~~~~~~
neon_poly_rq_mul.c: ./rq_mul/neon_matrix_transpose.c:68:23: warning: implicit declaration of function 'vtrn1q_u32' is invalid in C99 [-Wimplicit-function-declaration]
neon_poly_rq_mul.c: y24 = (uint16x8_t)vtrn1q_u32((uint32x4_t)y16, (uint32x4_t)y17);
neon_poly_rq_mul.c: ^
neon_poly_rq_mul.c: ./rq_mul/neon_matrix_transpose.c:68:11: error: invalid conversion between vector type 'uint16x8_t' (vector of 8 'uint16_t' values) and integer type 'int' of different size
neon_poly_rq_mul.c: y24 = (uint16x8_t)vtrn1q_u32((uint32x4_t)y16, (uint32x4_t)y17);
neon_poly_rq_mul.c: ...

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

Compiler output

Implementation: T:neon
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
neon_poly_mod.c: In file included from neon_poly_mod.c:20:
neon_poly_mod.c: neon_poly_mod.c: In function 'crypto_kem_ntruhps2048509_neon_timingleaks_poly_mod_3_Phi_n':
neon_poly_mod.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:6754:1: error: inlining failed in call to always_inline 'vdupq_n_u16': target specific option mismatch
neon_poly_mod.c: vdupq_n_u16 (uint16_t __a)
neon_poly_mod.c: ^~~~~~~~~~~
neon_poly_mod.c: neon_poly_mod.c:30:36: note: called from here
neon_poly_mod.c: #define poly_vdup_x1(c, value) c = vdupq_n_u16(value);
neon_poly_mod.c: ^~~~~~~~~~~~~~~~~~
neon_poly_mod.c: neon_poly_mod.c:165:5: note: in expansion of macro 'poly_vdup_x1'
neon_poly_mod.c: poly_vdup_x1(hex_0x03, 0x03);
neon_poly_mod.c: ^~~~~~~~~~~~
neon_poly_mod.c: In file included from neon_poly_mod.c:20:
neon_poly_mod.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:6754:1: error: inlining failed in call to always_inline 'vdupq_n_u16': target specific option mismatch
neon_poly_mod.c: vdupq_n_u16 (uint16_t __a)
neon_poly_mod.c: ^~~~~~~~~~~
neon_poly_mod.c: neon_poly_mod.c:30:36: note: called from here
neon_poly_mod.c: #define poly_vdup_x1(c, value) c = vdupq_n_u16(value);
neon_poly_mod.c: ^~~~~~~~~~~~~~~~~~
neon_poly_mod.c: neon_poly_mod.c:164:5: note: in expansion of macro 'poly_vdup_x1'
neon_poly_mod.c: poly_vdup_x1(hex_0x0f, 0x0f);
neon_poly_mod.c: ^~~~~~~~~~~~
neon_poly_mod.c: In file included from neon_poly_mod.c:20:
neon_poly_mod.c: /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:6754:1: error: inlining failed in call to always_inline 'vdupq_n_u16': target specific option mismatch
neon_poly_mod.c: vdupq_n_u16 (uint16_t __a)
neon_poly_mod.c: ^~~~~~~~~~~
neon_poly_mod.c: ...

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

Namespace violations

Implementation: compact
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
kem.o sample_fixed_type T

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE compact T:compact
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE compact T:compact
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE compact T:compact
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE compact T:compact
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE compact T:compact
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE compact T:compact
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE compact T:compact
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE compact T:compact
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE compact T:compact