Implementation notes: aarch64, pi3aplus, crypto_kem/ntruhrss701

Computer: pi3aplus
Microarchitecture: aarch64; Cortex-A53 (410fd034)
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20240425
Operation: crypto_kem
Primitive: ntruhrss701
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
274209021336 0 040022 832 1552compactclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
1220239212992 0 031734 832 1552refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
1476253812320 0 030543 904 1568compactgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
1621352513056 0 031303 904 1568refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
163197986344 0 023301 896 1552refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
167250485016 0 021989 896 1552compactgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
184211466548 0 023309 896 1552refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
194228164600 0 021469 896 1552compactgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
214201445996 0 021845 880 1536refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
220749634140 0 020085 880 1536compactgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425

Test failure

Implementation: T:neon
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111
crypto_kem_dec does not match k

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_rq_mul.c: In file included from neon_poly_rq_mul.c:20:
neon_poly_rq_mul.c: rq_mul/neon_poly_rq_mul.c: In function 'tc3_interpolate_neon_SB3':
neon_poly_rq_mul.c: rq_mul/neon_poly_rq_mul.c:108:25: warning: implicit declaration of function 'vst1q_u16_x2'; did you mean 'vld1q_u16_x2'? [-Wimplicit-function-declaration]
neon_poly_rq_mul.c: #define vstore_x2(c, a) vst1q_u16_x2(c, a);
neon_poly_rq_mul.c: ^~~~~~~~~~~~
neon_poly_rq_mul.c: rq_mul/neon_poly_rq_mul.c:385:9: note: in expansion of macro 'vstore_x2'
neon_poly_rq_mul.c: vstore_x2(&poly[addr + 0*SB3], r0);
neon_poly_rq_mul.c: ^~~~~~~~~
try.c: /usr/bin/ld: libcrypto_kem_ntruhrss701.a(neon_poly_rq_mul.o): in function `tc3_interpolate_neon_SB3':
try.c: neon_poly_rq_mul.c:(.text+0x...): undefined reference to `vst1q_u16_x2'
try.c: /usr/bin/ld: neon_poly_rq_mul.c:(.text+0x...): undefined reference to `vst1q_u16_x2'
try.c: /usr/bin/ld: neon_poly_rq_mul.c:(.text+0x...): undefined reference to `vst1q_u16_x2'
try.c: /usr/bin/ld: neon_poly_rq_mul.c:(.text+0x...): undefined reference to `vst1q_u16_x2'
try.c: /usr/bin/ld: neon_poly_rq_mul.c:(.text+0x...): undefined reference to `vst1q_u16_x2'
try.c: /usr/bin/ld: libcrypto_kem_ntruhrss701.a(neon_poly_rq_mul.o):neon_poly_rq_mul.c:(.text+0x...): more undefined references to `vst1q_u16_x2' follow
try.c: collect2: error: ld returned 1 exit status

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