Implementation notes: amd64, whosthere, crypto_dh/hecfp128fkt

Computer: whosthere
Microarchitecture: amd64; KabyLake (806e9)
Architecture: amd64
CPU ID: GenuineIntel-000806e9-bfebfbff
SUPERCOP version: 20221122
Operation: crypto_dh
Primitive: hecfp128fkt

Compiler output

Implementation: T:v02/varglv4
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
io.c: io.c:352:14: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
io.c: if((buf[i] == -1)){
io.c: ~~~~~~~^~~~~
io.c: io.c:352:14: note: remove extraneous parentheses around the comparison to silence this warning
io.c: if((buf[i] == -1)){
io.c: ~ ^ ~
io.c: io.c:352:14: note: use '=' to turn this equality comparison into an assignment
io.c: if((buf[i] == -1)){
io.c: ^~
io.c: =
io.c: io.c:379:14: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
io.c: if((buf[i] == -1)){
io.c: ~~~~~~~^~~~~
io.c: io.c:379:14: note: remove extraneous parentheses around the comparison to silence this warning
io.c: if((buf[i] == -1)){
io.c: ~ ^ ~
io.c: io.c:379:14: note: use '=' to turn this equality comparison into an assignment
io.c: if((buf[i] == -1)){
io.c: ^~
io.c: =
io.c: 2 warnings generated.
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(fp_2e128mc_x8664.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(fpx.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(smul_glv4.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(divisor.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(integer_hi_stack.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(integer_lo.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(io.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(alloc.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(array_lo.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(error.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/varglv4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/varglv4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/varglv4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/varglv4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/varglv4

Compiler output

Implementation: T:v02/varglv4
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(fp_2e128mc_x8664.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(fpx.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(smul_glv4.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(divisor.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(integer_hi_stack.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(integer_lo.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(io.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(alloc.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(array_lo.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(error.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/varglv4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/varglv4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/varglv4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/varglv4

Compiler output

Implementation: T:v02/w8s01glv4
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
io.c: io.c:352:14: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
io.c: if((buf[i] == -1)){
io.c: ~~~~~~~^~~~~
io.c: io.c:352:14: note: remove extraneous parentheses around the comparison to silence this warning
io.c: if((buf[i] == -1)){
io.c: ~ ^ ~
io.c: io.c:352:14: note: use '=' to turn this equality comparison into an assignment
io.c: if((buf[i] == -1)){
io.c: ^~
io.c: =
io.c: io.c:379:14: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
io.c: if((buf[i] == -1)){
io.c: ~~~~~~~^~~~~
io.c: io.c:379:14: note: remove extraneous parentheses around the comparison to silence this warning
io.c: if((buf[i] == -1)){
io.c: ~ ^ ~
io.c: io.c:379:14: note: use '=' to turn this equality comparison into an assignment
io.c: if((buf[i] == -1)){
io.c: ^~
io.c: =
io.c: 2 warnings generated.
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(fp_2e128mc_x8664.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(fpx.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(smul.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(smul_glv4.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(divisor.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(integer_hi_stack.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(integer_lo.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(io.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(alloc.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(array_lo.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(error.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 30, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s01glv4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s01glv4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s01glv4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s01glv4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s01glv4
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s02glv4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s02glv4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s02glv4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s02glv4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s02glv4
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s04glv4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s04glv4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s04glv4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s04glv4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s04glv4
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s08glv4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s08glv4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s08glv4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s08glv4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s08glv4
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s16glv4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s16glv4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s16glv4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s16glv4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s16glv4
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s32glv4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s32glv4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s32glv4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s32glv4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:v02/w8s32glv4

Compiler output

Implementation: T:v02/w8s01glv4
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(fp_2e128mc_x8664.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(fpx.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(smul.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(smul_glv4.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(divisor.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(integer_hi_stack.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(integer_lo.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(io.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(alloc.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(array_lo.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_dh_hecfp128fkt.a(error.o):(.bss+0x0): multiple definition of `crympix'; libcrypto_dh_hecfp128fkt.a(test.o):(.bss+0x0): first defined here
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s01glv4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s01glv4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s01glv4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s01glv4
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s02glv4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s02glv4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s02glv4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s02glv4
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s04glv4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s04glv4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s04glv4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s04glv4
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s08glv4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s08glv4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s08glv4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s08glv4
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s16glv4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s16glv4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s16glv4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s16glv4
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s32glv4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s32glv4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s32glv4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:v02/w8s32glv4