Implementation notes: amd64, saber214, crypto_dh/curve2251
Computer: saber214
Microarchitecture: amd64; Bulldozer (600f20)
Architecture: amd64
CPU ID: AuthenticAMD-00600f20-1789c3f5
SUPERCOP version: 20240808
Operation: crypto_dh
Primitive: curve2251
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
630251 | 62172 385024 1104 | 82675 385880 2752 | T:relic/amd64-clmul | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
631330 | 41021 385024 1104 | 60083 385880 2752 | T:relic/amd64-clmul | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
636841 | 33893 385024 1104 | 52537 385872 2752 | T:relic/amd64-clmul | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
639507 | 30669 385024 1104 | 48459 385872 2752 | T:relic/amd64-clmul | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
659088 | 41045 385024 1104 | 60131 385880 2752 | T:relic/amd64-avx | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
662710 | 33917 385024 1104 | 52585 385872 2752 | T:relic/amd64-avx | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
667136 | 62196 385024 1104 | 82723 385880 2752 | T:relic/amd64-avx | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
668539 | 30693 385024 1104 | 48507 385872 2752 | T:relic/amd64-avx | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
1796685 | 49317 385024 1104 | 68235 385880 2752 | T:relic/amd64-ssse3 | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
1821127 | 70468 385024 1104 | 90827 385880 2752 | T:relic/amd64-ssse3 | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
1854915 | 38965 385024 1104 | 56611 385872 2752 | T:relic/amd64-ssse3 | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
1857742 | 42189 385024 1104 | 60689 385872 2752 | T:relic/amd64-ssse3 | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
3257776 | 26959 0 8 | 61148 856 1664 | T:mpfq | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
3540255 | 12184 0 8 | 43714 856 1664 | T:mpfq | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
3643041 | 17667 0 8 | 50404 856 1664 | T:mpfq | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
3748366 | 16271 0 8 | 48700 856 1664 | T:mpfq | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240719 | 20240716 |
Compiler output
curve2_251.c: In file included from curve2_251.c:8:
curve2_251.c: In file included from ./field.h:1:
curve2_251.c: In file included from ./mpfq_2_251.h:5:
curve2_251.c: ./x86_64/mpfq_2_251.h:900:14: error: use of unknown builtin '__builtin_ia32_pslldqi128' [-Wimplicit-function-declaration]
curve2_251.c: r.s = t0 ^ SHLD(t1, 64);
curve2_251.c: ^
curve2_251.c: ./x86_64/mpfq_2_251.h:748:25: note: expanded from macro 'SHLD'
curve2_251.c: #define SHLD(x,r) (v2di)__builtin_ia32_pslldqi128 ((gcc43bugfix) (x),(r))
curve2_251.c: ^
curve2_251.c: ./x86_64/mpfq_2_251.h:900:14: error: invalid conversion between vector type 'v2di' (vector of 2 'uint64_t' values) and integer type 'int' of different size
curve2_251.c: r.s = t0 ^ SHLD(t1, 64);
curve2_251.c: ^~~~~~~~~~~~
curve2_251.c: ./x86_64/mpfq_2_251.h:748:19: note: expanded from macro 'SHLD'
curve2_251.c: #define SHLD(x,r) (v2di)__builtin_ia32_pslldqi128 ((gcc43bugfix) (x),(r))
curve2_251.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
curve2_251.c: ./x86_64/mpfq_2_251.h:907:14: error: use of unknown builtin '__builtin_ia32_psrldqi128' [-Wimplicit-function-declaration]
curve2_251.c: r.s = t2 ^ SHRD(t1, 64);
curve2_251.c: ^
curve2_251.c: ./x86_64/mpfq_2_251.h:749:25: note: expanded from macro 'SHRD'
curve2_251.c: #define SHRD(x,r) (v2di)__builtin_ia32_psrldqi128 ((gcc43bugfix) (x),(r))
curve2_251.c: ^
curve2_251.c: ./x86_64/mpfq_2_251.h:907:14: error: invalid conversion between vector type 'v2di' (vector of 2 'uint64_t' values) and integer type 'int' of different size
curve2_251.c: r.s = t2 ^ SHRD(t1, 64);
curve2_251.c: ^~~~~~~~~~~~
curve2_251.c: ./x86_64/mpfq_2_251.h:749:19: note: expanded from macro 'SHRD'
curve2_251.c: ...
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:mpfq | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:mpfq | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:mpfq | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:mpfq | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:mpfq | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
curve2_251.c: curve2_251.c:36:13: warning: 'ECcopy' defined but not used [-Wunused-function]
curve2_251.c: 36 | static void ECcopy(Kfield K, dst_ECpoint Q, src_ECpoint P) {
curve2_251.c: | ^~~~~~
keysharing.c: In file included from mpfq_2_251.h:5,
keysharing.c: from field.h:1,
keysharing.c: from keysharing.c:3:
keysharing.c: keysharing.c: In function 'crypto_dh_curve2251_mpfq_timingleaks_keypair':
keysharing.c: x86_64/mpfq_2_251.h:16:25: warning: 'K' is used uninitialized [-Wuninitialized]
keysharing.c: 16 | #define MPFQ_(X) mpfq_2_251_ ## X
keysharing.c: | ^~~~~~~~~~~
keysharing.c: keysharing.c:58:10: note: 'K' was declared here
keysharing.c: 58 | Kfield K;
keysharing.c: | ^
keysharing.c: keysharing.c: In function 'crypto_dh_curve2251_mpfq_timingleaks':
keysharing.c: keysharing.c:121:3: warning: 'K' is used uninitialized [-Wuninitialized]
keysharing.c: 121 | ECmul(K, res, base_point, key);
keysharing.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:mpfq | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:mpfq | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:mpfq | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:mpfq | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
curve2251.c: curve2251.c:21:6: warning: unused variable 'l' [-Wunused-variable]
curve2251.c: int l;
curve2251.c: ^
curve2251.c: 1 warning generated.
relic.c: In file included from relic.c:4:
relic.c: ./src/relic_rand.c:117:8: warning: implicit declaration of function 'time' is invalid in C99 [-Wimplicit-function-declaration]
relic.c: srand(time(NULL));
relic.c: ^
relic.c: In file included from relic.c:3:
relic.c: ./src/relic_bench.c:124:13: warning: unused function 'empty' [-Wunused-function]
relic.c: static void empty(int *a) {
relic.c: ^
relic.c: 2 warnings generated.
relic_eb.c: In file included from relic_eb.c:2:
relic_eb.c: ./src/eb/relic_eb_curve.c:238:6: warning: unused variable 'i' [-Wunused-variable]
relic_eb.c: int i;
relic_eb.c: ^
relic_eb.c: ./src/eb/relic_eb_curve.c:266:6: warning: unused variable 'i' [-Wunused-variable]
relic_eb.c: int i;
relic_eb.c: ^
relic_eb.c: 2 warnings generated.
relic_fb.c: In file included from relic_fb.c:11:
relic_fb.c: ./src/low/relic_fb_inv_low.c:40:6: warning: unused variable 'i' [-Wunused-variable]
relic_fb.c: int i, j, x, y, u[11];
relic_fb.c: ^
relic_fb.c: ./src/low/relic_fb_inv_low.c:40:12: warning: unused variable 'x' [-Wunused-variable]
relic_fb.c: int i, j, x, y, u[11];
relic_fb.c: ^
relic_fb.c: ./src/low/relic_fb_inv_low.c:40:15: warning: unused variable 'y' [-Wunused-variable]
relic_fb.c: int i, j, x, y, u[11];
relic_fb.c: ^
relic_fb.c: ./src/low/relic_fb_inv_low.c:43:12: warning: unused variable 'chain' [-Wunused-variable]
relic_fb.c: int len, *chain = fb_poly_get_chain(&len);
relic_fb.c: ^
relic_fb.c: 4 warnings generated.
relic_low.S: relic_low.S:5:1: error: changed section type for .note.GNU-stack, expected: 0x7
relic_low.S: .section .note.GNU-stack,"",@progbits
relic_low.S: ^
Number of similar (implementation,compiler) pairs: 10, namely:
Implementation | Compiler |
T:relic/amd64-avx | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-avx | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-avx | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-avx | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-avx | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-clmul | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-clmul | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-clmul | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-clmul | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-clmul | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
curve2251.c: curve2251.c: In function 'crypto_dh_curve2251_relic_amd64_avx_timingleaks_keypair':
curve2251.c: curve2251.c:21:13: warning: unused variable 'l' [-Wunused-variable]
curve2251.c: 21 | int l;
curve2251.c: | ^
relic.c: In file included from relic.c:4:
relic.c: src/relic_rand.c: In function 'rand_init':
relic.c: src/relic_rand.c:117:15: warning: implicit declaration of function 'time' [-Wimplicit-function-declaration]
relic.c: 117 | srand(time(NULL));
relic.c: | ^~~~
relic.c: In file included from relic.c:3:
relic.c: At top level:
relic.c: src/relic_bench.c:124:13: warning: 'empty' defined but not used [-Wunused-function]
relic.c: 124 | static void empty(int *a) {
relic.c: | ^~~~~
relic_eb.c: In file included from relic_eb.c:2:
relic_eb.c: src/eb/relic_eb_curve.c: In function 'eb_curve_init':
relic_eb.c: src/eb/relic_eb_curve.c:238:13: warning: unused variable 'i' [-Wunused-variable]
relic_eb.c: 238 | int i;
relic_eb.c: | ^
relic_eb.c: src/eb/relic_eb_curve.c: In function 'eb_curve_clean':
relic_eb.c: src/eb/relic_eb_curve.c:266:13: warning: unused variable 'i' [-Wunused-variable]
relic_eb.c: 266 | int i;
relic_eb.c: | ^
relic_fb.c: In file included from relic_fb.c:11:
relic_fb.c: src/low/relic_fb_inv_low.c: In function 'fb_invn_low':
relic_fb.c: src/low/relic_fb_inv_low.c:43:19: warning: unused variable 'chain' [-Wunused-variable]
relic_fb.c: 43 | int len, *chain = fb_poly_get_chain(&len);
relic_fb.c: | ^~~~~
relic_fb.c: src/low/relic_fb_inv_low.c:40:22: warning: unused variable 'y' [-Wunused-variable]
relic_fb.c: 40 | int i, j, x, y, u[11];
relic_fb.c: | ^
relic_fb.c: src/low/relic_fb_inv_low.c:40:19: warning: unused variable 'x' [-Wunused-variable]
relic_fb.c: 40 | int i, j, x, y, u[11];
relic_fb.c: | ^
relic_fb.c: src/low/relic_fb_inv_low.c:40:13: warning: unused variable 'i' [-Wunused-variable]
relic_fb.c: 40 | int i, j, x, y, u[11];
relic_fb.c: | ^
try.c: /usr/bin/ld: libcrypto_dh_curve2251.a(relic_low.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
try.c: /usr/bin/ld: libcrypto_dh_curve2251.a(relic_low.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
measure.c: /usr/bin/ld: libcrypto_dh_curve2251.a(relic_low.o): warning: relocation in read-only section `.eh_frame'
measure.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:relic/amd64-avx | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-avx | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-avx | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-avx | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
curve2251.c: curve2251.c: In function 'crypto_dh_curve2251_relic_amd64_clmul_timingleaks_keypair':
curve2251.c: curve2251.c:21:13: warning: unused variable 'l' [-Wunused-variable]
curve2251.c: 21 | int l;
curve2251.c: | ^
relic.c: In file included from relic.c:4:
relic.c: src/relic_rand.c: In function 'rand_init':
relic.c: src/relic_rand.c:117:15: warning: implicit declaration of function 'time' [-Wimplicit-function-declaration]
relic.c: 117 | srand(time(NULL));
relic.c: | ^~~~
relic.c: In file included from relic.c:3:
relic.c: At top level:
relic.c: src/relic_bench.c:124:13: warning: 'empty' defined but not used [-Wunused-function]
relic.c: 124 | static void empty(int *a) {
relic.c: | ^~~~~
relic_eb.c: In file included from relic_eb.c:2:
relic_eb.c: src/eb/relic_eb_curve.c: In function 'eb_curve_init':
relic_eb.c: src/eb/relic_eb_curve.c:238:13: warning: unused variable 'i' [-Wunused-variable]
relic_eb.c: 238 | int i;
relic_eb.c: | ^
relic_eb.c: src/eb/relic_eb_curve.c: In function 'eb_curve_clean':
relic_eb.c: src/eb/relic_eb_curve.c:266:13: warning: unused variable 'i' [-Wunused-variable]
relic_eb.c: 266 | int i;
relic_eb.c: | ^
relic_fb.c: In file included from relic_fb.c:11:
relic_fb.c: src/low/relic_fb_inv_low.c: In function 'fb_invn_low':
relic_fb.c: src/low/relic_fb_inv_low.c:43:19: warning: unused variable 'chain' [-Wunused-variable]
relic_fb.c: 43 | int len, *chain = fb_poly_get_chain(&len);
relic_fb.c: | ^~~~~
relic_fb.c: src/low/relic_fb_inv_low.c:40:22: warning: unused variable 'y' [-Wunused-variable]
relic_fb.c: 40 | int i, j, x, y, u[11];
relic_fb.c: | ^
relic_fb.c: src/low/relic_fb_inv_low.c:40:19: warning: unused variable 'x' [-Wunused-variable]
relic_fb.c: 40 | int i, j, x, y, u[11];
relic_fb.c: | ^
relic_fb.c: src/low/relic_fb_inv_low.c:40:13: warning: unused variable 'i' [-Wunused-variable]
relic_fb.c: 40 | int i, j, x, y, u[11];
relic_fb.c: | ^
try.c: /usr/bin/ld: libcrypto_dh_curve2251.a(relic_low.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
try.c: /usr/bin/ld: libcrypto_dh_curve2251.a(relic_low.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
measure.c: /usr/bin/ld: libcrypto_dh_curve2251.a(relic_low.o): warning: relocation in read-only section `.eh_frame'
measure.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:relic/amd64-clmul | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-clmul | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-clmul | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-clmul | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
curve2251.c: curve2251.c:21:6: warning: unused variable 'l' [-Wunused-variable]
curve2251.c: int l;
curve2251.c: ^
curve2251.c: 1 warning generated.
relic.c: In file included from relic.c:4:
relic.c: ./src/relic_rand.c:117:8: warning: implicit declaration of function 'time' is invalid in C99 [-Wimplicit-function-declaration]
relic.c: srand(time(NULL));
relic.c: ^
relic.c: In file included from relic.c:3:
relic.c: ./src/relic_bench.c:124:13: warning: unused function 'empty' [-Wunused-function]
relic.c: static void empty(int *a) {
relic.c: ^
relic.c: 2 warnings generated.
relic_eb.c: In file included from relic_eb.c:2:
relic_eb.c: ./src/eb/relic_eb_curve.c:238:6: warning: unused variable 'i' [-Wunused-variable]
relic_eb.c: int i;
relic_eb.c: ^
relic_eb.c: ./src/eb/relic_eb_curve.c:266:6: warning: unused variable 'i' [-Wunused-variable]
relic_eb.c: int i;
relic_eb.c: ^
relic_eb.c: 2 warnings generated.
relic_fb.c: In file included from relic_fb.c:11:
relic_fb.c: ./src/low/relic_fb_inv_low.c:40:6: warning: unused variable 'i' [-Wunused-variable]
relic_fb.c: int i, j, x, y, u[11];
relic_fb.c: ^
relic_fb.c: ./src/low/relic_fb_inv_low.c:40:12: warning: unused variable 'x' [-Wunused-variable]
relic_fb.c: int i, j, x, y, u[11];
relic_fb.c: ^
relic_fb.c: ./src/low/relic_fb_inv_low.c:40:15: warning: unused variable 'y' [-Wunused-variable]
relic_fb.c: int i, j, x, y, u[11];
relic_fb.c: ^
relic_fb.c: ./src/low/relic_fb_inv_low.c:43:12: warning: unused variable 'chain' [-Wunused-variable]
relic_fb.c: int len, *chain = fb_poly_get_chain(&len);
relic_fb.c: ^
relic_fb.c: 4 warnings generated.
relic_low.S: ./src/low/relic_fb_mul_low.s:2339:2: error: changed section type for .note.GNU-stack, expected: 0x7
relic_low.S: .section .note.GNU-stack,"",@progbits
relic_low.S: ^
relic_low.S: relic_low.S:5:1: error: changed section type for .note.GNU-stack, expected: 0x7
relic_low.S: .section .note.GNU-stack,"",@progbits
relic_low.S: ^
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:relic/amd64-ssse3 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-ssse3 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-ssse3 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-ssse3 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:relic/amd64-ssse3 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
curve2251.c: curve2251.c: In function 'crypto_dh_curve2251_relic_amd64_ssse3_timingleaks_keypair':
curve2251.c: curve2251.c:21:13: warning: unused variable 'l' [-Wunused-variable]
curve2251.c: 21 | int l;
curve2251.c: | ^
relic.c: In file included from relic.c:4:
relic.c: src/relic_rand.c: In function 'rand_init':
relic.c: src/relic_rand.c:117:15: warning: implicit declaration of function 'time' [-Wimplicit-function-declaration]
relic.c: 117 | srand(time(NULL));
relic.c: | ^~~~
relic.c: In file included from relic.c:3:
relic.c: At top level:
relic.c: src/relic_bench.c:124:13: warning: 'empty' defined but not used [-Wunused-function]
relic.c: 124 | static void empty(int *a) {
relic.c: | ^~~~~
relic_eb.c: In file included from relic_eb.c:2:
relic_eb.c: src/eb/relic_eb_curve.c: In function 'eb_curve_init':
relic_eb.c: src/eb/relic_eb_curve.c:238:13: warning: unused variable 'i' [-Wunused-variable]
relic_eb.c: 238 | int i;
relic_eb.c: | ^
relic_eb.c: src/eb/relic_eb_curve.c: In function 'eb_curve_clean':
relic_eb.c: src/eb/relic_eb_curve.c:266:13: warning: unused variable 'i' [-Wunused-variable]
relic_eb.c: 266 | int i;
relic_eb.c: | ^
relic_fb.c: In file included from relic_fb.c:11:
relic_fb.c: src/low/relic_fb_inv_low.c: In function 'fb_invn_low':
relic_fb.c: src/low/relic_fb_inv_low.c:43:19: warning: unused variable 'chain' [-Wunused-variable]
relic_fb.c: 43 | int len, *chain = fb_poly_get_chain(&len);
relic_fb.c: | ^~~~~
relic_fb.c: src/low/relic_fb_inv_low.c:40:22: warning: unused variable 'y' [-Wunused-variable]
relic_fb.c: 40 | int i, j, x, y, u[11];
relic_fb.c: | ^
relic_fb.c: src/low/relic_fb_inv_low.c:40:19: warning: unused variable 'x' [-Wunused-variable]
relic_fb.c: 40 | int i, j, x, y, u[11];
relic_fb.c: | ^
relic_fb.c: src/low/relic_fb_inv_low.c:40:13: warning: unused variable 'i' [-Wunused-variable]
relic_fb.c: 40 | int i, j, x, y, u[11];
relic_fb.c: | ^
try.c: /usr/bin/ld: libcrypto_dh_curve2251.a(relic_low.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
try.c: /usr/bin/ld: libcrypto_dh_curve2251.a(relic_low.o): warning: relocation in read-only section `.eh_frame'
try.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
measure.c: /usr/bin/ld: libcrypto_dh_curve2251.a(relic_low.o): warning: relocation in read-only section `.eh_frame'
measure.c: /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:relic/amd64-ssse3 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-ssse3 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-ssse3 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-ssse3 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
curve2_251.o ECmul T
curve2_251.o ECprint T
curve2_251.o K B
mpfq_2_251.o mpfq_2_251_print T
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:mpfq | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:mpfq | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:mpfq | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:mpfq | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
relic.o SHA1FinalBits T
relic.o SHA1Input T
relic.o SHA1Reset T
relic.o SHA1Result T
relic.o bench_after T
relic.o bench_before T
relic.o bench_compute T
relic.o bench_print T
relic.o bench_reset T
relic.o bench_total T
relic.o core_clean T
relic.o core_ctx B
relic.o core_init T
relic.o dv_copy T
relic.o dv_print T
relic.o dv_zero T
relic.o md_map_shone T
relic.o md_map_shone_final T
relic.o md_map_shone_init T
relic.o md_map_shone_state T
relic.o md_map_shone_update T
relic.o rand_bytes T
relic.o rand_clean T
relic.o rand_init T
relic.o rand_seed T
relic.o util_bits_dig T
relic.o util_conv_big T
relic.o util_conv_char T
relic.o util_conv_endian T
relic.o util_conv_little T
relic.o util_printf T
relic_bn.o bn_abs T
relic_bn.o bn_add T
relic_bn.o bn_add1_low T
relic_bn.o bn_add_dig T
relic_bn.o bn_addn_low T
relic_bn.o bn_bits T
relic_bn.o bn_clean T
relic_bn.o bn_cmp T
relic_bn.o bn_cmp1_low T
relic_bn.o bn_cmp_abs T
relic_bn.o bn_cmp_dig T
relic_bn.o bn_cmpn_low T
relic_bn.o bn_copy T
relic_bn.o bn_dbl T
relic_bn.o bn_get_bit T
relic_bn.o bn_get_dig T
relic_bn.o bn_grow T
relic_bn.o bn_ham T
relic_bn.o bn_hlv T
relic_bn.o bn_init T
relic_bn.o bn_is_even T
relic_bn.o bn_is_zero T
relic_bn.o bn_lsh T
relic_bn.o bn_lsh1_low T
relic_bn.o bn_lshb_low T
relic_bn.o bn_lshd_low T
relic_bn.o bn_neg T
relic_bn.o bn_print T
relic_bn.o bn_rand T
relic_bn.o bn_read_bin T
relic_bn.o bn_read_raw T
relic_bn.o bn_rsh T
relic_bn.o bn_rsh1_low T
relic_bn.o bn_rshb_low T
relic_bn.o bn_rshd_low T
relic_bn.o bn_set_2b T
relic_bn.o bn_set_bit T
relic_bn.o bn_set_dig T
relic_bn.o bn_sign T
relic_bn.o bn_size_bin T
relic_bn.o bn_size_raw T
relic_bn.o bn_sub T
relic_bn.o bn_sub1_low T
relic_bn.o bn_sub_dig T
relic_bn.o bn_subn_low T
relic_bn.o bn_test_bit T
relic_bn.o bn_trim T
relic_bn.o bn_write_bin T
relic_bn.o bn_write_raw T
relic_bn.o bn_zero T
relic_eb.o eb_add_projc T
relic_eb.o eb_cmp T
relic_eb.o eb_copy T
relic_eb.o eb_curve_clean T
relic_eb.o eb_curve_get_a T
relic_eb.o eb_curve_get_b T
relic_eb.o eb_curve_get_c T
relic_eb.o eb_curve_get_cof T
relic_eb.o eb_curve_get_gen T
relic_eb.o eb_curve_get_ord T
relic_eb.o eb_curve_get_s0 T
relic_eb.o eb_curve_get_s1 T
relic_eb.o eb_curve_get_vm T
relic_eb.o eb_curve_init T
relic_eb.o eb_curve_is_kbltz T
relic_eb.o eb_curve_is_super T
relic_eb.o eb_curve_opt_a T
relic_eb.o eb_curve_opt_b T
relic_eb.o eb_curve_opt_c T
relic_eb.o eb_curve_set_kbltz T
relic_eb.o eb_curve_set_ordin T
relic_eb.o eb_curve_set_super T
relic_eb.o eb_dbl_projc T
relic_eb.o eb_is_infty T
relic_eb.o eb_mul_fix_combd T
relic_eb.o eb_mul_lodah T
relic_eb.o eb_mul_pre_combd T
relic_eb.o eb_norm T
relic_eb.o eb_norm_sim T
relic_eb.o eb_print T
relic_eb.o eb_set_infty T
relic_eb.o gen_tab D
relic_fb.o fb_add T
relic_fb.o fb_add_dig T
relic_fb.o fb_bits T
relic_fb.o fb_cmp T
relic_fb.o fb_cmp1_low T
relic_fb.o fb_cmp_dig T
relic_fb.o fb_cmpn_low T
relic_fb.o fb_copy T
relic_fb.o fb_get_bit T
relic_fb.o fb_inv_lower T
relic_fb.o fb_inv_sim T
relic_fb.o fb_invn_low T
relic_fb.o fb_is_zero T
relic_fb.o fb_itr_basic T
relic_fb.o fb_itr_pre_quick T
relic_fb.o fb_itr_quick T
relic_fb.o fb_lsh T
relic_fb.o fb_lsh1_low T
relic_fb.o fb_lshadd_low T
relic_fb.o fb_lshb_low T
relic_fb.o fb_lshd_low T
relic_fb.o fb_mul_dig T
relic_fb.o fb_mul_integ T
relic_fb.o fb_neg T
relic_fb.o fb_poly_add T
relic_fb.o fb_poly_clean T
relic_fb.o fb_poly_get T
relic_fb.o fb_poly_get_chain T
relic_fb.o fb_poly_get_rdc T
relic_fb.o fb_poly_get_slv T
relic_fb.o fb_poly_get_srz T
relic_fb.o fb_poly_get_trc T
relic_fb.o fb_poly_init T
relic_fb.o fb_poly_set_dense T
relic_fb.o fb_poly_set_penta T
relic_fb.o fb_poly_set_trino T
relic_fb.o fb_poly_sub T
relic_fb.o fb_poly_tab_sqr T
relic_fb.o fb_poly_tab_srz T
relic_fb.o fb_print T
relic_fb.o fb_rand T
relic_fb.o fb_rdc1_low T
relic_fb.o fb_read T
relic_fb.o fb_rsh T
relic_fb.o fb_rsh1_low T
relic_fb.o fb_rshb_low T
relic_fb.o fb_rshd_low T
relic_fb.o fb_set_bit T
relic_fb.o fb_set_dig T
relic_fb.o fb_size T
relic_fb.o fb_sqr_integ T
relic_fb.o fb_sub T
relic_fb.o fb_sub_dig T
relic_fb.o fb_test_bit T
relic_fb.o fb_write T
relic_fb.o fb_zero T
relic_fb.o inv_tab D
relic_low.o fb_add1_low T
relic_low.o fb_add2_low T
relic_low.o fb_addd_low T
relic_low.o fb_addn_low T
relic_low.o fb_itrn_low T
relic_low.o fb_mul1_low T
relic_low.o fb_muld_low T
relic_low.o fb_mulm_low T
relic_low.o fb_muln_low T
relic_low.o fb_rdcn_low2 T
relic_low.o fb_sqrl_low T
relic_low.o fb_sqrm_low T
relic_low.o fb_sqrn_low T
Number of similar (implementation,compiler) pairs: 8, namely:
Implementation | Compiler |
T:relic/amd64-avx | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-avx | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-avx | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-avx | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-clmul | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-clmul | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-clmul | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-clmul | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
relic.o SHA1FinalBits T
relic.o SHA1Input T
relic.o SHA1Reset T
relic.o SHA1Result T
relic.o bench_after T
relic.o bench_before T
relic.o bench_compute T
relic.o bench_print T
relic.o bench_reset T
relic.o bench_total T
relic.o core_clean T
relic.o core_ctx B
relic.o core_init T
relic.o dv_copy T
relic.o dv_print T
relic.o dv_zero T
relic.o md_map_shone T
relic.o md_map_shone_final T
relic.o md_map_shone_init T
relic.o md_map_shone_state T
relic.o md_map_shone_update T
relic.o rand_bytes T
relic.o rand_clean T
relic.o rand_init T
relic.o rand_seed T
relic.o util_bits_dig T
relic.o util_conv_big T
relic.o util_conv_char T
relic.o util_conv_endian T
relic.o util_conv_little T
relic.o util_printf T
relic_bn.o bn_abs T
relic_bn.o bn_add T
relic_bn.o bn_add1_low T
relic_bn.o bn_add_dig T
relic_bn.o bn_addn_low T
relic_bn.o bn_bits T
relic_bn.o bn_clean T
relic_bn.o bn_cmp T
relic_bn.o bn_cmp1_low T
relic_bn.o bn_cmp_abs T
relic_bn.o bn_cmp_dig T
relic_bn.o bn_cmpn_low T
relic_bn.o bn_copy T
relic_bn.o bn_dbl T
relic_bn.o bn_get_bit T
relic_bn.o bn_get_dig T
relic_bn.o bn_grow T
relic_bn.o bn_ham T
relic_bn.o bn_hlv T
relic_bn.o bn_init T
relic_bn.o bn_is_even T
relic_bn.o bn_is_zero T
relic_bn.o bn_lsh T
relic_bn.o bn_lsh1_low T
relic_bn.o bn_lshb_low T
relic_bn.o bn_lshd_low T
relic_bn.o bn_neg T
relic_bn.o bn_print T
relic_bn.o bn_rand T
relic_bn.o bn_read_bin T
relic_bn.o bn_read_raw T
relic_bn.o bn_rsh T
relic_bn.o bn_rsh1_low T
relic_bn.o bn_rshb_low T
relic_bn.o bn_rshd_low T
relic_bn.o bn_set_2b T
relic_bn.o bn_set_bit T
relic_bn.o bn_set_dig T
relic_bn.o bn_sign T
relic_bn.o bn_size_bin T
relic_bn.o bn_size_raw T
relic_bn.o bn_sub T
relic_bn.o bn_sub1_low T
relic_bn.o bn_sub_dig T
relic_bn.o bn_subn_low T
relic_bn.o bn_test_bit T
relic_bn.o bn_trim T
relic_bn.o bn_write_bin T
relic_bn.o bn_write_raw T
relic_bn.o bn_zero T
relic_eb.o eb_add_projc T
relic_eb.o eb_cmp T
relic_eb.o eb_copy T
relic_eb.o eb_curve_clean T
relic_eb.o eb_curve_get_a T
relic_eb.o eb_curve_get_b T
relic_eb.o eb_curve_get_c T
relic_eb.o eb_curve_get_cof T
relic_eb.o eb_curve_get_gen T
relic_eb.o eb_curve_get_ord T
relic_eb.o eb_curve_get_s0 T
relic_eb.o eb_curve_get_s1 T
relic_eb.o eb_curve_get_vm T
relic_eb.o eb_curve_init T
relic_eb.o eb_curve_is_kbltz T
relic_eb.o eb_curve_is_super T
relic_eb.o eb_curve_opt_a T
relic_eb.o eb_curve_opt_b T
relic_eb.o eb_curve_opt_c T
relic_eb.o eb_curve_set_kbltz T
relic_eb.o eb_curve_set_ordin T
relic_eb.o eb_curve_set_super T
relic_eb.o eb_dbl_projc T
relic_eb.o eb_is_infty T
relic_eb.o eb_mul_fix_combd T
relic_eb.o eb_mul_lodah T
relic_eb.o eb_mul_pre_combd T
relic_eb.o eb_norm T
relic_eb.o eb_norm_sim T
relic_eb.o eb_print T
relic_eb.o eb_set_infty T
relic_eb.o gen_tab D
relic_fb.o fb_add T
relic_fb.o fb_add_dig T
relic_fb.o fb_bits T
relic_fb.o fb_cmp T
relic_fb.o fb_cmp1_low T
relic_fb.o fb_cmp_dig T
relic_fb.o fb_cmpn_low T
relic_fb.o fb_copy T
relic_fb.o fb_get_bit T
relic_fb.o fb_inv_lower T
relic_fb.o fb_inv_sim T
relic_fb.o fb_invn_low T
relic_fb.o fb_is_zero T
relic_fb.o fb_itr_basic T
relic_fb.o fb_itr_pre_quick T
relic_fb.o fb_itr_quick T
relic_fb.o fb_lsh T
relic_fb.o fb_lsh1_low T
relic_fb.o fb_lshadd_low T
relic_fb.o fb_lshb_low T
relic_fb.o fb_lshd_low T
relic_fb.o fb_mul_dig T
relic_fb.o fb_mul_integ T
relic_fb.o fb_neg T
relic_fb.o fb_poly_add T
relic_fb.o fb_poly_clean T
relic_fb.o fb_poly_get T
relic_fb.o fb_poly_get_chain T
relic_fb.o fb_poly_get_rdc T
relic_fb.o fb_poly_get_slv T
relic_fb.o fb_poly_get_srz T
relic_fb.o fb_poly_get_trc T
relic_fb.o fb_poly_init T
relic_fb.o fb_poly_set_dense T
relic_fb.o fb_poly_set_penta T
relic_fb.o fb_poly_set_trino T
relic_fb.o fb_poly_sub T
relic_fb.o fb_poly_tab_sqr T
relic_fb.o fb_poly_tab_srz T
relic_fb.o fb_print T
relic_fb.o fb_rand T
relic_fb.o fb_rdc1_low T
relic_fb.o fb_read T
relic_fb.o fb_rsh T
relic_fb.o fb_rsh1_low T
relic_fb.o fb_rshb_low T
relic_fb.o fb_rshd_low T
relic_fb.o fb_set_bit T
relic_fb.o fb_set_dig T
relic_fb.o fb_size T
relic_fb.o fb_sqr_integ T
relic_fb.o fb_sub T
relic_fb.o fb_sub_dig T
relic_fb.o fb_test_bit T
relic_fb.o fb_write T
relic_fb.o fb_zero T
relic_fb.o inv_tab D
relic_low.o fb_add1_low T
relic_low.o fb_add2_low T
relic_low.o fb_addd_low T
relic_low.o fb_addn_low T
relic_low.o fb_itrn_low T
relic_low.o fb_mul1_low T
relic_low.o fb_muld_low T
relic_low.o fb_mulm_low T
relic_low.o fb_muln_low T
relic_low.o fb_sqrl_low T
relic_low.o fb_sqrm_low T
relic_low.o fb_sqrn_low T
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:relic/amd64-ssse3 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-ssse3 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-ssse3 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:relic/amd64-ssse3 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |