Implementation notes: amd64, dali, crypto_dh/nistp256
Computer: dali
Microarchitecture: amd64; Zen (820f01)
Architecture: amd64
CPU ID: AuthenticAMD-00820f01-178bfbff
SUPERCOP version: 20240808
Operation: crypto_dh
Primitive: nistp256
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
1889808 | 38059 32864 0 | 59696 33692 1752 | T:wbl | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
1892264 | 34427 32864 0 | 55952 33692 1752 | T:wbl | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
2021413 | 37100 32864 0 | 58912 33692 1720 | T:wbl | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
2233553 | 16292 32864 0 | 37936 33660 1784 | T:wbl | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
2477663 | 153 0 0 | 36566 31532 1720 | T:ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240811 | 20240808 |
2478128 | 134 0 0 | 35776 31500 1752 | T:ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240811 | 20240808 |
2479093 | 150 0 0 | 38880 31540 1720 | T:ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240811 | 20240808 |
2479499 | 150 0 0 | 38744 31540 1752 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240811 | 20240808 |
2480586 | 154 0 0 | 36912 31508 1784 | T:ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240811 | 20240808 |
2481037 | 150 0 0 | 38736 31508 1784 | T:ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240811 | 20240808 |
2481480 | 150 0 0 | 37744 31508 1784 | T:ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240811 | 20240808 |
2490140 | 143 0 0 | 36278 31532 1720 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240811 | 20240808 |
2496853 | 150 0 0 | 38632 31540 1752 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240811 | 20240808 |
2498535 | 10482 32864 0 | 29718 33684 1720 | T:wbl | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
2785301 | 19446 32864 0 | 40144 33660 1784 | T:wbl | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
3031276 | 11985 32864 0 | 31574 33684 1720 | T:wbl | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
3094299 | 11367 32864 0 | 30096 33652 1752 | T:wbl | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
3319573 | 11705 32864 0 | 31536 33660 1784 | T:wbl | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
Compiler output
curve.c: curve.c:256:7: warning: unused variable 'k' [-Wunused-variable]
curve.c: int k;
curve.c: ^
curve.c: 1 warning generated.
fep256.c: fep256.c:1076:14: warning: unused variable 'temp' [-Wunused-variable]
fep256.c: smallfelem temp;
fep256.c: ^
fep256.c: fep256.c:46:30: warning: unused variable 'nistp256_curve_params' [-Wunused-const-variable]
fep256.c: static const felem_bytearray nistp256_curve_params[5] = {
fep256.c: ^
fep256.c: fep256.c:98:19: warning: unused variable 'bottom32bits' [-Wunused-const-variable]
fep256.c: static const limb bottom32bits = 0xffffffff;
fep256.c: ^
fep256.c: fep256.c:133:13: warning: unused function 'smallfelem_assign' [-Wunused-function]
fep256.c: static void smallfelem_assign(smallfelem out, const smallfelem in)
fep256.c: ^
fep256.c: fep256.c:159:13: warning: unused function 'felem_small_sum' [-Wunused-function]
fep256.c: static void felem_small_sum(felem out, const smallfelem in)
fep256.c: ^
fep256.c: fep256.c:177:13: warning: unused function 'longfelem_scalar' [-Wunused-function]
fep256.c: static void longfelem_scalar(longfelem out, const u64 scalar)
fep256.c: ^
fep256.c: fep256.c:200:13: warning: unused function 'smallfelem_neg' [-Wunused-function]
fep256.c: static void smallfelem_neg(felem out, const smallfelem small)
fep256.c: ^
fep256.c: fep256.c:243:13: warning: unused function 'felem_diff_zero107' [-Wunused-function]
fep256.c: static void felem_diff_zero107(felem out, const felem in)
fep256.c: ^
fep256.c: fep256.c:263:13: warning: unused function 'longfelem_diff' [-Wunused-function]
fep256.c: ...
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:wbl | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:wbl | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:wbl | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:wbl | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:wbl | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
curve.c: curve.c: In function 'p256dblmult_base':
curve.c: curve.c:256:7: warning: unused variable 'k' [-Wunused-variable]
curve.c: 256 | int k;
curve.c: | ^
fep256.c: fep256.c: In function 'fep256unpack':
fep256.c: fep256.c:1076:14: warning: unused variable 'temp' [-Wunused-variable]
fep256.c: 1076 | smallfelem temp;
fep256.c: | ^~~~
fep256.c: At top level:
fep256.c: fep256.c:967:1: warning: 'copy_small_conditional' defined but not used [-Wunused-function]
fep256.c: 967 | copy_small_conditional(felem out, const smallfelem in, limb mask)
fep256.c: | ^~~~~~~~~~~~~~~~~~~~~~
fep256.c: fep256.c:955:1: warning: 'copy_conditional' defined but not used [-Wunused-function]
fep256.c: 955 | copy_conditional(felem out, const felem in, limb mask)
fep256.c: | ^~~~~~~~~~~~~~~~
fep256.c: fep256.c:944:13: warning: 'smallfelem_inv_contract' defined but not used [-Wunused-function]
fep256.c: 944 | static void smallfelem_inv_contract(smallfelem out, const smallfelem in)
fep256.c: | ^~~~~~~~~~~~~~~~~~~~~~~
fep256.c: fep256.c:819:13: warning: 'smallfelem_mul_contract' defined but not used [-Wunused-function]
fep256.c: 819 | static void smallfelem_mul_contract(smallfelem out, const smallfelem in1, const smallfelem in2)
fep256.c: | ^~~~~~~~~~~~~~~~~~~~~~~
fep256.c: fep256.c:809:13: warning: 'smallfelem_square_contract' defined but not used [-Wunused-function]
fep256.c: 809 | static void smallfelem_square_contract(smallfelem out, const smallfelem in)
fep256.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~
fep256.c: fep256.c:718:13: warning: 'felem_reduce_zero105' defined but not used [-Wunused-function]
fep256.c: 718 | static void felem_reduce_zero105(felem out, const longfelem in)
fep256.c: | ^~~~~~~~~~~~~~~~~~~~
fep256.c: fep256.c:623:13: warning: 'felem_small_mul' defined but not used [-Wunused-function]
fep256.c: 623 | static void felem_small_mul(longfelem out, const smallfelem small1, const felem in2)
fep256.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:wbl | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:wbl | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:wbl | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:wbl | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Namespace violations
curve.o basep D
curve.o p256add T
curve.o p256add_total T
curve.o p256base T
curve.o p256cmov T
curve.o p256dbl T
curve.o p256dbl_total T
curve.o p256dblmult_base T
curve.o p256identity T
curve.o p256madd T
curve.o p256oncurvefinite T
curve.o p256pack T
curve.o p256scalarmult T
curve.o p256scalarmult_base T
curve.o p256scalarmult_base_fast T
curve.o p256unpack T
curve.o p256xpack T
curve.o paramb D
curve.o precomp D
fep256.o fep256add T
fep256.o fep256cmov T
fep256.o fep256inv T
fep256.o fep256iszero T
fep256.o fep256mul T
fep256.o fep256pack T
fep256.o fep256scalar T
fep256.o fep256setone T
fep256.o fep256setzero T
fep256.o fep256sqr T
fep256.o fep256sub T
fep256.o fep256unpack T
Number of similar (implementation,compiler) pairs: 9, namely:
Implementation | Compiler |
T:wbl | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:wbl | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:wbl | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:wbl | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:wbl | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:wbl | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:wbl | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:wbl | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:wbl | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |