Implementation notes: armeabi, berry2, crypto_kem/hqc1281

Computer: berry2
Microarchitecture: armeabi; Cortex-A7 (410fc075)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_kem
Primitive: hqc1281
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1595337715806 0 036891 432 1580T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024021220240107
1697632411018 0 030241 428 1580T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024021220240107
192376779345 0 028041 420 1580T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024021220240107
1962885010438 0 029729 428 1580T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024021220240107

Compiler output

Implementation: T:opt
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
gf2x_avx2.c: gf2x_avx2.c:87:19: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
gf2x_avx2.c: rightVector = __builtin_shuffle(
gf2x_avx2.c: ^
gf2x_avx2.c: gf2x_avx2.c:87:17: error: assigning to 'v8uint32' (vector of 8 'uint32_t' values) from incompatible type 'int'
gf2x_avx2.c: rightVector = __builtin_shuffle(
gf2x_avx2.c: ^ ~~~~~~~~~~~~~~~~~~
gf2x_avx2.c: gf2x_avx2.c:89:16: error: assigning to 'v8uint32' (vector of 8 'uint32_t' values) from incompatible type 'int'
gf2x_avx2.c: leftVector = __builtin_shuffle(
gf2x_avx2.c: ^ ~~~~~~~~~~~~~~~~~~
gf2x_avx2.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 T:opt

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.cpp: /usr/bin/ld: /home/djb/supercop-20240107/supercop-data/berry2/armeabi/lib/libntl.a(lip.o): in function `redc(_ntl_gbigint_body*, _ntl_gbigint_body*, long, unsigned long, _ntl_gbigint_body*)':
try.cpp: lip.cpp:(.text+0x...): undefined reference to `__gmpn_addmul_1'
try.cpp: /usr/bin/ld: lip.cpp:(.text+0x...): undefined reference to `__gmpn_sub_n'
try.cpp: /usr/bin/ld: /home/djb/supercop-20240107/supercop-data/berry2/armeabi/lib/libntl.a(lip.o): in function `_ntl_rem_struct_basic::eval(long*, _ntl_gbigint_body*, _ntl_tmp_vec*)':
try.cpp: lip.cpp:(.text+0x...): undefined reference to `__gmpn_mod_1'
try.cpp: /usr/bin/ld: /home/djb/supercop-20240107/supercop-data/berry2/armeabi/lib/libntl.a(lip.o): in function `_ntl_reduce_struct_montgomery::eval(_ntl_gbigint_body**, _ntl_gbigint_body**)':
try.cpp: lip.cpp:(.text+0x...): undefined reference to `__gmpn_addmul_1'
try.cpp: /usr/bin/ld: lip.cpp:(.text+0x...): undefined reference to `__gmpn_sub_n'
try.cpp: /usr/bin/ld: /home/djb/supercop-20240107/supercop-data/berry2/armeabi/lib/libntl.a(lip.o): in function `_ntl_crt_struct_basic::eval(_ntl_gbigint_body**, long const*, _ntl_tmp_vec*)':
try.cpp: lip.cpp:(.text+0x...): undefined reference to `__gmpn_addmul_1'
try.cpp: /usr/bin/ld: /home/djb/supercop-20240107/supercop-data/berry2/armeabi/lib/libntl.a(lip.o): in function `gmod_simple(_ntl_gbigint_body*, _ntl_gbigint_body*, _ntl_gbigint_body**)':
try.cpp: lip.cpp:(.text+0x...): undefined reference to `__gmpn_tdiv_qr'
try.cpp: /usr/bin/ld: /home/djb/supercop-20240107/supercop-data/berry2/armeabi/lib/libntl.a(lip.o): in function `_ntl_rem_struct_fast::eval(long*, _ntl_gbigint_body*, _ntl_tmp_vec*)':
try.cpp: lip.cpp:(.text+0x...): undefined reference to `__gmpn_mod_1'
try.cpp: /usr/bin/ld: /home/djb/supercop-20240107/supercop-data/berry2/armeabi/lib/libntl.a(lip.o): in function `_ntl_rem_struct_medium::eval(long*, _ntl_gbigint_body*, _ntl_tmp_vec*)':
try.cpp: lip.cpp:(.text+0x...): undefined reference to `__gmpn_mod_1'
try.cpp: /usr/bin/ld: /home/djb/supercop-20240107/supercop-data/berry2/armeabi/lib/libntl.a(lip.o): in function `_ntl_grshift(_ntl_gbigint_body*, long, _ntl_gbigint_body**)':
try.cpp: lip.cpp:(.text+0x...): undefined reference to `__gmpn_rshift'
try.cpp: /usr/bin/ld: /home/djb/supercop-20240107/supercop-data/berry2/armeabi/lib/libntl.a(lip.o): in function `_ntl_glshift(_ntl_gbigint_body*, long, _ntl_gbigint_body**)':
try.cpp: lip.cpp:(.text+0x...): undefined reference to `__gmpn_lshift'
try.cpp: /usr/bin/ld: /home/djb/supercop-20240107/supercop-data/berry2/armeabi/lib/libntl.a(lip.o): in function `_ntl_gadd(_ntl_gbigint_body*, _ntl_gbigint_body*, _ntl_gbigint_body**)':
try.cpp: lip.cpp:(.text+0x...): undefined reference to `__gmpn_sub_n'
try.cpp: /usr/bin/ld: lip.cpp:(.text+0x...): undefined reference to `__gmpn_add_n'
try.cpp: /usr/bin/ld: lip.cpp:(.text+0x...): undefined reference to `__gmpn_sub_n'
try.cpp: /usr/bin/ld: lip.cpp:(.text+0x...): undefined reference to `__gmpn_sub_n'
try.cpp: ...

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

Namespace violations

Implementation: T:opt
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
bch.o array_to_codeword T
bch.o bch_code_decode T
bch.o bch_code_encode T
bch.o chien_search T
bch.o compute_generator_poly T
bch.o cyclotomic_clear T
bch.o cyclotomic_gen T
bch.o cyclotomic_init T
bch.o error_poly_gen T
bch.o get_error_location_poly T
bch.o get_generator_poly T
bch.o gf_generation T
bch.o gf_get_antilog T
bch.o gf_get_log T
bch.o gf_mod T
bch.o gf_mult T
bch.o gf_tables_clear T
bch.o gf_tables_init T
bch.o lfsr_encoder T
bch.o message_from_codeword T
bch.o message_to_array T
bch.o polynomial_hex T
bch.o sigma_poly_clear T
bch.o sigma_poly_copy T
bch.o sigma_poly_init T
bch.o syndrome_clear T
bch.o syndrome_gen T
bch.o syndrome_init T
gf2x_avx2.o shiftXor T
gf2x_avx2.o sparse_dense_mul T
gf2x_avx2.o vect_sparse_from_bytes T
hqc.o hqc_pke_decrypt T
hqc.o hqc_pke_encrypt T
hqc.o hqc_pke_keygen T
parsing.o hqc_ciphertext_from_string T
parsing.o hqc_ciphertext_to_string T
parsing.o hqc_public_key_from_string T
parsing.o hqc_public_key_to_string T
parsing.o hqc_secret_key_from_string T
parsing.o hqc_secret_key_to_string T
repetition.o array_to_rep_codeword T
repetition.o repetition_code_decode T
repetition.o repetition_code_encode T
rng.o AES256_ECB T
rng.o DRBG_ctx C
rng.o handleErrors T
rng.o seedexpander T
rng.o seedexpander_init T
tensor.o tensor_code_decode T
tensor.o tensor_code_encode T
vector.o vect_add T
vector.o vect_compare T
vector.o vect_fixed_weight T
vector.o vect_print T
vector.o vect_resize T
vector.o vect_set_random T
vector.o vect_set_random_from_randombytes T

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