Implementation notes: amd64, hertz, crypto_dh/gls1271

Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20240107
Operation: crypto_dh
Primitive: gls1271
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
39725382755 0 80105521 812 1992T:ref4gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122020231217
40185164726 0 8085425 812 1928T:ref4gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122020231217
43188744986 0 8064309 804 1896T:ref4gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023122020231217

Compiler output

Implementation: T:ref4
Security model: timingleaks
Compiler: clang-17 -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
gls1271.c: gls1271.c:386:2: error: call to undeclared function 'ecn2_brick_init'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
gls1271.c: 386 | ecn2_brick_init(&binst,prom,A,B,p,6,128);
gls1271.c: | ^
gls1271.c: gls1271.c:386:2: note: did you mean 'ebrick_init'?
gls1271.c: ./miracl.h:1203:13: note: 'ebrick_init' declared here
gls1271.c: 1203 | extern void ebrick_init(ebrick *,const mr_small *,big,big,big,int,int);
gls1271.c: | ^
gls1271.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang-17 -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref4
clang-17 -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref4
clang-17 -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref4

Compiler output

Implementation: T:ref4
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
gls1271.c: gls1271.c: In function 'crypto_dh_gls1271_ref4_timingleaks_keypair':
gls1271.c: gls1271.c:386:9: warning: implicit declaration of function 'ecn2_brick_init'; did you mean 'ebrick_init'? [-Wimplicit-function-declaration]
gls1271.c: 386 | ecn2_brick_init(&binst,prom,A,B,p,6,128);
gls1271.c: | ^~~~~~~~~~~~~~~
gls1271.c: | ebrick_init
try.c: /usr/bin/ld: warning: fp1271.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
try.c: /usr/bin/ld: warning: fp1271.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
measure.c: /usr/bin/ld: warning: fp1271.o: missing .note.GNU-stack section implies executable stack
measure.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker

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