Implementation notes: amd64, cryptothinkx, crypto_dh/ecfp256i

Computer: cryptothinkx
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_dh
Primitive: ecfp256i
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
702096? ? ?? ? ?v01/varclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017021420170105
709977? ? ?? ? ?v01/varclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017021420170105
710574? ? ?? ? ?v01/varclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017021420170105
716085? ? ?? ? ?v01/varclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
717192? ? ?? ? ?v01/varclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017021420170105
721914? ? ?? ? ?v01/vargcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
723387? ? ?? ? ?v01/varclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
738306? ? ?? ? ?v01/vargcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017021420170105
738414? ? ?? ? ?v01/vargcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017021420170105
741207? ? ?? ? ?v01/vargcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
742299? ? ?? ? ?v01/vargcc_-march=k8_-O3_-fomit-frame-pointer2017021420170105
743892? ? ?? ? ?v01/vargcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017021420170105
744087? ? ?? ? ?v01/vargcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017021420170105
744411? ? ?? ? ?v01/vargcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017021420170105
744573? ? ?? ? ?v01/vargcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017021420170105
744573? ? ?? ? ?v01/vargcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017021420170105
746376? ? ?? ? ?v01/vargcc_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
746583? ? ?? ? ?v01/vargcc_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
748149? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017021420170105
748245? ? ?? ? ?v01/vargcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017021420170105
748341? ? ?? ? ?v01/vargcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
749622? ? ?? ? ?v01/vargcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
750753? ? ?? ? ?v01/vargcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017021420170105
751278? ? ?? ? ?v01/vargcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017021420170105
752082? ? ?? ? ?v01/vargcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017021420170105
752916? ? ?? ? ?v01/vargcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017021420170105
753087? ? ?? ? ?v01/vargcc_-O2_-fomit-frame-pointer2017021420170105
754110? ? ?? ? ?v01/vargcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017021420170105
754209? ? ?? ? ?v01/vargcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017021420170105
754353? ? ?? ? ?v01/vargcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017021420170105
757026? ? ?? ? ?v01/vargcc_-funroll-loops_-O_-fomit-frame-pointer2017021420170105
757107? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017021420170105
757146? ? ?? ? ?v01/vargcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017021420170105
757335? ? ?? ? ?v01/vargcc_-funroll-loops_-O2_-fomit-frame-pointer2017021420170105
757533? ? ?? ? ?v01/vargcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017021420170105
757890? ? ?? ? ?v01/vargcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017021420170105
757983? ? ?? ? ?v01/vargcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
758376? ? ?? ? ?v01/vargcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017021420170105
759090? ? ?? ? ?v01/vargcc_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
759249? ? ?? ? ?v01/vargcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
759264? ? ?? ? ?v01/vargcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017021420170105
759309? ? ?? ? ?v01/vargcc_-march=k8_-O_-fomit-frame-pointer2017021420170105
761445? ? ?? ? ?v01/vargcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017021420170105
761598? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017021420170105
761598? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017021420170105
762567? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
763173? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017021420170105
764583? ? ?? ? ?v01/vargcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
764931? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
765276? ? ?? ? ?v01/vargcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017021420170105
765501? ? ?? ? ?v01/vargcc_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
765720? ? ?? ? ?v01/vargcc_-m64_-march=k8_-O_-fomit-frame-pointer2017021420170105
769428? ? ?? ? ?v01/vargcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
769479? ? ?? ? ?v01/vargcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017021420170105
770235? ? ?? ? ?v01/vargcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
772968? ? ?? ? ?v01/varclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
773790? ? ?? ? ?v01/vargcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017021420170105
774009? ? ?? ? ?v01/vargcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017021420170105
774513? ? ?? ? ?v01/varclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017021420170105
778869? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017021420170105
779571? ? ?? ? ?v01/vargcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
779862? ? ?? ? ?v01/vargcc_-m64_-O_-fomit-frame-pointer2017021420170105
780546? ? ?? ? ?v01/vargcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017021420170105
780888? ? ?? ? ?v01/vargcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017021420170105
781779? ? ?? ? ?v01/vargcc_-O_-fomit-frame-pointer2017021420170105
783132? ? ?? ? ?v01/vargcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
784782? ? ?? ? ?v01/vargcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017021420170105
785193? ? ?? ? ?v01/vargcc_-m64_-march=core2_-O_-fomit-frame-pointer2017021420170105
786579? ? ?? ? ?v01/vargcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
786621? ? ?? ? ?v01/vargcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017021420170105
787479? ? ?? ? ?v01/vargcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
788556? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
789396? ? ?? ? ?v01/vargcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
790413? ? ?? ? ?v01/vargcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017021420170105
790608? ? ?? ? ?v01/vargcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017021420170105
792960? ? ?? ? ?v01/vargcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
794343? ? ?? ? ?v01/vargcc_-funroll-loops_-O3_-fomit-frame-pointer2017021420170105
796812? ? ?? ? ?v01/vargcc_-march=k8_-Os_-fomit-frame-pointer2017021420170105
798081? ? ?? ? ?v01/vargcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017021420170105
798999? ? ?? ? ?v01/vargcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017021420170105
799929? ? ?? ? ?v01/vargcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017021420170105
802518? ? ?? ? ?v01/vargcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017021420170105
806157? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
807846? ? ?? ? ?v01/vargcc_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
808284? ? ?? ? ?v01/vargcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017021420170105
808362? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017021420170105
810183? ? ?? ? ?v01/vargcc_-Os_-fomit-frame-pointer2017021420170105
811185? ? ?? ? ?v01/vargcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017021420170105
811341? ? ?? ? ?v01/vargcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017021420170105
814647? ? ?? ? ?v01/vargcc_-O3_-fomit-frame-pointer2017021420170105
816261? ? ?? ? ?v01/vargcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017021420170105
818184? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
818433? ? ?? ? ?v01/vargcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017021420170105
819099? ? ?? ? ?v01/vargcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017021420170105
824781? ? ?? ? ?v01/vargcc_-m64_-O3_-fomit-frame-pointer2017021420170105
826227? ? ?? ? ?v01/vargcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017021420170105
830296? ? ?? ? ?v01/varclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
833898? ? ?? ? ?v01/vargcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017021420170105
834216? ? ?? ? ?v01/vargcc_-march=k8_-O2_-fomit-frame-pointer2017021420170105
834690? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017021420170105
836013? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017021420170105
836847? ? ?? ? ?v01/vargcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
839121? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
839595? ? ?? ? ?v01/vargcc_-m64_-O2_-fomit-frame-pointer2017021420170105
840366? ? ?? ? ?v01/vargcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017021420170105
845424? ? ?? ? ?v01/vargcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017021420170105
845616? ? ?? ? ?v01/vargcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
848904? ? ?? ? ?v01/vargcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017021420170105
853466? ? ?? ? ?v01/varclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017021420170105
854295? ? ?? ? ?v01/vargcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017021420170105
858204? ? ?? ? ?v01/vargcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017021420170105
858783? ? ?? ? ?v01/vargcc_-march=nocona_-O_-fomit-frame-pointer2017021420170105
861198? ? ?? ? ?v01/vargcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
865614? ? ?? ? ?v01/vargcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017021420170105
866568? ? ?? ? ?v01/vargcc_-funroll-loops_-Os_-fomit-frame-pointer2017021420170105
879990? ? ?? ? ?v01/vargcc_-m64_-Os_-fomit-frame-pointer2017021420170105
883104? ? ?? ? ?v01/vargcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017021420170105
900740? ? ?? ? ?v01/vargcc_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
900978? ? ?? ? ?v01/vargcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
932192? ? ?? ? ?v01/vargcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017021420170105
938556? ? ?? ? ?v01/varcc2017021420170105
958466? ? ?? ? ?v01/vargcc_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
1012044? ? ?? ? ?v01/vargcc_-funroll-loops2017021420170105
1059228? ? ?? ? ?v01/vargcc2017021420170105
1640210? ? ?? ? ?v01/vargcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017021420170105

