Implementation notes: amd64, cryptothinkx, crypto_aead/hs1sivlov2

Computer: cryptothinkx
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_aead
Primitive: hs1sivlov2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3792? ? ?? ? ?fasterclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017020720170105
3798? ? ?? ? ?fasterclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020720170105
3939? ? ?? ? ?fasterclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020720170105
4143? ? ?? ? ?dolbeau/amd64-avx2clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017020720170105
4155? ? ?? ? ?dolbeau/amd64-avx2clang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020720170105
4173? ? ?? ? ?dolbeau/amd64-avx2clang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017020720170105
4266? ? ?? ? ?fastergcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017020720170105
4275? ? ?? ? ?dolbeau/amd64-avx2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020720170105
4356? ? ?? ? ?fastergcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017020720170105
4404? ? ?? ? ?fastergcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017020720170105
4503? ? ?? ? ?fasterclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017020720170105
4563? ? ?? ? ?dolbeau/amd64-avx2gcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017020720170105
4581? ? ?? ? ?dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017020720170105
4584? ? ?? ? ?dolbeau/amd64-avx2gcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017020720170105
4599? ? ?? ? ?fastergcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017020720170105
4599? ? ?? ? ?fastergcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017020720170105
4611? ? ?? ? ?fastergcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017020720170105
4611? ? ?? ? ?dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017020720170105
4632? ? ?? ? ?fastergcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017020720170105
4641? ? ?? ? ?dolbeau/amd64-avx2gcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017020720170105
4680? ? ?? ? ?fastergcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017020720170105
4689? ? ?? ? ?fastergcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017020720170105
4695? ? ?? ? ?fastergcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017020720170105
4710? ? ?? ? ?dolbeau/amd64-avx2gcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017020720170105
4749? ? ?? ? ?dolbeau/amd64-avx2gcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017020720170105
4752? ? ?? ? ?fastergcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017020720170105
4752? ? ?? ? ?dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017020720170105
4920? ? ?? ? ?dolbeau/amd64-avx2gcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017020720170105
4959? ? ?? ? ?dolbeau/amd64-avx2gcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017020720170105
5061? ? ?? ? ?dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017020720170105
5124? ? ?? ? ?dolbeau/amd64-avx2gcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017020720170105
5691? ? ?? ? ?fasterclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020720170105
6024? ? ?? ? ?fastergcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017020720170105
6060? ? ?? ? ?fastergcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017020720170105
6099? ? ?? ? ?fasterclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017020720170105
6180? ? ?? ? ?dolbeau/amd64-sseclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017020720170105
6198? ? ?? ? ?dolbeau/amd64-sseclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020720170105
6255? ? ?? ? ?dolbeau/amd64-sseclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020720170105
6267? ? ?? ? ?dolbeau/amd64-sseclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020720170105
6288? ? ?? ? ?dolbeau/amd64-sseclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017020720170105
6312? ? ?? ? ?dolbeau/amd64-sseclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017020720170105
6327? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017020720170105
6336? ? ?? ? ?fastergcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017020720170105
6351? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017020720170105
6417? ? ?? ? ?fastergcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017020720170105
6429? ? ?? ? ?fastergcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017020720170105
6507? ? ?? ? ?dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017020720170105
6528? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017020720170105
6531? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017020720170105
6606? ? ?? ? ?fasterclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020720170105
6627? ? ?? ? ?fastergcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017020720170105
6633? ? ?? ? ?fasterclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017020720170105
6678? ? ?? ? ?fasterclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020720170105
6678? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017020720170105
6693? ? ?? ? ?fastergcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017020720170105
6702? ? ?? ? ?dolbeau/amd64-ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017020720170105
6720? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017020720170105
6744? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017020720170105
6744? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017020720170105
6747? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017020720170105
6753? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017020720170105
6753? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017020720170105
6756? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017020720170105
6765? ? ?? ? ?dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017020720170105
6771? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017020720170105
6777? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017020720170105
6780? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017020720170105
6804? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017020720170105
6822? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017020720170105
6831? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017020720170105
6834? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017020720170105
6840? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017020720170105
6846? ? ?? ? ?fastergcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017020720170105
6873? ? ?? ? ?fastergcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017020720170105
6906? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017020720170105
6909? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017020720170105
6954? ? ?? ? ?dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017020720170105
6963? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017020720170105
6984? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017020720170105
6990? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017020720170105
6993? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-O_-fomit-frame-pointer2017020720170105
6993? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017020720170105
6996? ? ?? ? ?fastergcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017020720170105
7005? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017020720170105
7011? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017020720170105
7020? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017020720170105
7062? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017020720170105
7062? ? ?? ? ?fastergcc_-march=nocona_-O3_-fomit-frame-pointer2017020720170105
7074? ? ?? ? ?fasterclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020720170105
7074? ? ?? ? ?fastergcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017020720170105
7080? ? ?? ? ?fastergcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017020720170105
7083? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017020720170105
7086? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017020720170105
7086? ? ?? ? ?fastergcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017020720170105
7128? ? ?? ? ?fastergcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017020720170105
7134? ? ?? ? ?fastergcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020720170105
7146? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017020720170105
7164? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020720170105
7164? ? ?? ? ?fastergcc_-march=barcelona_-O3_-fomit-frame-pointer2017020720170105
7185? ? ?? ? ?fastergcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017020720170105
7185? ? ?? ? ?fastergcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020720170105
7209? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020720170105
7209? ? ?? ? ?fastergcc_-m64_-O3_-fomit-frame-pointer2017020720170105
7218? ? ?? ? ?fastergcc_-O3_-fomit-frame-pointer2017020720170105
7227? ? ?? ? ?fastergcc_-march=k8_-O3_-fomit-frame-pointer2017020720170105
7233? ? ?? ? ?fastergcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017020720170105
7248? ? ?? ? ?fastergcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017020720170105
7251? ? ?? ? ?fastergcc_-funroll-loops_-O3_-fomit-frame-pointer2017020720170105
7251? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017020720170105
7257? ? ?? ? ?fastergcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017020720170105
7257? ? ?? ? ?fastergcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017020720170105
7257? ? ?? ? ?fastergcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017020720170105
7263? ? ?? ? ?fastergcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017020720170105
7263? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017020720170105
7263? ? ?? ? ?fastergcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017020720170105
7287? ? ?? ? ?fastergcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017020720170105
7293? ? ?? ? ?fastergcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017020720170105
7293? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017020720170105
7296? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017020720170105
7299? ? ?? ? ?fastergcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017020720170105
7299? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017020720170105
7302? ? ?? ? ?fastergcc_-funroll-loops_-O2_-fomit-frame-pointer2017020720170105
7311? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017020720170105
7332? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017020720170105
7347? ? ?? ? ?fastergcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017020720170105
7350? ? ?? ? ?fastergcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017020720170105
7350? ? ?? ? ?fastergcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017020720170105
7353? ? ?? ? ?fastergcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017020720170105
7353? ? ?? ? ?fastergcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017020720170105
7356? ? ?? ? ?fastergcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017020720170105
7356? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017020720170105
7362? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020720170105
7368? ? ?? ? ?fastergcc_-funroll-loops_-O_-fomit-frame-pointer2017020720170105
7374? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017020720170105
7377? ? ?? ? ?fastergcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017020720170105
7431? ? ?? ? ?fastergcc_-m64_-march=core2_-O_-fomit-frame-pointer2017020720170105
7472? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017020720170105
7518? ? ?? ? ?fastergcc_-march=barcelona_-O2_-fomit-frame-pointer2017020720170105
7527? ? ?? ? ?fastergcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020720170105
7536? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017020720170105
7539? ? ?? ? ?fastergcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020720170105
7545? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017020720170105
7575? ? ?? ? ?fastergcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017020720170105
7590? ? ?? ? ?fastergcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017020720170105
7596? ? ?? ? ?fastergcc_-O2_-fomit-frame-pointer2017020720170105
7602? ? ?? ? ?fastergcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017020720170105
7605? ? ?? ? ?fastergcc_-march=nocona_-O2_-fomit-frame-pointer2017020720170105
7620? ? ?? ? ?fastergcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017020720170105
7684? ? ?? ? ?fastergcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017020720170105
7728? ? ?? ? ?fastergcc_-march=k8_-O_-fomit-frame-pointer2017020720170105
7836? ? ?? ? ?fastergcc_-m64_-O2_-fomit-frame-pointer2017020720170105
7845? ? ?? ? ?fastergcc_-march=k8_-O2_-fomit-frame-pointer2017020720170105
7848? ? ?? ? ?fastergcc_-march=k8_-Os_-fomit-frame-pointer2017020720170105
7851? ? ?? ? ?fastergcc_-m64_-O_-fomit-frame-pointer2017020720170105
7851? ? ?? ? ?fastergcc_-march=nocona_-Os_-fomit-frame-pointer2017020720170105
7902? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020720170105
7911? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017020720170105
7914? ? ?? ? ?fastergcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017020720170105
7929? ? ?? ? ?fastergcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017020720170105
7938? ? ?? ? ?fastergcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020720170105
7944? ? ?? ? ?fastergcc_-march=barcelona_-O_-fomit-frame-pointer2017020720170105
7986? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017020720170105
7989? ? ?? ? ?fastergcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017020720170105
8034? ? ?? ? ?fastergcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017020720170105
8037? ? ?? ? ?fastergcc_-march=nocona_-O_-fomit-frame-pointer2017020720170105
8061? ? ?? ? ?fastergcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017020720170105
8079? ? ?? ? ?fastergcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020720170105
8088? ? ?? ? ?fastergcc_-Os_-fomit-frame-pointer2017020720170105
8088? ? ?? ? ?fastergcc_-march=barcelona_-Os_-fomit-frame-pointer2017020720170105
8094? ? ?? ? ?fastergcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017020720170105
8100? ? ?? ? ?fastergcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020720170105
8106? ? ?? ? ?fastergcc_-m64_-Os_-fomit-frame-pointer2017020720170105
8106? ? ?? ? ?fastergcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017020720170105
8160? ? ?? ? ?fastergcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017020720170105
8193? ? ?? ? ?fastergcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020720170105
8205? ? ?? ? ?fastergcc_-funroll-loops_-Os_-fomit-frame-pointer2017020720170105
8217? ? ?? ? ?fastergcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017020720170105
8367? ? ?? ? ?fastergcc_-O_-fomit-frame-pointer2017020720170105
8379? ? ?? ? ?fastergcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017020720170105
8547? ? ?? ? ?fastergcc_-m64_-march=k8_-O_-fomit-frame-pointer2017020720170105
17130? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020720170105
17631? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020720170105
17637? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017020720170105
17655? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020720170105
17667? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017020720170105
17685? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020720170105
17694? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020720170105
17700? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017020720170105
17844? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017020720170105
17874? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020720170105
18321? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017020720170105
18330? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017020720170105
18513? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017020720170105
18543? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017020720170105
18552? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017020720170105
18558? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017020720170105
18567? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017020720170105
18573? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020720170105
18621? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017020720170105
19332? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017020720170105
19350? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017020720170105
19368? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017020720170105
19374? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017020720170105
19377? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017020720170105
19383? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017020720170105
19419? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017020720170105
19575? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017020720170105
19857? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017020720170105
19884? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017020720170105
19896? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017020720170105
19902? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017020720170105
19923? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017020720170105
19941? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020720170105
19950? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017020720170105
20070? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017020720170105
20172? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017020720170105
20541? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017020720170105
20592? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020720170105
20670? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020720170105
20736? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017020720170105
20748? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017020720170105
20805? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017020720170105
20862? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017020720170105
20922? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017020720170105
21057? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017020720170105
21057? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017020720170105
21780? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017020720170105
25896? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017020720170105
26112? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017020720170105
26235? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017020720170105
26253? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017020720170105
26259? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017020720170105
26331? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017020720170105
26643? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017020720170105
26691? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017020720170105
26994? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017020720170105
27054? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017020720170105
27081? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017020720170105
27108? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017020720170105
27129? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017020720170105
27150? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017020720170105
27153? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020720170105
27204? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020720170105
27234? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017020720170105
27567? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017020720170105
28059? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017020720170105
28068? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017020720170105
28068? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017020720170105
28191? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017020720170105
28203? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017020720170105
28218? ? ?? ? ?fastercc2017020720170105
28521? ? ?? ? ?fastergcc2017020720170105
28521? ? ?? ? ?fastergcc_-funroll-loops2017020720170105
28578? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017020720170105
28602? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017020720170105
28614? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017020720170105
28656? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017020720170105
28659? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017020720170105
28761? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017020720170105
28809? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017020720170105
28824? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020720170105
28842? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017020720170105
28890? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017020720170105
28953? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017020720170105
29277? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017020720170105
29511? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017020720170105
29517? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017020720170105
29520? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017020720170105
29520? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017020720170105
29529? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017020720170105
29529? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017020720170105
29532? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017020720170105
29562? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020720170105
29580? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017020720170105
29850? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017020720170105
29961? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017020720170105
30453? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017020720170105
30504? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017020720170105
30813? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017020720170105
31200? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017020720170105
31419? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020720170105
31461? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017020720170105
31650? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017020720170105
31728? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017020720170105
32732? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020720170105
32931? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017020720170105
33018? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017020720170105
33276? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017020720170105
33744? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017020720170105
33855? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017020720170105
33900? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020720170105
33915? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017020720170105
34626? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017020720170105
34641? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017020720170105
34653? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017020720170105
34656? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017020720170105
34881? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017020720170105
34995? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020720170105
35031? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017020720170105
35040? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017020720170105
35202? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017020720170105
36198? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017020720170105
36822? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017020720170105
37020? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017020720170105
39748? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017020720170105
206670? ? ?? ? ?refcc2017020720170105
207786? ? ?? ? ?refgcc2017020720170105
220509? ? ?? ? ?refgcc_-funroll-loops2017020720170105

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-sse
Compiler: cc
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: c128.h: In function ‘chacha_noxor128’:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline ‘_mm_shuffle_epi8’: target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:190:0:
encrypt.c: c128.h:14:84: error: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); ^
encrypt.c: ...
encrypt.c: In file included from encrypt.c:190:0:
encrypt.c: c128.h:14:84: error: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); ^
encrypt.c: c128.h:17:36: note: in expansion of macro ‘VEC4_QUARTERROUND_SHUFFLE’
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: c128.h:106:7: note: in expansion of macro ‘VEC4_QUARTERROUND’
encrypt.c: VEC4_QUARTERROUND( 3, 4, 9,14);
encrypt.c: ^

