Implementation notes: aarch64, pi3bplus, crypto_kem/ntruhps2048509

Computer: pi3bplus
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20210529
Operation: crypto_kem
Primitive: ntruhps2048509
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
676748215408 0 035646 832 1552T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042520210423
683172915408 0 035070 832 1552refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042520210423
895865711456 0 031135 904 1568T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042520210423
90055626212 0 024605 896 1552T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042520210423
902238411456 0 030559 904 1568refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042520210423
90677996212 0 024029 896 1552refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042520210423
100935276448 0 024677 896 1552T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042520210423
101542796448 0 024101 896 1552refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042520210423
117322905836 0 023165 880 1536T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042520210423
117986165836 0 022589 880 1536refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042520210423

Checksum failure

Implementation: T:neon
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
00cd3fe1b21cd7ad209de97d76eba108e51415ad7ed1fd717df6c7bcf4135c06
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 'karat_neon_evaluate_combine':
neon_poly_rq_mul.c: rq_mul/neon_poly_rq_mul.c:120: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:178:9: note: in expansion of macro 'vstore_x2'
neon_poly_rq_mul.c: vstore_x2(&w0_mem[addr], r0);
neon_poly_rq_mul.c: ^~~~~~~~~
try.c: /usr/bin/ld: libcrypto_kem_ntruhps2048509.a(neon_poly_rq_mul.o): in function `karat_neon_evaluate_combine.part.0':
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_ntruhps2048509.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: 3, 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 -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:neon

Compiler output

Implementation: T:neon
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O -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 'karat_neon_evaluate_combine':
neon_poly_rq_mul.c: rq_mul/neon_poly_rq_mul.c:120: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:178:9: note: in expansion of macro 'vstore_x2'
neon_poly_rq_mul.c: vstore_x2(&w0_mem[addr], r0);
neon_poly_rq_mul.c: ^~~~~~~~~
try.c: /usr/bin/ld: libcrypto_kem_ntruhps2048509.a(neon_poly_rq_mul.o): in function `karat_neon_evaluate_combine':
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_ntruhps2048509.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: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:neon