Implementation notes: amd64, skylake, crypto_aead/hs1sivhiv2

Computer: skylake
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_aead
Primitive: hs1sivhiv2
TimeImplementationCompilerBenchmark dateSUPERCOP version
10566dolbeau/amd64-avx2gcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
10650dolbeau/amd64-avx2gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
10726dolbeau/amd64-avx2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
10840dolbeau/amd64-avx2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
10846dolbeau/amd64-avx2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
10908dolbeau/amd64-avx2gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
10910dolbeau/amd64-avx2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
10954dolbeau/amd64-avx2gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
10982dolbeau/amd64-avx2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
11038dolbeau/amd64-avx2clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
11174fastergcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
11242dolbeau/amd64-avx2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
11324dolbeau/amd64-avx2gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
11324fastergcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
11396dolbeau/amd64-avx2clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
11408dolbeau/amd64-avx2gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
11434fastergcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
11700fastergcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
11816fastergcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
11846fastergcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
11888fastergcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
11906fastergcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
11978fastergcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
11994fastergcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
12002fastergcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
12012fastergcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
12686dolbeau/amd64-avx2clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
12748dolbeau/amd64-avx2clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
17844fastergcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
17850fastergcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
17854fasterclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
17910fasterclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
18042fastergcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
18044fastergcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
18196dolbeau/amd64-ssegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
18234dolbeau/amd64-ssegcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
18312dolbeau/amd64-ssegcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
18316fastergcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
18406fastergcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
18498fastergcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
18510fastergcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
18536dolbeau/amd64-ssegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
18544dolbeau/amd64-ssegcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
18550fastergcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
18554dolbeau/amd64-ssegcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
18558dolbeau/amd64-ssegcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
18564fastergcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
18590dolbeau/amd64-ssegcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
18622dolbeau/amd64-ssegcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
18632dolbeau/amd64-ssegcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
18644dolbeau/amd64-ssegcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
18662dolbeau/amd64-ssegcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
18692fastergcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
18756dolbeau/amd64-ssegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
18786dolbeau/amd64-ssegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
18792dolbeau/amd64-sseclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
18798dolbeau/amd64-ssegcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
18816dolbeau/amd64-sseclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
18822dolbeau/amd64-sseclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
18826fastergcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
18830dolbeau/amd64-sseclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
18834dolbeau/amd64-sseclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
18842dolbeau/amd64-ssegcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
18890fastergcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
18938dolbeau/amd64-ssegcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
18962dolbeau/amd64-sseclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
18966dolbeau/amd64-ssegcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
19038dolbeau/amd64-ssegcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
19078fastergcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
19096fastergcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
19186dolbeau/amd64-ssegcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
19236fastergcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
19446dolbeau/amd64-ssegcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
19480dolbeau/amd64-ssegcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
19506dolbeau/amd64-ssegcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
19614dolbeau/amd64-ssegcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
19632dolbeau/amd64-ssegcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
19632fastergcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
19636fastergcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
19648dolbeau/amd64-ssegcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
19694dolbeau/amd64-ssegcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
19716dolbeau/amd64-ssegcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
19742dolbeau/amd64-ssegcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
19754fastergcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
19774dolbeau/amd64-ssegcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
19792dolbeau/amd64-ssegcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
19800dolbeau/amd64-ssegcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
19834fastergcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
22308fastergcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
22310fastergcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
22322fastergcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
22324fastergcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
22394fastergcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
22394fastergcc -m64 -O3 -fomit-frame-pointer2016121620161026
22398fastergcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
22402fastergcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
22416fastergcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
22424fastergcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
22432fastergcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
22448fastergcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
22458fastergcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
22466fastergcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
22466fastergcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
22534fastergcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
22536fastergcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
22558fastergcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
22558fastergcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
22568fastergcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
22586fastergcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
22598fastergcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
22602fastergcc -O3 -fomit-frame-pointer2016121620161026
22614fastergcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
22648fastergcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
22652fastergcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
22678fastergcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
22752fastergcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
22760fastergcc -m64 -O2 -fomit-frame-pointer2016121620161026
22776fastergcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
22784fastergcc -O2 -fomit-frame-pointer2016121620161026
22794fastergcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
22802fastergcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
22816fastergcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
22926fastergcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
23016fastergcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
23288fastergcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
23382fastergcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
23394fastergcc -funroll-loops -O -fomit-frame-pointer2016121620161026
23456fastergcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
23496fastergcc -march=nocona -O -fomit-frame-pointer2016121620161026
23512fastergcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
23532fastergcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
23542fastergcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
23564fastergcc -O -fomit-frame-pointer2016121620161026
23574fastergcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
23618fastergcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
23674fastergcc -march=barcelona -O -fomit-frame-pointer2016121620161026
23682fastergcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
23700fastergcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
23710fastergcc -m64 -O -fomit-frame-pointer2016121620161026
23814fastergcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
23896fastergcc -march=k8 -O -fomit-frame-pointer2016121620161026
24188fastergcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
28596fastergcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
28640fastergcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
28644fastergcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
28690fastergcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
28788fastergcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
28826fastergcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
28942fastergcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
29118fastergcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
29126dolbeau/amd64-ssegcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
29166fastergcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
29250dolbeau/amd64-ssegcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
29286dolbeau/amd64-ssegcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
29330dolbeau/amd64-ssegcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
39820fastergcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
39956refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
40002refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
40056fastergcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
40140refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
40200fastergcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
40238refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
40264refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
40284refclang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
40340fastergcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
40432refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
40708refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
40814refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
41958refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
42416fastergcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
42424fastergcc -Os -fomit-frame-pointer2016121620161026
42426fastergcc -march=k8 -Os -fomit-frame-pointer2016121620161026
42432fastergcc -m64 -Os -fomit-frame-pointer2016121620161026
42468fastergcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
42602fastergcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
42664fastergcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
42754fastergcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
42956fastergcc -march=nocona -Os -fomit-frame-pointer2016121620161026
43000refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
43084refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
43176refgcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
43438refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
43452refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
43492refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
43602refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
43646refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
43792refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
44690refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
44696refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
44778refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
44820refgcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
44830refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
44856refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
44912refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
44952refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
44986refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
45148refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
45152refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
45222refgcc -m64 -O3 -fomit-frame-pointer2016121620161026
45280refgcc -O3 -fomit-frame-pointer2016121620161026
45298refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
45424refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
45430refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
45506refgcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
46132refgcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
46506refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
46556refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
46678refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
46802refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
46812refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
46820refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
46830refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
46948refgcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
47094refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
51138refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
51230refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
51546refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
53022refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
53122refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
53262refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
53334refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
53418refgcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
53490refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
53540refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
53568refgcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
53570refgcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
53674refgcc -O2 -fomit-frame-pointer2016121620161026
53756refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
53758refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
53860refgcc -m64 -O2 -fomit-frame-pointer2016121620161026
54066refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
54152refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
54458refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
54596refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
54700refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
55414refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
55550refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
55612refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
55682refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
55700refgcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
55758refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
55796refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
55832refgcc -march=k8 -Os -fomit-frame-pointer2016121620161026
55898refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
55922refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
56020refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
56088refgcc -march=nocona -Os -fomit-frame-pointer2016121620161026
56140refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
56144refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
56182refgcc -Os -fomit-frame-pointer2016121620161026
56192refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
56228refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
56228refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
56242refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
56432refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
56434refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
56532refgcc -m64 -Os -fomit-frame-pointer2016121620161026
56626refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
57012refgcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
65110refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
65128refgcc -funroll-loops -O -fomit-frame-pointer2016121620161026
65814refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
65988refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
66954refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
67002refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
67220refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
67790refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
67912refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
69500refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
69692refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
70032refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
70904refgcc -O -fomit-frame-pointer2016121620161026
71164refgcc -m64 -O -fomit-frame-pointer2016121620161026
71282refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
71294refgcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
71306refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
71418refgcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
71690refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
71752refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
71938refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
71988refgcc -march=barcelona -O -fomit-frame-pointer2016121620161026
72414refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
73032refgcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
74506refgcc -march=nocona -O -fomit-frame-pointer2016121620161026
74984refgcc -march=k8 -O -fomit-frame-pointer2016121620161026
75272refgcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
78976fastergcc2016121620161026
79000fastercc2016121620161026
79306fastergcc -funroll-loops2016121620161026
497102refcc2016121620161026
497304refgcc2016121620161026
504206refgcc -funroll-loops2016121620161026

