Implementation notes: amd64, mangetsu, crypto_dh/curve25519

Computer: mangetsu
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_dh
Primitive: curve25519
TimeImplementationCompilerBenchmark dateSUPERCOP version
777020refgcc-4.7 -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014092520140907
777068refgcc-4.7 -march=nocona -O3 -fomit-frame-pointer2014092520140907
777104refgcc-4.7 -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014092520140907
777152refgcc-4.7 -funroll-loops -O3 -fomit-frame-pointer2014092520140907
777164refgcc-4.7 -m64 -march=corei7 -O3 -fomit-frame-pointer2014092520140907
777196refgcc-4.7 -funroll-loops -O2 -fomit-frame-pointer2014092520140907
777196refgcc-4.7 -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014092520140907
777300refgcc-4.7 -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014092520140907
777332refgcc-4.7 -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014092520140907
777360refgcc-4.7 -m64 -march=barcelona -O3 -fomit-frame-pointer2014092520140907
777396refgcc-4.7 -march=barcelona -O3 -fomit-frame-pointer2014092520140907
777400refgcc-4.7 -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014092520140907
777456refgcc-4.7 -m64 -march=core-avx-i -O3 -fomit-frame-pointer2014092520140907
777472refgcc-4.7 -march=k8 -O3 -fomit-frame-pointer2014092520140907
777492refgcc-4.7 -m64 -march=nocona -O3 -fomit-frame-pointer2014092520140907
777508refgcc-4.8 -m64 -march=corei7 -O3 -fomit-frame-pointer2014092520140907
777532refgcc-4.8 -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014092520140907
777608refgcc-4.7 -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014092520140907
777624refgcc-4.8 -m64 -march=core-avx-i -O3 -fomit-frame-pointer2014092520140907
777640refgcc-4.8 -funroll-loops -m64 -O3 -fomit-frame-pointer2014092520140907
777648refgcc-4.8 -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014092520140907
777760refgcc-4.8 -march=k8 -O3 -fomit-frame-pointer2014092520140907
777764refgcc-4.7 -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014092520140907
777972refgcc-4.7 -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014092520140907
777988refgcc-4.8 -march=barcelona -O3 -fomit-frame-pointer2014092520140907
778000refgcc-4.7 -fno-schedule-insns -O3 -fomit-frame-pointer2014092520140907
778040refgcc-4.8 -m64 -march=k8 -O3 -fomit-frame-pointer2014092520140907
778184refgcc-4.8 -m64 -march=corei7-avx -O3 -fomit-frame-pointer2014092520140907
778432refgcc-4.7 -funroll-loops -m64 -O3 -fomit-frame-pointer2014092520140907
778488refgcc-4.7 -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014092520140907
778676refgcc-4.8 -march=nocona -O3 -fomit-frame-pointer2014092520140907
778744refgcc-4.8 -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014092520140907
778856refgcc-4.8 -funroll-loops -O2 -fomit-frame-pointer2014092520140907
778908refgcc-4.7 -m64 -march=core2 -O3 -fomit-frame-pointer2014092520140907
779276refgcc-4.8 -m64 -O3 -fomit-frame-pointer2014092520140907
779360refgcc-4.8 -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014092520140907
779416refgcc-4.8 -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014092520140907
779432refgcc-4.8 -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014092520140907
779588refgcc-4.8 -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014092520140907
779744refgcc-4.7 -m64 -O3 -fomit-frame-pointer2014092520140907
779780refgcc-4.7 -funroll-loops -march=k8 -O -fomit-frame-pointer2014092520140907
780400refgcc-4.7 -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014092520140907
780724refgcc-4.7 -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014092520140907
780864refgcc-4.7 -funroll-loops -march=barcelona -O -fomit-frame-pointer2014092520140907
781196refgcc-4.8 -funroll-loops -m64 -O2 -fomit-frame-pointer2014092520140907
781288refgcc-4.7 -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014092520140907
781328refgcc-4.7 -funroll-loops -m64 -O -fomit-frame-pointer2014092520140907
781336refgcc-4.7 -m64 -march=corei7-avx -O3 -fomit-frame-pointer2014092520140907
781340refgcc-4.8 -funroll-loops -march=nocona -O -fomit-frame-pointer2014092520140907
781504refgcc-4.8 -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014092520140907
781692refgcc-4.7 -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014092520140907
781752refgcc-4.8 -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014092520140907
781792refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer2014101820141014
781932refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014092520140907
782000refgcc-4.7 -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014092520140907
782336refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101820141014
782344refgcc-4.8 -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014092520140907
782368refgcc-4.7 -march=barcelona -O2 -fomit-frame-pointer2014092520140907
782472refgcc-4.8 -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014092520140907
782572refgcc-4.8 -m64 -O2 -fomit-frame-pointer2014092520140907
782584refgcc-4.7 -fno-schedule-insns -Os -fomit-frame-pointer2014092520140907
782608refgcc-4.7 -m64 -march=nocona -O2 -fomit-frame-pointer2014092520140907
782624refgcc-4.8 -funroll-loops -march=k8 -O -fomit-frame-pointer2014092520140907
782648refclang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014092520140907
782760refgcc-4.8 -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014092520140907
782844refgcc-4.8 -funroll-loops -m64 -O -fomit-frame-pointer2014092520140907
782928refgcc-4.7 -m64 -march=barcelona -Os -fomit-frame-pointer2014092520140907
782932refgcc-4.8 -funroll-loops -Os -fomit-frame-pointer2014092520140907
782996refgcc-4.8 -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014092520140907
783004refgcc-4.7 -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014092520140907
783080refgcc-4.7 -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014092520140907
783104refgcc-4.8 -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014092520140907
783124refgcc-4.8 -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014092520140907
783132refgcc-4.7 -m64 -march=core-avx-i -O2 -fomit-frame-pointer2014092520140907
783132refgcc-4.8 -funroll-loops -march=nocona -Os -fomit-frame-pointer2014092520140907
783164refgcc-4.7 -m64 -march=k8 -Os -fomit-frame-pointer2014092520140907
783180refgcc-4.8 -march=nocona -O2 -fomit-frame-pointer2014092520140907
783208refgcc-4.8 -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014092520140907
783220refgcc-4.7 -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014092520140907
783224refgcc-4.8 -m64 -march=nocona -Os -fomit-frame-pointer2014092520140907
783252refgcc-4.8 -m64 -march=nocona -O2 -fomit-frame-pointer2014092520140907
783268refgcc-4.7 -m64 -march=barcelona -O2 -fomit-frame-pointer2014092520140907
783276refgcc-4.8 -m64 -march=k8 -Os -fomit-frame-pointer2014092520140907
783336refgcc-4.7 -funroll-loops -march=k8 -Os -fomit-frame-pointer2014092520140907
783360refclang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014092520140907
783476refgcc-4.7 -march=barcelona -Os -fomit-frame-pointer2014092520140907
783476refgcc-4.8 -march=barcelona -O2 -fomit-frame-pointer2014092520140907
783504refgcc-4.8 -fno-schedule-insns -O2 -fomit-frame-pointer2014092520140907
783580refgcc-4.7 -m64 -Os -fomit-frame-pointer2014092520140907
783584refgcc-4.8 -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014092520140907
783608refgcc-4.8 -Os -fomit-frame-pointer2014092520140907
783700refgcc-4.7 -fno-schedule-insns -O2 -fomit-frame-pointer2014092520140907
783816refgcc-4.7 -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014092520140907
783868refgcc-4.7 -march=k8 -Os -fomit-frame-pointer2014092520140907
783976refgcc-4.8 -m64 -Os -fomit-frame-pointer2014092520140907
784100refgcc-4.7 -march=k8 -O2 -fomit-frame-pointer2014092520140907
784112refgcc-4.8 -funroll-loops -march=barcelona -O -fomit-frame-pointer2014092520140907
784344refgcc-4.7 -funroll-loops -m64 -Os -fomit-frame-pointer2014092520140907
784380refgcc-4.7 -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014092520140907
784396refgcc-4.8 -m64 -march=corei7-avx -Os -fomit-frame-pointer2014092520140907
784464refgcc-4.8 -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014092520140907
784468refgcc-4.7 -m64 -march=nocona -Os -fomit-frame-pointer2014092520140907
784564refgcc-4.7 -m64 -march=k8 -O2 -fomit-frame-pointer2014092520140907
784700refgcc-4.7 -m64 -march=core-avx-i -Os -fomit-frame-pointer2014092520140907
784700refgcc-4.8 -m64 -march=barcelona -O2 -fomit-frame-pointer2014092520140907
784792refgcc-4.8 -m64 -march=corei7 -Os -fomit-frame-pointer2014092520140907
784796refgcc-4.7 -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014092520140907
784796refgcc-4.8 -funroll-loops -march=k8 -Os -fomit-frame-pointer2014092520140907
784832refgcc-4.7 -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014092520140907
784884refgcc-4.7 -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014092520140907
784916refgcc-4.7 -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014092520140907
784988refclang -O3 -fwrapv -mavx -fomit-frame-pointer2014092520140907
785020refgcc-4.8 -funroll-loops -O -fomit-frame-pointer2014092520140907
785188refgcc-4.8 -m64 -march=corei7-avx -O2 -fomit-frame-pointer2014092520140907
785240refgcc-4.7 -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014092520140907
785344refgcc-4.7 -funroll-loops -march=nocona -O -fomit-frame-pointer2014092520140907
785356refgcc-4.8 -march=k8 -O2 -fomit-frame-pointer2014092520140907
785376refgcc-4.8 -march=k8 -Os -fomit-frame-pointer2014092520140907
785412refgcc-4.7 -funroll-loops -O -fomit-frame-pointer2014092520140907
785460refclang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101820141014
785520refgcc-4.7 -Os -fomit-frame-pointer2014092520140907
785696refgcc-4.8 -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014092520140907
785704refclang -O3 -fomit-frame-pointer2014092520140907
785856refgcc-4.7 -funroll-loops -Os -fomit-frame-pointer2014092520140907
785872refgcc-4.7 -funroll-loops -march=nocona -Os -fomit-frame-pointer2014092520140907
785888refgcc-4.8 -march=k8 -O -fomit-frame-pointer2014092520140907
785940refgcc-4.8 -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014092520140907
785956refgcc-4.8 -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014092520140907
785984refgcc-4.8 -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014092520140907
786040refgcc-4.8 -m64 -march=core2 -Os -fomit-frame-pointer2014092520140907
786156refgcc-4.7 -march=nocona -O2 -fomit-frame-pointer2014092520140907
786160refgcc-4.8 -m64 -march=native -mtune=native -O -fomit-frame-pointer2014092520140907
786360refgcc-4.8 -m64 -march=core2 -O -fomit-frame-pointer2014092520140907
786408refgcc-4.7 -m64 -O2 -fomit-frame-pointer2014092520140907
786740refgcc-4.7 -funroll-loops -m64 -O2 -fomit-frame-pointer2014092520140907
786752refgcc-4.8 -m64 -march=core2 -O2 -fomit-frame-pointer2014092520140907
786780refgcc-4.8 -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014092520140907
786820refgcc-4.7 -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014092520140907
786952refgcc-4.8 -m64 -march=corei7 -O -fomit-frame-pointer2014092520140907
786960refgcc-4.8 -march=nocona -Os -fomit-frame-pointer2014092520140907
786996refgcc-4.7 -m64 -march=core2 -Os -fomit-frame-pointer2014092520140907
787512refgcc-4.7 -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014092520140907
787524refgcc-4.8 -m64 -march=barcelona -O -fomit-frame-pointer2014092520140907
787528refgcc-4.7 -m64 -march=corei7 -Os -fomit-frame-pointer2014092520140907
787648refgcc-4.8 -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014092520140907
787684refgcc-4.8 -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014092520140907
787748refgcc-4.8 -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014092520140907
787760refgcc-4.8 -march=nocona -O -fomit-frame-pointer2014092520140907
787876refgcc-4.8 -m64 -march=k8 -O -fomit-frame-pointer2014092520140907
787984refgcc-4.7 -m64 -march=nocona -O -fomit-frame-pointer2014092520140907
788068refgcc-4.8 -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014092520140907
788188refgcc-4.7 -m64 -march=k8 -O -fomit-frame-pointer2014092520140907
788208refgcc-4.8 -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014092520140907
788360refgcc-4.8 -m64 -march=core-avx-i -Os -fomit-frame-pointer2014092520140907
788412refgcc-4.7 -march=k8 -O -fomit-frame-pointer2014092520140907
788424refgcc-4.7 -march=nocona -Os -fomit-frame-pointer2014092520140907
788612refgcc-4.8 -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014092520140907
788620refgcc-4.7 -m64 -march=core2 -O2 -fomit-frame-pointer2014092520140907
788700refclang -O3 -fwrapv -march=native -fomit-frame-pointer2014092520140907
788752refgcc-4.8 -fno-schedule-insns -O -fomit-frame-pointer2014092520140907
789104refgcc-4.7 -m64 -march=corei7-avx -Os -fomit-frame-pointer2014092520140907
789616refgcc-4.7 -m64 -march=corei7 -O -fomit-frame-pointer2014092520140907
789776refgcc-4.8 -m64 -march=core-avx-i -O -fomit-frame-pointer2014092520140907
789980refgcc-4.7 -m64 -march=native -mtune=native -O -fomit-frame-pointer2014092520140907
790188refgcc-4.7 -O -fomit-frame-pointer2014092520140907
790532refgcc-4.7 -m64 -march=core-avx-i -O -fomit-frame-pointer2014092520140907
790732refgcc-4.7 -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014092520140907
790964refgcc-4.7 -m64 -O -fomit-frame-pointer2014092520140907
791132refgcc-4.7 -m64 -march=barcelona -O -fomit-frame-pointer2014092520140907
792240refgcc-4.7 -m64 -march=core2 -O -fomit-frame-pointer2014092520140907
792348refgcc-4.7 -m64 -march=corei7-avx -O2 -fomit-frame-pointer2014092520140907
792464refgcc-4.8 -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014092520140907
793376refgcc-4.7 -m64 -march=corei7-avx -O -fomit-frame-pointer2014092520140907
793876refgcc-4.7 -march=nocona -O -fomit-frame-pointer2014092520140907
794200refgcc-4.7 -march=barcelona -O -fomit-frame-pointer2014092520140907
795064refgcc-4.8 -m64 -march=k8 -O2 -fomit-frame-pointer2014092520140907
796060refgcc-4.8 -m64 -O -fomit-frame-pointer2014092520140907
799724refgcc-4.8 -m64 -march=barcelona -O3 -fomit-frame-pointer2014092520140907
800508refgcc-4.8 -m64 -march=nocona -O3 -fomit-frame-pointer2014092520140907
801920refgcc-4.8 -m64 -march=core-avx-i -O2 -fomit-frame-pointer2014092520140907
803312refgcc-4.8 -funroll-loops -m64 -Os -fomit-frame-pointer2014092520140907
803936refgcc-4.8 -funroll-loops -O3 -fomit-frame-pointer2014092520140907
804476refgcc-4.7 -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014092520140907
807068refgcc-4.7 -m64 -march=k8 -O3 -fomit-frame-pointer2014092520140907
807876refgcc-4.82014092520140907
807976refgcc-4.8 -funroll-loops2014092520140907
808656refgcc-4.7 -funroll-loops2014092520140907
809328refgcc-4.72014092520140907
809708refcc2014092520140907
811764refgcc-4.8 -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014092520140907
811764refgcc-4.8 -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014092520140907
811832refgcc-4.8 -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014092520140907
812024refgcc-4.7 -m64 -march=corei7 -O2 -fomit-frame-pointer2014092520140907
813744refgcc-4.7 -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014092520140907
814296refgcc-4.7 -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014092520140907
815936refgcc-4.7 -O3 -fomit-frame-pointer2014092520140907
817696refgcc-4.8 -march=barcelona -O -fomit-frame-pointer2014092520140907
818020refgcc-4.7 -m64 -march=core-avx2 -O -fomit-frame-pointer2014092520140907
819892refgcc-4.8 -O -fomit-frame-pointer2014092520140907
825628refgcc-4.7 -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014092520140907
826520refgcc-4.8 -m64 -march=corei7-avx -O -fomit-frame-pointer2014092520140907
827868refgcc-4.8 -m64 -march=core2 -O3 -fomit-frame-pointer2014092520140907
828324refgcc-4.8 -m64 -march=corei7 -O2 -fomit-frame-pointer2014092520140907
828796refgcc-4.8 -O3 -fomit-frame-pointer2014092520140907
829980refgcc-4.7 -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014092520140907
830884refgcc-4.8 -m64 -march=barcelona -Os -fomit-frame-pointer2014092520140907
832196refgcc-4.7 -fno-schedule-insns -O -fomit-frame-pointer2014092520140907
835200refgcc-4.8 -fno-schedule-insns -O3 -fomit-frame-pointer2014092520140907
836728refgcc-4.7 -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014092520140907
840656refgcc-4.7 -O2 -fomit-frame-pointer2014092520140907
841468refgcc-4.8 -O2 -fomit-frame-pointer2014092520140907
846024refgcc-4.8 -fno-schedule-insns -Os -fomit-frame-pointer2014092520140907
848204refgcc-4.8 -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014092520140907
851044refgcc-4.8 -march=barcelona -Os -fomit-frame-pointer2014092520140907
855840refgcc-4.8 -m64 -march=nocona -O -fomit-frame-pointer2014092520140907