Number of similar (compiler,implementation) pairs: 71, namely:
CompilerImplementations
cc dolbeau/amd64-sse
gcc dolbeau/amd64-sse
gcc -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops dolbeau/amd64-sse
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx2
Compiler: cc
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘prf_hash2_1’:
encrypt.c: encrypt.c:403:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i kv0 = _mm256_loadu_si256((const __m256i*)(nhkey+ 0)); // 1
encrypt.c: ^

Number of similar (compiler,implementation) pairs: 87, namely:
CompilerImplementations
cc dolbeau/amd64-avx2
gcc dolbeau/amd64-avx2
gcc -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops dolbeau/amd64-avx2
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx512
Compiler: cc
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘_mm512_reduce_add_epi64’:
encrypt.c: encrypt.c:316:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘prf_hash2_1’:
encrypt.c: encrypt.c:460:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
encrypt.c: from encrypt.c:54:
encrypt.c: encrypt.c:476:50: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc dolbeau/amd64-avx512
gcc dolbeau/amd64-avx512
gcc -funroll-loops dolbeau/amd64-avx512

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-sse
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: In file included from encrypt.c:190:
encrypt.c: ./c128.h:99:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor128' that is compiled without support for 'ssse3'
encrypt.c: VEC4_QUARTERROUND( 0, 4, 8,12);
encrypt.c: ^
encrypt.c: ./c128.h:17:36: note: expanded from macro 'VEC4_QUARTERROUND'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: ./c128.h:12:86: note: expanded from macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); ^
encrypt.c: ...
encrypt.c: x_3 = _mm_shuffle_epi8(x_3, rot16);
encrypt.c: ^
encrypt.c: ./c8.h:36:13: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor8' that is compiled without support for 'ssse3'
encrypt.c: x_3 = _mm_shuffle_epi8(x_3, rot8);
encrypt.c: ^
encrypt.c: ./c8.h:50:13: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor8' that is compiled without support for 'ssse3'
encrypt.c: x_3 = _mm_shuffle_epi8(x_3, rot16);
encrypt.c: ^
encrypt.c: fatal error: too many errors emitted, stopping now [-ferror-limit=]
encrypt.c: 20 errors generated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-sse
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-sse
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-sse
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-sse

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx2
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:90:2: error: "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx2
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx2
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx2
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx2
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx2
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx2

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx512
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:90:2: error: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: encrypt.c:329:15: error: invalid input constraint 'Yz' in asm
encrypt.c: : [a] "Yz" (a)
encrypt.c: ^
encrypt.c: encrypt.c:460:26: warning: implicit declaration of function '_mm512_loadu_si512' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^
encrypt.c: encrypt.c:460:19: error: initializing '__m512i' (vector of 8 'long long' values) with an expression of incompatible type 'int'
encrypt.c: ...
encrypt.c: encrypt.c:360:5: note: expanded from macro 'BLOCK'
encrypt.c: BLOCKUNPACK(s, I); ^~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:353:13: note: expanded from macro 'BLOCKUNPACK'
encrypt.c: __m512i av04hi64##I##s = _mm512_unpackhi_epi32(av04##I##s, _mm512_setzero_si512())
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: <scratch space>:526:1: note: expanded from here
encrypt.c: av04hi6410
encrypt.c: ^
encrypt.c: 3 warnings and 11 errors generated.

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

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx512
Compiler: gcc -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘_mm512_reduce_add_epi64’:
encrypt.c: encrypt.c:316:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘prf_hash2_1’:
encrypt.c: encrypt.c:460:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^
encrypt.c: encrypt.c:476:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^

