Implementation notes: amd64, hydra3, crypto_dh/curve2251

Computer: hydra3
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20171218
Operation: crypto_dh
Primitive: curve2251
TimeImplementationCompilerBenchmark dateSUPERCOP version
3328983mpfqgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017111520171020
3330907mpfqgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017111620171020
3348317mpfqgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017111620171020
3350333mpfqgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017111520171020
3361870mpfqgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017111620171020
3369822mpfqgcc -funroll-loops -O3 -fomit-frame-pointer2017111520171020
3369863mpfqgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017111620171020
3369983mpfqgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017111520171020
3375839mpfqgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017111520171020
3377032mpfqgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017111620171020
3379748mpfqgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017111520171020
3381774mpfqgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017111620171020
3386115mpfqgcc -funroll-loops -O2 -fomit-frame-pointer2017111520171020
3386377mpfqgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017111520171020
3531927mpfqgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017111520171020
3534180mpfqgcc -march=barcelona -O3 -fomit-frame-pointer2017111520171020
3534484mpfqgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017111520171020
3534884mpfqgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017111520171020
3567311mpfqgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017111520171020
3568472mpfqgcc -march=barcelona -O2 -fomit-frame-pointer2017111520171020
3568490mpfqgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017111520171020
3581666mpfqgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017111520171020
3612993mpfqgcc -O3 -fomit-frame-pointer2017111520171020
3614559mpfqgcc -march=k8 -O3 -fomit-frame-pointer2017111520171020
3614664mpfqgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017111520171020
3615363mpfqgcc -m64 -O3 -fomit-frame-pointer2017111520171020
3617993mpfqgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017111620171020
3644390mpfqgcc -O2 -fomit-frame-pointer2017111520171020
3644522mpfqgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017111620171020
3645893mpfqgcc -m64 -O2 -fomit-frame-pointer2017111520171020
3663492mpfqgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017111520171020
3670148mpfqgcc -march=k8 -O2 -fomit-frame-pointer2017111520171020
3674809mpfqgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017111620171020
3677657mpfqgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017111520171020
3680686mpfqgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017111520171020
3688184mpfqgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017111520171020
3688226mpfqgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017111620171020
3709256mpfqgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017111620171020
3709309mpfqgcc -funroll-loops -O -fomit-frame-pointer2017111520171020
3712299mpfqgcc -funroll-loops -m64 -O -fomit-frame-pointer2017111520171020
3715178mpfqgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017111620171020
3726487mpfqgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017111520171020
3729671mpfqgcc -funroll-loops -Os -fomit-frame-pointer2017111520171020
3730759mpfqgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017111620171020
3730863mpfqgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017111520171020
3733581mpfqgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017111520171020
3733999mpfqgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017111520171020
3736149mpfqgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017111620171020
3737395mpfqgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017111620171020
3745331mpfqgcc -m64 -march=barcelona -O -fomit-frame-pointer2017111520171020
3745662mpfqgcc -march=barcelona -O -fomit-frame-pointer2017111520171020
3746684mpfqgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017111520171020
3747298mpfqgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017111520171020
3747515mpfqgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017111620171020
3749095mpfqgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017111520171020
3751992mpfqgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017111520171020
3754881mpfqgcc -march=nocona -O3 -fomit-frame-pointer2017111520171020
3756677mpfqgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017111520171020
3758633mpfqgcc -O -fomit-frame-pointer2017111520171020
3759135mpfqgcc -fno-schedule-insns -O -fomit-frame-pointer2017111620171020
3759873mpfqgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017111620171020
3765592mpfqgcc -m64 -O -fomit-frame-pointer2017111520171020
3776517mpfqgcc -m64 -march=core2 -O -fomit-frame-pointer2017111520171020
3788977mpfqgcc -m64 -march=nocona -O -fomit-frame-pointer2017111520171020
3789259mpfqgcc -march=nocona -O -fomit-frame-pointer2017111520171020
3797662mpfqgcc -march=k8 -O -fomit-frame-pointer2017111520171020
3798026mpfqgcc -march=nocona -O2 -fomit-frame-pointer2017111520171020
3801171mpfqgcc -m64 -march=k8 -O -fomit-frame-pointer2017111520171020
3803014mpfqgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017111520171020
3946393mpfqgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017111520171020
3953220mpfqgcc -march=barcelona -Os -fomit-frame-pointer2017111520171020
3955904mpfqgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017111520171020
4001366mpfqgcc -m64 -march=core2 -Os -fomit-frame-pointer2017111520171020
4008173mpfqgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017111520171020
4008732mpfqgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017111620171020
4017083mpfqgcc -march=nocona -Os -fomit-frame-pointer2017111520171020
4017186mpfqgcc -m64 -march=nocona -Os -fomit-frame-pointer2017111520171020
4023702mpfqgcc -m64 -Os -fomit-frame-pointer2017111520171020
4028902mpfqgcc -fno-schedule-insns -Os -fomit-frame-pointer2017111620171020
4029308mpfqgcc -Os -fomit-frame-pointer2017111520171020
4074804mpfqgcc -m64 -march=k8 -Os -fomit-frame-pointer2017111520171020
4076741mpfqgcc -march=k8 -Os -fomit-frame-pointer2017111520171020
4146335mpfqgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017111520171020
18152686mpfqgcc -funroll-loops2017111520171020
18175245mpfqgcc2017111520171020
18233589mpfqcc2017111620171020