Test failure

Implementation: crypto_aead/hs1sivhiv2/faster
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
error 111

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

Compiler output

Implementation: crypto_aead/hs1sivhiv2/dolbeau/amd64-sse
Compiler: cc
encrypt.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: c256.h: In function 'chacha_noxor368':
encrypt.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/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:192:0:
encrypt.c: c256.h:14:84: note: 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: c256.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: c256.h:105: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-pc-linux-gnu/6.2.1/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/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:192:0:
encrypt.c: c256.h:12:84: note: 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, rot16); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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/hs1sivhiv2/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: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:110:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i rot16 = _mm256_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2,13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
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/hs1sivhiv2/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:329: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: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:110:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i rot16 = _mm256_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2,13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
encrypt.c: ^~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_3':
encrypt.c: encrypt.c:505: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: 87, namely:
CompilerImplementations
cc dolbeau/amd64-avx512
gcc dolbeau/amd64-avx512
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 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/hs1sivhiv2/dolbeau/amd64-sse
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: In file included from encrypt.c:192:
encrypt.c: ./c256.h:98:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor368' that is compiled without support for 'ssse3'
encrypt.c: VEC4_QUARTERROUND( 0, 4, 8,12);
encrypt.c: ^
encrypt.c: ./c256.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: ./c256.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: ./c256.h:98:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor368' that is compiled without support for 'ssse3'
encrypt.c: ./c256.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: ./c256.h:14: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, rot8); \
encrypt.c: ^
encrypt.c: ./c256.h:99:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor368' that is compiled without support for 'ssse3'
encrypt.c: VEC4_QUARTERROUND( 1, 5, 9,13);
encrypt.c: ^
encrypt.c: ./c256.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: ./c256.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: ...

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/hs1sivhiv2/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/hs1sivhiv2/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:342:15: error: invalid input constraint 'Yz' in asm
encrypt.c: : [a] "Yz" (a)
encrypt.c: ^
encrypt.c: 2 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/hs1sivhiv2/dolbeau/amd64-sse
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: c256.h: In function 'chacha_noxor368':
encrypt.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/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:192:0:
encrypt.c: c256.h:14:84: note: 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: c256.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: c256.h:105: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-pc-linux-gnu/6.2.1/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/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:192:0:
encrypt.c: c256.h:12:84: note: 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, rot16); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...
encrypt.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: c256.h: In function 'chacha_noxor368':
encrypt.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/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:192:0:
encrypt.c: c256.h:14:84: note: 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: c256.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: c256.h:105: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-pc-linux-gnu/6.2.1/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/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:192:0:
encrypt.c: c256.h:12:84: note: 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, rot16); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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/hs1sivhiv2/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: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:110:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i rot16 = _mm256_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2,13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
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: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:110:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i rot16 = _mm256_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2,13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
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/hs1sivhiv2/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:329: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: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:110:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i rot16 = _mm256_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2,13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
encrypt.c: ^~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_3':
encrypt.c: encrypt.c:505: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: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:329: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: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:110:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i rot16 = _mm256_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2,13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
encrypt.c: ^~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_3':
encrypt.c: encrypt.c:505: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: 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/hs1sivhiv2/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/hs1sivhiv2/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:329: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_3':
encrypt.c: encrypt.c:505: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