Implementation notes: amd64, ryzen, crypto_dh/nist521gs

Computer: ryzen
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20170904
Operation: crypto_dh
Primitive: nist521gs
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
4168380? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017091220170904
4479060? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017091220170904
4479510? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017091220170904
4482000? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017091220170904
4482630? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
4482780? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017091220170904
4483380? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
4483560? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017091220170904
4485180? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017091220170904
4485780? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017091220170904
4486230? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017091220170904
4486290? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017091220170904
4487250? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017091220170904
4489050? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017091220170904
4501950? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017091220170904
4501950? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
4502220? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017091220170904
4503330? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017091220170904
4504140? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017091220170904
4505220? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017091220170904
4506600? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017091220170904
4508910? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
4515600? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017091220170904
4521510? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
4523220? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
4544460? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
4545840? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
4623930? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017091220170904
4658160? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017091220170904
4667940? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
4669470? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
4669650? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017091220170904
4669770? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
4671690? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
4677990? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017091220170904
4678320? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017091220170904
4691010? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017091220170904
4699800? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017091220170904
4699830? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017091220170904
4704990? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091220170904
4707420? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017091220170904
4707630? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017091220170904
4709220? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017091220170904
4710120? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017091220170904
4712130? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017091220170904
4712760? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017091220170904
4715760? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017091220170904
4730790? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017091220170904
4738770? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091220170904
4787640? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
4790370? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
4790940? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
4800660? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
4808130? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017091220170904
4823250? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017091220170904
4823970? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091220170904
4826100? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017091220170904
4826550? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017091220170904
4828590? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017091220170904
4828740? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091220170904
4831200? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017091220170904
4831290? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
4833420? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017091220170904
4833420? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
4833990? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017091220170904
4837290? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017091220170904
4837470? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017091220170904
4840590? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
4841040? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017091220170904
4842390? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017091220170904
4842540? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017091220170904
4842810? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
4853640? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
4854540? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
4859400? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017091220170904
4860900? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
4861380? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091220170904
4864650? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017091220170904
4929810? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
4939950? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
4948440? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
4951260? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
4988880? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017091220170904
4991610? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017091220170904
5000250? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017091220170904
5017170? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017091220170904
6660930? ? ?? ? ?reficc_-no-vec2017091220170904
7343190? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017091220170904
7349970? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017091220170904
7353450? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017091220170904
7355190? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
7358730? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017091220170904
7364190? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017091220170904
7368060? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017091220170904
7369590? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
7373070? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
7375260? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017091220170904
7376520? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017091220170904
7380420? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017091220170904
7384020? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017091220170904
7386450? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017091220170904
7390020? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017091220170904
7391610? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017091220170904
7395180? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017091220170904
7397040? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017091220170904
7398960? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017091220170904
7401270? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017091220170904
7415100? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017091220170904
7490790? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017091220170904
7518570? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017091220170904
7541940? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017091220170904
7610880? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017091220170904
10422120? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
11200320? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017091220170904
11685960? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017091220170904
12062820? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017091220170904
12071370? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091220170904
14678550? ? ?? ? ?refgcc_-funroll-loops2017091220170904
14682960? ? ?? ? ?refgcc2017091220170904
14690730? ? ?? ? ?refcc2017091220170904
17060130? ? ?? ? ?reficc2017091220170904
18442920? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
18475020? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017091220170904

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: cc
dh.c: dh.c: In function 'crypto_dh_nist521gs_ref_keypair':
dh.c: dh.c:831:2: warning: implicit declaration of function 'randombytes' [-Wimplicit-function-declaration]
dh.c: randombytes(sk,PANES-1);
dh.c: ^~~~~~~~~~~
measure.c: /usr/bin/ld: /root/supercop-20170904/supercop-data/ryzen/amd64/lib/fastrandombytes.o: relocation R_X86_64_32 against `g' can not be used when making a shared object; recompile with -fPIC
measure.c: /usr/bin/ld: /root/supercop-20170904/supercop-data/ryzen/amd64/lib/libsupercop.a(crypto_rng_aes256_ref-rng.o): relocation R_X86_64_32 against `nonce' can not be used when making a shared object; recompile with -fPIC
measure.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
measure.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 107, namely:
CompilerImplementations
cc ref
gcc ref
gcc -O2 -fomit-frame-pointer ref
gcc -O3 -fomit-frame-pointer ref
gcc -O -fomit-frame-pointer ref
gcc -Os -fomit-frame-pointer ref
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops ref
gcc -funroll-loops -O2 -fomit-frame-pointer ref
gcc -funroll-loops -O3 -fomit-frame-pointer ref
gcc -funroll-loops -O -fomit-frame-pointer ref
gcc -funroll-loops -Os -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc -m64 -O2 -fomit-frame-pointer ref
gcc -m64 -O3 -fomit-frame-pointer ref
gcc -m64 -O -fomit-frame-pointer ref
gcc -m64 -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -march=barcelona -O2 -fomit-frame-pointer ref
gcc -march=barcelona -O3 -fomit-frame-pointer ref
gcc -march=barcelona -O -fomit-frame-pointer ref
gcc -march=barcelona -Os -fomit-frame-pointer ref
gcc -march=k8 -O2 -fomit-frame-pointer ref
gcc -march=k8 -O3 -fomit-frame-pointer ref
gcc -march=k8 -O -fomit-frame-pointer ref
gcc -march=k8 -Os -fomit-frame-pointer ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -O2 -fomit-frame-pointer ref
gcc -march=nocona -O3 -fomit-frame-pointer ref
gcc -march=nocona -O -fomit-frame-pointer ref
gcc -march=nocona -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
dh.c: dh.c:831:2: warning: implicit declaration of function 'randombytes' is invalid in C99 [-Wimplicit-function-declaration]
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c: 1 warning generated.
measure.c: /usr/bin/ld: /root/supercop-20170904/supercop-data/ryzen/amd64/lib/fastrandombytes.o: relocation R_X86_64_32 against `g' can not be used when making a shared object; recompile with -fPIC
measure.c: /usr/bin/ld: /root/supercop-20170904/supercop-data/ryzen/amd64/lib/libsupercop.a(crypto_rng_aes256_ref-rng.o): relocation R_X86_64_32 against `nonce' can not be used when making a shared object; recompile with -fPIC
measure.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
measure.c: clang-4.0: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
dh.c: dh.c: In function 'crypto_dh_nist521gs_ref_keypair':
dh.c: dh.c:831:2: warning: implicit declaration of function 'randombytes' [-Wimplicit-function-declaration]
dh.c: randombytes(sk,PANES-1);
dh.c: ^~~~~~~~~~~
measure.c: /usr/bin/ld: /root/supercop-20170904/supercop-data/ryzen/amd64/lib/fastrandombytes.o: relocation R_X86_64_32 against `g' can not be used when making a shared object; recompile with -fPIC
measure.c: /usr/bin/ld: /root/supercop-20170904/supercop-data/ryzen/amd64/lib/libsupercop.a(crypto_rng_aes256_ref-rng.o): relocation R_X86_64_32 against `nonce' can not be used when making a shared object; recompile with -fPIC
measure.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
measure.c: collect2: error: ld returned 1 exit status
dh.c: dh.c: In function 'crypto_dh_nist521gs_ref_keypair':
dh.c: dh.c:831:2: warning: implicit declaration of function 'randombytes' [-Wimplicit-function-declaration]
dh.c: randombytes(sk,PANES-1);
dh.c: ^~~~~~~~~~~
measure.c: /usr/bin/ld: /root/supercop-20170904/supercop-data/ryzen/amd64/lib/fastrandombytes.o: relocation R_X86_64_32 against `g' can not be used when making a shared object; recompile with -fPIC
measure.c: /usr/bin/ld: /root/supercop-20170904/supercop-data/ryzen/amd64/lib/libsupercop.a(crypto_rng_aes256_ref-rng.o): relocation R_X86_64_32 against `nonce' can not be used when making a shared object; recompile with -fPIC
measure.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
measure.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: icc
dh.c: dh.c(831): warning #266: function "randombytes" declared implicitly
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c:

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
icc ref
icc -no-vec ref

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: icc -O1 -static
dh.c: dh.c(831): warning #266: function "randombytes" declared implicitly
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c:
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
icc -O1 -static ref
icc -O1 -static -no-vec ref
icc -O2 -static ref
icc -O2 -static -no-vec ref
icc -O3 -static ref
icc -O3 -static -no-vec ref
icc -Os -static ref
icc -Os -static -no-vec ref
icc -m64 -O1 -static ref
icc -m64 -O1 -static -no-vec ref
icc -m64 -O2 -static ref
icc -m64 -O2 -static -no-vec ref
icc -m64 -O3 -static ref
icc -m64 -O3 -static -no-vec ref
icc -m64 -Os -static ref
icc -m64 -Os -static -no-vec ref

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: icc -O1 -xB -static
dh.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
dh.c: dh.c(831): warning #266: function "randombytes" declared implicitly
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c:
try.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xB -static ref
icc -O1 -xB -static -no-vec ref
icc -O2 -xB -static ref
icc -O2 -xB -static -no-vec ref
icc -O3 -xB -static ref
icc -O3 -xB -static -no-vec ref
icc -Os -xB -static ref
icc -Os -xB -static -no-vec ref

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: icc -O1 -xK -static
dh.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
dh.c: dh.c(831): warning #266: function "randombytes" declared implicitly
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c:
try.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xK -static ref
icc -O1 -xK -static -no-vec ref
icc -O2 -xK -static ref
icc -O2 -xK -static -no-vec ref
icc -O3 -xK -static ref
icc -O3 -xK -static -no-vec ref
icc -Os -xK -static ref
icc -Os -xK -static -no-vec ref

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: icc -O1 -xN -static
dh.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
dh.c: dh.c(831): warning #266: function "randombytes" declared implicitly
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c:
try.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xN -static ref
icc -O1 -xN -static -no-vec ref
icc -O2 -xN -static ref
icc -O2 -xN -static -no-vec ref
icc -O3 -xN -static ref
icc -O3 -xN -static -no-vec ref
icc -Os -xN -static ref
icc -Os -xN -static -no-vec ref

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: icc -O1 -xW -static
dh.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
dh.c: dh.c(831): warning #266: function "randombytes" declared implicitly
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c:
try.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xW -static ref
icc -O1 -xW -static -no-vec ref
icc -O2 -xW -static ref
icc -O2 -xW -static -no-vec ref
icc -O3 -xW -static ref
icc -O3 -xW -static -no-vec ref
icc -Os -xW -static ref
icc -Os -xW -static -no-vec ref

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: icc -fast
dh.c: dh.c(831): warning #266: function "randombytes" declared implicitly
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c:
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/knownrandombytes.o; was the source file compiled with -ipo
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/kernelrandombytes.o; was the source file compiled with -ipo
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/cpucycles.o; was the source file compiled with -ipo
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -fast ref

Compiler output

Implementation: crypto_dh/nist521gs/ref
Compiler: icc -m64 -xHost -vec-report0 -static
dh.c: icc: command line remark #10148: option '-vec-report0' not supported
dh.c: dh.c(831): warning #266: function "randombytes" declared implicitly
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c:
try.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -m64 -xHost -vec-report0 -static ref