Test failure

Implementation: crypto_dh/curve25519/ref
Compiler: gcc-4.7 -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
gcc-4.7 -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx2 -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: cc
curve25519.c: curve25519.c:18:17: fatal error: gmp.h: No such file or directory
curve25519.c: #include gt;
curve25519.c: ^
curve25519.c: compilation terminated.

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: clang -O3 -fomit-frame-pointer
curve25519.c: curve25519.c:18:10: fatal error: 'gmp.h' file not found
curve25519.c: #include gt;
curve25519.c: ^
curve25519.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer mpfq
clang -O3 -fwrapv -march=native -fomit-frame-pointer mpfq
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer mpfq
clang -O3 -fwrapv -mavx -fomit-frame-pointer mpfq
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/ref
Compiler: clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
usesmult.c: clang-3.3: warning: argument unused during compilation: '-fpolly'

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref
clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
curve25519.c: clang-3.3: warning: argument unused during compilation: '-fpolly'
curve25519.c: curve25519.c:18:10: fatal error: 'gmp.h' file not found
curve25519.c: #include gt;
curve25519.c: ^
curve25519.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer mpfq
clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer mpfq
clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
curve25519.c: clang-3.3: warning: argument unused during compilation: '-mcpu=core-avx2'
curve25519.c: curve25519.c:18:10: fatal error: 'gmp.h' file not found
curve25519.c: #include gt;
curve25519.c: ^
curve25519.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
usesmult.c: clang-3.3: warning: argument unused during compilation: '-mcpu=core-avx2'

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer ref

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc-4.7
curve25519.c: curve25519.c:18:17: fatal error: gmp.h: No such file or directory
curve25519.c: compilation terminated.

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc-4.7 -m64 -march=barcelona -O2 -fomit-frame-pointer
curve25519.c: curve25519.c:18:17: fatal error: gmp.h: No such file or directory
curve25519.c: compilation terminated.
curve25519.c: curve25519.c:18:17: fatal error: gmp.h: No such file or directory
curve25519.c: compilation terminated.

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc-4.8 -m64 -march=barcelona -O2 -fomit-frame-pointer
curve25519.c: curve25519.c:18:17: fatal error: gmp.h: No such file or directory
curve25519.c: #include gt;
curve25519.c: ^
curve25519.c: compilation terminated.
curve25519.c: curve25519.c:18:17: fatal error: gmp.h: No such file or directory
curve25519.c: #include gt;
curve25519.c: ^
curve25519.c: compilation terminated.

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