Implementation notes: amd64, scw1b63b1, crypto_dh/ecfp256i

Computer: scw1b63b1
Architecture: amd64
CPU ID: GenuineIntel-000506f1-0f8bfbff
SUPERCOP version: 20191017
Operation: crypto_dh
Primitive: ecfp256i
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1072002121834 0 0135671 824 1584v01/varclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
110196498431 0 0111591 824 1584v01/varclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
110200498431 0 0111591 824 1584v01/varclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
110248679694 0 091905 816 1584v01/varclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
1102760100801 0 0114783 824 1584v01/varclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
110609679330 0 094994 848 1648v01/vargcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017
114424048404 0 062058 848 1648v01/vargcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017
114754649784 0 063194 848 1648v01/vargcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017
117719440145 0 052410 840 1616v01/vargcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017

Test failure

Implementation: v01/w8s1
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111
crypto_dh_keypair writes after output

Number of similar (compiler,implementation) pairs: 36, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s1
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s1
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s1
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s1
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s1
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s1
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s1
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s1
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s1
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s2
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s2
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s4
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s4
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s8
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s8
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s8
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s8
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s8
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s8
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s8
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s8
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/w8s8

Compiler output

Implementation: v01/var
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
alloc.c: alloc.c:77:11: warning: passing 'char [13]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
alloc.c: kn_exit("kn_init_fast", ERR_OUT_OF_MEMORY);
alloc.c: ^~~~~~~~~~~~~~
alloc.c: ./_core.h:132:21: note: passing argument to parameter 's' here
alloc.c: void kn_exit(sic_t *s, uni_t code);
alloc.c: ^
alloc.c: alloc.c:92:11: warning: passing 'char [13]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
alloc.c: kn_exit("kn_free_fast", ERR_INVALID_MEMORY);
alloc.c: ^~~~~~~~~~~~~~
alloc.c: ./_core.h:132:21: note: passing argument to parameter 's' here
alloc.c: ...
alloc.c: ./_core.h:132:21: note: passing argument to parameter 's' here
alloc.c: void kn_exit(sic_t *s, uni_t code);
alloc.c: ^
alloc.c: alloc.c:192:11: warning: passing 'char [8]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
alloc.c: kn_exit("kn_kill", ERR_INVALID_MEMORY);
alloc.c: ^~~~~~~~~
alloc.c: ./_core.h:132:21: note: passing argument to parameter 's' here
alloc.c: void kn_exit(sic_t *s, uni_t code);
alloc.c: ^
alloc.c: 8 warnings generated.
error.c: error.c:44:11: warning: passing 'char [56]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
error.c: kn_exit("Increase the workspace space using crypmix_init(maxlen)", ERR_OUT_OF_BOUNDS);
error.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
error.c: error.c:29:21: note: passing argument to parameter 's' here
error.c: void kn_exit(sic_t *s, uni_t code)
error.c: ^
error.c: 1 warning generated.
integer_hi_stack.c: integer_hi_stack.c:387:11: warning: passing 'char [11]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
integer_hi_stack.c: kn_exit("mi_q_and_r", ERR_DIVIDE_BY_ZERO);
integer_hi_stack.c: ^~~~~~~~~~~~
integer_hi_stack.c: ./kernel.h:814:18: note: passing argument to parameter 's' here
integer_hi_stack.c: void kn_exit(sic s, uni_t code);
integer_hi_stack.c: ^
integer_hi_stack.c: integer_hi_stack.c:417:11: warning: passing 'char [11]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
integer_hi_stack.c: kn_exit("mi_q_and_r", ERR_DIVIDE_BY_ZERO);
integer_hi_stack.c: ^~~~~~~~~~~~
integer_hi_stack.c: ./kernel.h:814:18: note: passing argument to parameter 's' here
integer_hi_stack.c: ...
integer_hi_stack.c: ./kernel.h:814:18: note: passing argument to parameter 's' here
integer_hi_stack.c: void kn_exit(sic s, uni_t code);
integer_hi_stack.c: ^
integer_hi_stack.c: integer_hi_stack.c:943:12: warning: passing 'char [32]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
integer_hi_stack.c: kn_exit("Error @ mi_modinv_stack(z, a);n", 0);
integer_hi_stack.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
integer_hi_stack.c: ./kernel.h:814:18: note: passing argument to parameter 's' here
integer_hi_stack.c: void kn_exit(sic s, uni_t code);
integer_hi_stack.c: ^
integer_hi_stack.c: 5 warnings generated.
integer_lo.c: integer_lo.c:551:10: warning: passing 'char [35]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
integer_lo.c: kn_exit("min_nres_prepare2: not implemented", 0);
integer_lo.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
integer_lo.c: ./kernel.h:814:18: note: passing argument to parameter 's' here
integer_lo.c: void kn_exit(sic s, uni_t code);
integer_lo.c: ^
integer_lo.c: 1 warning generated.
io.c: io.c:340:11: warning: passing 'char [32]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
io.c: kn_exit("kn_io_fscan: zero length string", ERR_INVALID_STRING);
io.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
io.c: ./_core.h:132:21: note: passing argument to parameter 's' here
io.c: void kn_exit(sic_t *s, uni_t code);
io.c: ^
io.c: io.c:350:12: warning: passing 'char [31]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
io.c: kn_exit("kn_io_fscan: invalid character", ERR_INVALID_CHARACTER);
io.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
io.c: ./_core.h:132:21: note: passing argument to parameter 's' here
io.c: ...
io.c: ./_core.h:132:21: note: passing argument to parameter 's' here
io.c: void kn_exit(sic_t *s, uni_t code);
io.c: ^
io.c: io.c:389:11: warning: passing 'char [38]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
io.c: kn_exit("kn_io_fscan: increase I/O buffer size", ERR_IO_BUFFER_OVERFLOW);
io.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
io.c: ./_core.h:132:21: note: passing argument to parameter 's' here
io.c: void kn_exit(sic_t *s, uni_t code);
io.c: ^
io.c: 9 warnings generated.