Test failure

Implementation: crypto_dh/ecfp256i/v01/w8s1
Compiler: cc
error 111
crypto_dh_keypair writes after output

Number of similar (compiler,implementation) pairs: 468, namely:
CompilerImplementations
cc v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fomit-frame-pointer -Qunused-arguments v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -fno-schedule-insns -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -fno-schedule-insns -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -fno-schedule-insns -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -fno-schedule-insns -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=corei7 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=corei7 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=k8 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=k8 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=k8 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=k8 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=nocona -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=nocona -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=nocona -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=nocona -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=barcelona -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=barcelona -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=barcelona -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=barcelona -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=k8 -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=k8 -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=k8 -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=k8 -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=nocona -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=nocona -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=nocona -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -march=nocona -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8

Test failure

Implementation: crypto_dh/ecfp256i/v01/w8s1
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
error 111
crypto_dh_keypair writes after output
error 111
crypto_dh_keypair writes after output

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=barcelona -O -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
gcc -m64 -march=barcelona -Os -fomit-frame-pointer v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8

Compiler output

Implementation: crypto_dh/ecfp256i/v01/var
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
alloc.c: alloc.c:77:11: warning: passing 'char [13]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
alloc.c: kn_exit("kn_init_fast", ERR_OUT_OF_MEMORY);
alloc.c: ^~~~~~~~~~~~~~
alloc.c: ./_core.h:132:21: note: passing argument to parameter 's' here
alloc.c: void kn_exit(sic_t *s, uni_t code);
alloc.c: ^
alloc.c: alloc.c:92:11: warning: passing 'char [13]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
alloc.c: kn_exit("kn_free_fast", ERR_INVALID_MEMORY);
alloc.c: ^~~~~~~~~~~~~~
alloc.c: ./_core.h:132:21: note: passing argument to parameter 's' here
alloc.c: ...
alloc.c: ./_core.h:132:21: note: passing argument to parameter 's' here
alloc.c: void kn_exit(sic_t *s, uni_t code);
alloc.c: ^
alloc.c: alloc.c:192:11: warning: passing 'char [8]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
alloc.c: kn_exit("kn_kill", ERR_INVALID_MEMORY);
alloc.c: ^~~~~~~~~
alloc.c: ./_core.h:132:21: note: passing argument to parameter 's' here
alloc.c: void kn_exit(sic_t *s, uni_t code);
alloc.c: ^
alloc.c: 8 warnings generated.
error.c: error.c:44:11: warning: passing 'char [56]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
error.c: kn_exit("Increase the workspace space using crypmix_init(maxlen)", ERR_OUT_OF_BOUNDS);
error.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
error.c: error.c:29:21: note: passing argument to parameter 's' here
error.c: void kn_exit(sic_t *s, uni_t code)
error.c: ^
error.c: 1 warning generated.
integer_hi_stack.c: integer_hi_stack.c:387:11: warning: passing 'char [11]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
integer_hi_stack.c: kn_exit("mi_q_and_r", ERR_DIVIDE_BY_ZERO);
integer_hi_stack.c: ^~~~~~~~~~~~
integer_hi_stack.c: ./kernel.h:814:18: note: passing argument to parameter 's' here
integer_hi_stack.c: void kn_exit(sic s, uni_t code);
integer_hi_stack.c: ^
integer_hi_stack.c: integer_hi_stack.c:417:11: warning: passing 'char [11]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
integer_hi_stack.c: kn_exit("mi_q_and_r", ERR_DIVIDE_BY_ZERO);
integer_hi_stack.c: ^~~~~~~~~~~~
integer_hi_stack.c: ./kernel.h:814:18: note: passing argument to parameter 's' here
integer_hi_stack.c: ...
integer_hi_stack.c: ./kernel.h:814:18: note: passing argument to parameter 's' here
integer_hi_stack.c: void kn_exit(sic s, uni_t code);
integer_hi_stack.c: ^
integer_hi_stack.c: integer_hi_stack.c:943:12: warning: passing 'char [32]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
integer_hi_stack.c: kn_exit("Error @ mi_modinv_stack(z, a);n", 0);
integer_hi_stack.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
integer_hi_stack.c: ./kernel.h:814:18: note: passing argument to parameter 's' here
integer_hi_stack.c: void kn_exit(sic s, uni_t code);
integer_hi_stack.c: ^
integer_hi_stack.c: 5 warnings generated.
integer_lo.c: integer_lo.c:551:10: warning: passing 'char [35]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
integer_lo.c: kn_exit("min_nres_prepare2: not implemented", 0);
integer_lo.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
integer_lo.c: ./kernel.h:814:18: note: passing argument to parameter 's' here
integer_lo.c: void kn_exit(sic s, uni_t code);
integer_lo.c: ^
integer_lo.c: 1 warning generated.
io.c: io.c:340:11: warning: passing 'char [32]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
io.c: kn_exit("kn_io_fscan: zero length string", ERR_INVALID_STRING);
io.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
io.c: ./_core.h:132:21: note: passing argument to parameter 's' here
io.c: void kn_exit(sic_t *s, uni_t code);
io.c: ^
io.c: io.c:350:12: warning: passing 'char [31]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
io.c: kn_exit("kn_io_fscan: invalid character", ERR_INVALID_CHARACTER);
io.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
io.c: ./_core.h:132:21: note: passing argument to parameter 's' here
io.c: ...
io.c: ./_core.h:132:21: note: passing argument to parameter 's' here
io.c: void kn_exit(sic_t *s, uni_t code);
io.c: ^
io.c: io.c:389:11: warning: passing 'char [38]' to parameter of type 'sic_t *' (aka 'signed char *') converts between pointers to integer types with different sign [-Wpointer-sign]
io.c: kn_exit("kn_io_fscan: increase I/O buffer size", ERR_IO_BUFFER_OVERFLOW);
io.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
io.c: ./_core.h:132:21: note: passing argument to parameter 's' here
io.c: void kn_exit(sic_t *s, uni_t code);
io.c: ^
io.c: 9 warnings generated.

Number of similar (compiler,implementation) pairs: 50, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments v01/var v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments v01/var v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments v01/var v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments v01/var v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments v01/var v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments v01/var v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments v01/var v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments v01/var v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments v01/var v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments v01/var v01/w8s1 v01/w8s2 v01/w8s4 v01/w8s8