Test failure

Implementation: crypto_dh/curve2251/relic/amd64-avx
Compiler: cc
error 111

Number of similar (compiler,implementation) pairs: 304, namely:
CompilerImplementations
cc relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -O3 -fomit-frame-pointer -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -fno-schedule-insns -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -fno-schedule-insns -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -fno-schedule-insns -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -fno-schedule-insns -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -O3 -fomit-frame-pointer mpfq relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer mpfq relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer mpfq relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer mpfq relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer mpfq relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer mpfq relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer mpfq relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer mpfq relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=corei7 -O -fomit-frame-pointer mpfq relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=corei7 -Os -fomit-frame-pointer mpfq relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=k8 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=k8 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=k8 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=k8 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=nocona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=nocona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=nocona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=nocona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=barcelona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=barcelona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=barcelona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=barcelona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=k8 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=k8 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=k8 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=k8 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=nocona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=nocona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=nocona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=nocona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3

Test failure

Implementation: crypto_dh/curve2251/relic/amd64-avx
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
error 111
error 111

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=barcelona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=barcelona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-avx
Compiler: cc
relic.c: In file included from relic.c:4:0:
relic.c: src/relic_rand.c: In function 'rand_init':
relic.c: src/relic_rand.c:117:8: warning: implicit declaration of function 'time' [-Wimplicit-function-declaration]
relic.c: srand(time(NULL));
relic.c: ^

Number of similar (compiler,implementation) pairs: 276, namely:
CompilerImplementations
cc relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -fno-schedule-insns -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -fno-schedule-insns -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -fno-schedule-insns -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -fno-schedule-insns -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=corei7 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=corei7 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=k8 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=k8 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=k8 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=k8 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=nocona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=nocona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=nocona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=nocona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=barcelona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=barcelona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=barcelona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=barcelona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=k8 -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=k8 -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=k8 -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=k8 -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=nocona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=nocona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=nocona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -march=nocona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3

Compiler output

Implementation: crypto_dh/curve2251/mpfq
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
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 (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments mpfq
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments mpfq
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mpfq
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mpfq
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mpfq
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mpfq

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-avx
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
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: 1 warning generated.

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-avx
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
relic.c: In file included from relic.c:4:0:
relic.c: src/relic_rand.c: In function 'rand_init':
relic.c: src/relic_rand.c:117:8: warning: implicit declaration of function 'time' [-Wimplicit-function-declaration]
relic.c: srand(time(NULL));
relic.c: ^
relic.c: In file included from relic.c:4:0:
relic.c: src/relic_rand.c: In function 'rand_init':
relic.c: src/relic_rand.c:117:8: warning: implicit declaration of function 'time' [-Wimplicit-function-declaration]
relic.c: srand(time(NULL));
relic.c: ^

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=barcelona -O -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3
gcc -m64 -march=barcelona -Os -fomit-frame-pointer relic/amd64-avx relic/amd64-clmul relic/amd64-ssse3