Number of similar (compiler,implementation) pairs: 84, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-sse
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: c128.h: In function ‘chacha_noxor128’:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline ‘_mm_shuffle_epi8’: target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:190:0:
encrypt.c: c128.h:14:84: error: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); ^
encrypt.c: ...
encrypt.c: In file included from encrypt.c:190:0:
encrypt.c: c128.h:14:84: error: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); ^
encrypt.c: c128.h:17:36: note: in expansion of macro ‘VEC4_QUARTERROUND_SHUFFLE’
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: c128.h:106:7: note: in expansion of macro ‘VEC4_QUARTERROUND’
encrypt.c: VEC4_QUARTERROUND( 3, 4, 9,14);
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: c128.h: In function ‘chacha_noxor128’:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline ‘_mm_shuffle_epi8’: target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:190:0:
encrypt.c: c128.h:14:84: error: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); ^
encrypt.c: ...
encrypt.c: In file included from encrypt.c:190:0:
encrypt.c: c128.h:14:84: error: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); ^
encrypt.c: c128.h:17:36: note: in expansion of macro ‘VEC4_QUARTERROUND_SHUFFLE’
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: c128.h:106:7: note: in expansion of macro ‘VEC4_QUARTERROUND’
encrypt.c: VEC4_QUARTERROUND( 3, 4, 9,14);
encrypt.c: ^

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

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx2
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘prf_hash2_1’:
encrypt.c: encrypt.c:403:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i kv0 = _mm256_loadu_si256((const __m256i*)(nhkey+ 0)); // 1
encrypt.c: ^
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘prf_hash2_1’:
encrypt.c: encrypt.c:403:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i kv0 = _mm256_loadu_si256((const __m256i*)(nhkey+ 0)); // 1
encrypt.c: ^

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

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx512
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘_mm512_reduce_add_epi64’:
encrypt.c: encrypt.c:316:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘prf_hash2_1’:
encrypt.c: encrypt.c:460:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^
encrypt.c: encrypt.c:476:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘_mm512_reduce_add_epi64’:
encrypt.c: encrypt.c:316:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘prf_hash2_1’:
encrypt.c: encrypt.c:460:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^
encrypt.c: encrypt.c:476:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^

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

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx2
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer dolbeau/amd64-avx2

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx512
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘_mm512_reduce_add_epi64’:
encrypt.c: encrypt.c:316:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: encrypt.c: In function ‘prf_hash2_1’:
encrypt.c: encrypt.c:460:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/amd64-avx512
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/amd64-avx512
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/amd64-avx512
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/amd64-avx512