Implementation notes: armeabi, berry2, crypto_sign/bluegemss256

Computer: berry2
Microarchitecture: armeabi; Cortex-A7 (410fc075)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_sign
Primitive: bluegemss256

Compiler output

Implementation: T:opt
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
arith_gf2n.c: In file included from arith_gf2n.c:1:
arith_gf2n.c: In file included from ./arith_gf2n.h:9:
arith_gf2n.c: In file included from ./tools_gf2n.h:162:
arith_gf2n.c: ./mul_gf2x.h:17:14: fatal error: 'gf2x/gf2x_mul1.h' file not found
arith_gf2n.c: #include <gf2x/gf2x_mul1.h>
arith_gf2n.c: ^~~~~~~~~~~~~~~~~~
arith_gf2n.c: 1 error generated.

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

Compiler output

Implementation: T:opt
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
arith_gf2n.c: In file included from tools_gf2n.h:162,
arith_gf2n.c: from arith_gf2n.h:9,
arith_gf2n.c: from arith_gf2n.c:1:
arith_gf2n.c: mul_gf2x.h:17:14: fatal error: gf2x/gf2x_mul1.h: No such file or directory
arith_gf2n.c: #include <gf2x/gf2x_mul1.h>
arith_gf2n.c: ^~~~~~~~~~~~~~~~~~
arith_gf2n.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 8, 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
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:skylake
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:skylake
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:skylake
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:skylake

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
chooseRootHFE.cpp: In file included from config_HFE.h:5,
chooseRootHFE.cpp: from chooseRootHFE.hpp:4,
chooseRootHFE.cpp: from chooseRootHFE.cpp:1:
chooseRootHFE.cpp: chooseRootHFE.cpp: In function 'unsigned int chooseRootHFE(gf2n, cst_sparse_monic_gf2nx, cst_gf2n)':
chooseRootHFE.cpp: bit.h:44:32: warning: left shift count >= width of type [-Wshift-count-overflow]
chooseRootHFE.cpp: #define mask64(k) ((k)?(1UL<<(k))-1UL:-1UL)
chooseRootHFE.cpp: ^
chooseRootHFE.cpp: config_HFE.h:486:19: note: in expansion of macro 'mask64'
chooseRootHFE.cpp: #define HFE_MASKn mask64(HFEnr)
chooseRootHFE.cpp: ^~~~~~
chooseRootHFE.cpp: chooseRootHFE.cpp:248:39: note: in expansion of macro 'HFE_MASKn'
chooseRootHFE.cpp: root[NB_WORD_GFqn-1]&=HFE_MASKn;
chooseRootHFE.cpp: ^~~~~~~~~
chooseRootHFE.cpp: bit.h:44:32: warning: left shift count >= width of type [-Wshift-count-overflow]
chooseRootHFE.cpp: #define mask64(k) ((k)?(1UL<<(k))-1UL:-1UL)
chooseRootHFE.cpp: ^
chooseRootHFE.cpp: config_HFE.h:486:19: note: in expansion of macro 'mask64'
chooseRootHFE.cpp: #define HFE_MASKn mask64(HFEnr)
chooseRootHFE.cpp: ^~~~~~
chooseRootHFE.cpp: chooseRootHFE.cpp:259:55: note: in expansion of macro 'HFE_MASKn'
chooseRootHFE.cpp: roots_UINT[(i+1)*NB_WORD_GFqn-1]&=HFE_MASKn;
chooseRootHFE.cpp: ^~~~~~~~~
evaluateMQS.cpp: In file included from config_HFE.h:5,
evaluateMQS.cpp: from evaluateMQS.hpp:4,
evaluateMQS.cpp: from evaluateMQS.cpp:1:
evaluateMQS.cpp: evaluateMQS.cpp: In function 'void evaluateMQS(vecn_gf2, cst_vecv_gf2, cst_mqsv_gf2n)':
evaluateMQS.cpp: bit.h:44:32: warning: left shift count >= width of type [-Wshift-count-overflow]
evaluateMQS.cpp: #define mask64(k) ((k)?(1UL<<(k))-1UL:-1UL)
evaluateMQS.cpp: ^
evaluateMQS.cpp: config_HFE.h:486:19: note: in expansion of macro 'mask64'
evaluateMQS.cpp: #define HFE_MASKn mask64(HFEnr)
evaluateMQS.cpp: ^~~~~~
evaluateMQS.cpp: evaluateMQS.cpp:170:28: note: in expansion of macro 'HFE_MASKn'
evaluateMQS.cpp: c[NB_WORD_GFqn-1]&=HFE_MASKn;
evaluateMQS.cpp: ^~~~~~~~~
genHFEtab.cpp: In file included from config_HFE.h:5,
genHFEtab.cpp: from genHFEtab.hpp:4,
genHFEtab.cpp: from genHFEtab.cpp:1:
genHFEtab.cpp: genHFEtab.cpp: In function 'void genHFEpolynom(sparse_monic_gf2nx)':
genHFEtab.cpp: bit.h:44:32: warning: left shift count >= width of type [-Wshift-count-overflow]
genHFEtab.cpp: #define mask64(k) ((k)?(1UL<<(k))-1UL:-1UL)
genHFEtab.cpp: ^
genHFEtab.cpp: config_HFE.h:486:19: note: in expansion of macro 'mask64'
genHFEtab.cpp: #define HFE_MASKn mask64(HFEnr)
genHFEtab.cpp: ^~~~~~
genHFEtab.cpp: genHFEtab.cpp:25:20: note: in expansion of macro 'HFE_MASKn'
genHFEtab.cpp: *F_cp&=HFE_MASKn;
genHFEtab.cpp: ^~~~~~~~~
signHFE.cpp: In file included from config_HFE.h:5,
signHFE.cpp: from signHFE.hpp:4,
signHFE.cpp: from signHFE.cpp:1:
signHFE.cpp: signHFE.cpp: In function 'int signHFE(unsigned char*, const unsigned char*, size_t, const uint64_t*)':
signHFE.cpp: bit.h:44:32: warning: left shift count >= width of type [-Wshift-count-overflow]
signHFE.cpp: #define mask64(k) ((k)?(1UL<<(k))-1UL:-1UL)
signHFE.cpp: ^
signHFE.cpp: config_HFE.h:486:19: note: in expansion of macro 'mask64'
signHFE.cpp: #define HFE_MASKn mask64(HFEnr)
signHFE.cpp: ^~~~~~
signHFE.cpp: signHFE.cpp:316:37: note: in expansion of macro 'HFE_MASKn'
signHFE.cpp: DR[NB_WORD_GFqn-1]&=HFE_MASKn;
signHFE.cpp: ^~~~~~~~~
try.cpp: /usr/bin/ld: /home/djb/benchmarking/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/benchmarking/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/benchmarking/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/benchmarking/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/benchmarking/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/benchmarking/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/benchmarking/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/benchmarking/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/benchmarking/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/benchmarking/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