Implementation notes: armeabi, tinkerboards, crypto_kem/saber

Computer: tinkerboards
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20191221
Operation: crypto_kem
Primitive: saber
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
302941311801 0 021348 432 1584refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010820191221
305274411801 0 021356 432 1584portablegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010820191221
33879269923 0 018512 424 1576portablegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010820191221
34280809923 0 018512 424 1576refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010820191221
358194325685 0 036532 432 1584refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010820191221
358435425685 0 036532 432 1584portablegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010820191221
375927614253 0 023856 432 1584portablegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010820191221
376144914253 0 023848 432 1584refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010820191221

Compiler output

Implementation: portable
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
SABER_indcpa.c: In file included from SABER_indcpa.c:6:
SABER_indcpa.c: ./poly_mul.inc:19:43: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
SABER_indcpa.c: printf(" Mod(%d,%lu)*x^%d + ", a[i], p,i);
SABER_indcpa.c: ~~~ ^
SABER_indcpa.c: %llu
SABER_indcpa.c: ./poly_mul.inc:21:41: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
SABER_indcpa.c: printf(" Mod(%d,%lu)*x^%d ", a[i], p,i);
SABER_indcpa.c: ~~~ ^
SABER_indcpa.c: %llu
SABER_indcpa.c: 2 warnings generated.
pack_unpack.c: fatal error: error in backend: ran out of registers during register allocation
pack_unpack.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
pack_unpack.c: clang version 7.0.1-8 (tags/RELEASE_701/final)
pack_unpack.c: Target: armv7l-unknown-linux-gnueabihf
pack_unpack.c: Thread model: posix
pack_unpack.c: InstalledDir: /usr/bin
pack_unpack.c: clang: note: diagnostic msg: PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script.
pack_unpack.c: clang: note: diagnostic msg:
pack_unpack.c: ********************
pack_unpack.c:
pack_unpack.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
pack_unpack.c: Preprocessed source(s) and associated run script(s) are located at:
pack_unpack.c: clang: note: diagnostic msg: /tmp/pack_unpack-19b933.c
pack_unpack.c: clang: note: diagnostic msg: /tmp/pack_unpack-19b933.sh
pack_unpack.c: clang: note: diagnostic msg:
pack_unpack.c:
pack_unpack.c: ********************

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

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
SABER_indcpa.c: In file included from SABER_indcpa.c:6:
SABER_indcpa.c: ./poly_mul.inc:19:43: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
SABER_indcpa.c: printf(" Mod(%d,%lu)*x^%d + ", a[i], p,i);
SABER_indcpa.c: ~~~ ^
SABER_indcpa.c: %llu
SABER_indcpa.c: ./poly_mul.inc:21:41: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
SABER_indcpa.c: printf(" Mod(%d,%lu)*x^%d ", a[i], p,i);
SABER_indcpa.c: ~~~ ^
SABER_indcpa.c: %llu
SABER_indcpa.c: 2 warnings generated.
pack_unpack.c: fatal error: error in backend: ran out of registers during register allocation
pack_unpack.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
pack_unpack.c: clang version 7.0.1-8 (tags/RELEASE_701/final)
pack_unpack.c: Target: armv7l-unknown-linux-gnueabihf
pack_unpack.c: Thread model: posix
pack_unpack.c: InstalledDir: /usr/bin
pack_unpack.c: clang: note: diagnostic msg: PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script.
pack_unpack.c: clang: note: diagnostic msg:
pack_unpack.c: ********************
pack_unpack.c:
pack_unpack.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
pack_unpack.c: Preprocessed source(s) and associated run script(s) are located at:
pack_unpack.c: clang: note: diagnostic msg: /tmp/pack_unpack-d80cd2.c
pack_unpack.c: clang: note: diagnostic msg: /tmp/pack_unpack-d80cd2.sh
pack_unpack.c: clang: note: diagnostic msg:
pack_unpack.c:
pack_unpack.c: ********************

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

Namespace violations

Implementation: portable
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
SABER_indcpa.o GenMatrix T
SABER_indcpa.o MatrixVectorMul T
SABER_indcpa.o POL2MSG T
SABER_indcpa.o VectorMul T
SABER_indcpa.o clock1 C
SABER_indcpa.o clock2 C
SABER_indcpa.o clock_cl_mv C
SABER_indcpa.o clock_cl_sm C
SABER_indcpa.o clock_kp_mv C
SABER_indcpa.o clock_kp_sm C
SABER_indcpa.o indcpa_kem_dec T
SABER_indcpa.o indcpa_kem_enc T
SABER_indcpa.o indcpa_kem_keypair T
SABER_indcpa.o karatsuba_simple T
SABER_indcpa.o pol_mul T
SABER_indcpa.o print_poly2 T
SABER_indcpa.o toom_cook_4way T
cbd.o cbd T
fips202.o KeccakF1600_StatePermute T
fips202.o cshake128_simple T
fips202.o cshake128_simple_absorb T
fips202.o cshake128_simple_squeezeblocks T
fips202.o sha3_256 T
fips202.o sha3_512 T
fips202.o shake128 T
kem.o clock1 C
kem.o clock2 C
kem.o clock_cl_mv C
kem.o clock_cl_sm C
kem.o clock_kp_mv C
kem.o clock_kp_sm C
pack_unpack.o BS2POLVECp T
pack_unpack.o BS2POLVECq T
pack_unpack.o BS2POLq T
pack_unpack.o POLVECp2BS T
pack_unpack.o POLVECq2BS T
pack_unpack.o SABER_pack_3bit T
pack_unpack.o SABER_pack_4bit T
pack_unpack.o SABER_pack_6bit T
pack_unpack.o SABER_un_pack3bit T
pack_unpack.o SABER_un_pack4bit T
pack_unpack.o SABER_un_pack6bit T
poly.o GenSecret T
recon.o Recon T
recon.o ReconDataGen T
recon.o ciphertext_gen T
recon.o floor_special T
recon.o recon T
recon.o recon_gen T
verify.o cmov T
verify.o verify T

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