Number of similar (compiler,implementation) pairs: 25, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/var
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/var
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/var
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/var
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/var
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s1
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s1
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s1
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s1
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s1
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s2
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s2
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s4
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s8
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s8
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s8
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s8
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/w8s8

Namespace violations

Implementation: v01/var
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
alloc.o crympix C
alloc.o crympix_init T
alloc.o crympix_kill T
alloc.o kn_alloc T
alloc.o kn_flush T
alloc.o kn_flush_fast T
alloc.o kn_free T
alloc.o kn_free_fast T
alloc.o kn_init T
alloc.o kn_init_fast T
alloc.o kn_kill T
alloc.o kn_kill_fast T
alloc.o kn_release T
array_lo.o crympix C
array_lo.o man_compare T
array_lo.o man_compare_1 T
array_lo.o man_convert_base T
array_lo.o man_convert_word T
array_lo.o man_normalize_right T
array_lo.o man_shift_left T
array_lo.o man_shift_left_experimental T
array_lo.o man_shift_right T
ec_fp_256i.o crympix C
ec_fp_256i.o ec_fp_smul_256i T
error.o crympix C
error.o kn_exit T
error.o kn_memcheck T
error.o kn_warn T
fp_256x8664.o crympix C
fp_256x8664.o fp_inv_256 T
integer_hi_stack.o crympix C
integer_hi_stack.o mi_add_stack T
integer_hi_stack.o mi_add_stack_1_stack T
integer_hi_stack.o mi_clone_stack T
integer_hi_stack.o mi_compare_abs_1_stack T
integer_hi_stack.o mi_compare_abs_stack T
integer_hi_stack.o mi_compare_stack T
integer_hi_stack.o mi_div_1_stack T
integer_hi_stack.o mi_div_q_r_stack T
integer_hi_stack.o mi_div_q_stack T
integer_hi_stack.o mi_div_stack T
integer_hi_stack.o mi_exp_stack T
integer_hi_stack.o mi_gcd_stack T
integer_hi_stack.o mi_gcdx_stack T
integer_hi_stack.o mi_init_stack T
integer_hi_stack.o mi_lcm_stack T
integer_hi_stack.o mi_mod_stack T
integer_hi_stack.o mi_modadd_stack T
integer_hi_stack.o mi_moddiv_stack T
integer_hi_stack.o mi_modexp_stack T
integer_hi_stack.o mi_modinv_stack T
integer_hi_stack.o mi_modmul_stack T
integer_hi_stack.o mi_modsub_stack T
integer_hi_stack.o mi_mul_1_stack T
integer_hi_stack.o mi_mul_stack T
integer_hi_stack.o mi_negate_stack T
integer_hi_stack.o mi_set_1_stack T
integer_hi_stack.o mi_sub_1_stack T
integer_hi_stack.o mi_sub_stack T
integer_lo.o crympix C
integer_lo.o min_compare T
integer_lo.o min_div_qr T
integer_lo.o min_find_nd T
integer_lo.o min_find_window T
integer_lo.o min_gcdx_lehmer T
integer_lo.o min_mul_basecase T
integer_lo.o min_mul_karatsuba T
integer_lo.o min_nres_prepare T
integer_lo.o min_nres_prepare2 T
integer_lo.o min_nres_redc T
integer_lo.o min_sqr_basecase T
integer_lo.o min_sqr_karatsuba T
io.o crympix C
io.o kn_io_fprint T
io.o kn_io_fscan T
io.o kn_io_sprint T
io.o kn_io_sscan T
rand.o crympix C
rand.o kn_rand T
rand.o kn_srand T
try_ec_fp_256i.o copyrightclaims T
try_ec_fp_256i.o crympix C
try_ec_fp_256i.o patentclaims T
try_ec_fp_256i.o timingattacks T

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/var
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/var
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/var
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/var
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE v01/var
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/var
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/var
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/var
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE v01/var