Implementation notes: aarch64, pi3bplus, crypto_kem/bike1l1nc

Computer: pi3bplus
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20200417
Operation: crypto_kem
Primitive: bike1l1nc
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
745460399042 32 024280 1040 1536ref_osslgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020051520200417
8164992511392 32 028697 1056 1568ref_osslgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020051520200417
818974139968 32 026113 1056 1552ref_osslgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020051520200417
8936778810143 32 026177 1056 1552ref_osslgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020051520200417

Compiler output

Implementation: crypto_kem/bike1l1nc/ref_ossl
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
aes_ctr_prf.c: In file included from aes_ctr_prf.c:14:
aes_ctr_prf.c: ./utilities.h:93:28: error: unknown register name 'rdx' in asm
aes_ctr_prf.c: : "rdx");
aes_ctr_prf.c: ^
aes_ctr_prf.c: ./utilities.h:108:28: error: unknown register name 'rdx' in asm
aes_ctr_prf.c: : "rdx");
aes_ctr_prf.c: ^
aes_ctr_prf.c: ./utilities.h:125:28: error: unknown register name 'rdx' in asm
aes_ctr_prf.c: : "rdx");
aes_ctr_prf.c: ^
aes_ctr_prf.c: 3 errors generated.

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

Compiler output

Implementation: crypto_kem/bike1l1nc/ref_ntl
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aes.c: In file included from aes.c:12:
aes.c: aes.h:21:12: fatal error: wmmintrin.h: No such file or directory
aes.c: #include <wmmintrin.h>
aes.c: ^~~~~~~~~~~~~
aes.c: compilation terminated.

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

Namespace violations

Implementation: crypto_kem/bike1l1nc/ref_ossl
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aes_ctr_prf.o aes_ctr_prf T
aes_ctr_prf.o init_aes_ctr_prf_state T
converts_portable.o convert_to_redundant_rep T
converts_portable.o count_ones T
decode.o compute_syndrome T
decode.o decode T
decode.o split_e T
decode_portable.o compute_counter_of_unsat T
decode_portable.o recompute T
openssl_utils.o cyclic_product T
openssl_utils.o mod_inv T
openssl_utils.o ossl_add T
openssl_utils.o ossl_split_polynomial T
parallel_hash.o parallel_hash T
sampling.o generate_sparse_fake_rep T
sampling.o generate_sparse_rep T
sampling.o sample_uniform_r_bits T
utilities.o print_BE T
utilities.o print_LE T

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