Implementation notes: amd64, hydra8, crypto_dh/ecfp256e

Computer: hydra8
Architecture: amd64
CPU ID: GenuineIntel-000306a9-bfebfbff
SUPERCOP version: 20200522
Operation: crypto_dh
Primitive: ecfp256e
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
562120225399 0 0240164 816 1648v01/w8s8gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
569260159255 0 0174036 816 1648v01/w8s4gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
572896180503 0 0193044 816 1648v01/w8s8gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
580876181603 0 0194212 816 1648v01/w8s8gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
581060114945 0 0127476 816 1648v01/w8s4gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
582768116062 0 0128644 816 1648v01/w8s4gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
585192126562 0 0141340 816 1648v01/w8s2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
58837282211 0 094740 816 1648v01/w8s2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
595484171956 0 0183596 808 1616v01/w8s8gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
596436109682 0 0124452 816 1648v01/w8s1gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
60028483290 0 095876 816 1648v01/w8s2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
600316106414 0 0118060 808 1616v01/w8s4gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
61281273640 0 085292 808 1616v01/w8s2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
61711665701 0 078228 816 1648v01/w8s1gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
61858866837 0 079428 816 1648v01/w8s1gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
63272857216 0 068876 808 1616v01/w8s1gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
92565691704 0 0106468 816 1648v01/vargcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
94048048729 0 061244 816 1648v01/vargcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
94092449988 0 062580 816 1648v01/vargcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409
96479640330 0 051972 808 1616v01/vargcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020041020200409

Compiler output

Implementation: crypto_dh/ecfp256e/v01/var
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: void kn_exit(sic_t *s, uni_t code);
alloc.c: ^
alloc.c: alloc.c:108: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: alloc.c:131:11: warning: passing 'char [33]' 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_alloc: cannot allocate memory", 0);
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:152:12: 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: ...

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

Namespace violations

Implementation: crypto_dh/ecfp256e/v01/w8s1
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -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_256e.o crympix C
ec_fp_256e.o ec_fp_smul_256e T
ec_fp_256e.o ec_fp_smulbase_256e 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_256e.o copyrightclaims T
try_ec_fp_256e.o crympix C
try_ec_fp_256e.o patentclaims T
try_ec_fp_256e.o timingattacks T

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

Namespace violations

Implementation: crypto_dh/ecfp256e/v01/var
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -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_256e.o crympix C
ec_fp_256e.o ec_fp_smul_256e 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_256e.o copyrightclaims T
try_ec_fp_256e.o crympix C
try_ec_fp_256e.o patentclaims T
try_ec_fp_256e.o timingattacks T

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
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