Implementation notes: amd64, skylake, crypto_aead/deoxysii256v141

Computer: skylake
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_aead
Primitive: deoxysii256v141
TimeImplementationCompilerBenchmark dateSUPERCOP version
10912aesnigcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
11064aesnigcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
11064aesnigcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
11116aesnigcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
11172aesnigcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
11174aesnigcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
11176aesnigcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
11184aesnigcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
11212aesnigcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
11228aesnigcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
11254aesnigcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
11302aesnigcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
11302aesnigcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
11342aesnigcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
11358aesnigcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
11414aesnigcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
11416aesnigcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
11438aesnigcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
11460aesnigcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
11490aesnigcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
11896aesniclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
12350aesniclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
12430aesniclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
12458aesniclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
714224tableclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
714710tableclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
715184tableclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
718856tablegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
723562tableclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
723586tablegcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
723762tablegcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
724028tableclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
724324tablegcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
724326tablegcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
725312tablegcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
726690tablegcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
727328tablegcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
727920tablegcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
727934tablegcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
728360tablegcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
728464tablegcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
729068tablegcc -m64 -O3 -fomit-frame-pointer2016121620161026
729268tablegcc -O3 -fomit-frame-pointer2016121620161026
730020tablegcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
730202tablegcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
730844tablegcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
730912tablegcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
731260tableclang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
731804tablegcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
732122tablegcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
732276tablegcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
732496tablegcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
733036tablegcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
733856tablegcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
734094tablegcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
734136tablegcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
735120tablegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
735930tablegcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
736062tableclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
736548tablegcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
736604tablegcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
736676tableclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
736850tablegcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
737812tablegcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
738124tablegcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
738162tablegcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
740822tablegcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
741036tablegcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
741460tablegcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
741572tablegcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
742594tablegcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
743166tablegcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
743430tablegcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
743992tablegcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
744018tablegcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
744168tablegcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
744270tablegcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
744762tablegcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
745400tablegcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
745428tablegcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
745660tablegcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
746258tablegcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
747594tablegcc -m64 -O2 -fomit-frame-pointer2016121620161026
749792tablegcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
750136tablegcc -O2 -fomit-frame-pointer2016121620161026
750772tablegcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
751656tableclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
760926tableclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
1334152refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
1382610tablegcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
1385466tablegcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
1385480tablegcc -Os -fomit-frame-pointer2016121620161026
1388194tablegcc -march=nocona -Os -fomit-frame-pointer2016121620161026
1388318tablegcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
1388918tablegcc -m64 -Os -fomit-frame-pointer2016121620161026
1389148tablegcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
1390668tablegcc -march=k8 -Os -fomit-frame-pointer2016121620161026
1392866tablegcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
1393046refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
1394038refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
1394334tablegcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
1396346refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
1397526refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
1397896refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
1397962tablegcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
1400250tablegcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
1401018refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
1401070refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
1402354tablegcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
1405302tablegcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
1405594tablegcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
1405786tablegcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
1407258tablegcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
1407844tablegcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
1408962tablegcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
1411606tablegcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
1415238refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
1420762tablegcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
1421902tablegcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
1427488tablegcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
1431176tablegcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
1434044tablegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
1450950refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
1451898refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
1453108refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
1459704refgcc -m64 -O3 -fomit-frame-pointer2016121620161026
1462172refgcc -O3 -fomit-frame-pointer2016121620161026
1462664refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
1463328refgcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
1468836tablegcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
1476228refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
1478418refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
1479526refgcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
1480090tablegcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
1486778tablegcc -O -fomit-frame-pointer2016121620161026
1487608refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
1493192tablegcc -m64 -O -fomit-frame-pointer2016121620161026
1494120refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
1495824tablegcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
1498434refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
1498554refclang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
1499190tablegcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
1499726tablegcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
1500738tablegcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
1501158refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
1501550tablegcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
1501858tablegcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
1502224refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
1502590tablegcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
1502614refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
1506264refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
1509968refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
1520670tablegcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
1523782tablegcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
1525172refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
1584722tablegcc -march=k8 -O -fomit-frame-pointer2016121620161026
1589642tablegcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
1589856tablegcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
1598712tablegcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
1599316tablegcc -march=nocona -O -fomit-frame-pointer2016121620161026
1600928tablegcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
1603530refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
1605334refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
1611064refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
1611864refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
1630242tablegcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
1631456tablegcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
1634908tablegcc -march=barcelona -O -fomit-frame-pointer2016121620161026
1636592tablegcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
1654830tablegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
1656464tablegcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
1664636tablegcc -funroll-loops -O -fomit-frame-pointer2016121620161026
1665624tablegcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
1668440tablegcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
1670686tablegcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
1778504refgcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
1780862refgcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
1781336refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
1781416refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
2268164refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
2269540refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
2275824refgcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
2277122refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
2282002refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
2284656refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
2286934refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
2353546refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
2368040refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
2662830refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
2663380refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
2663522refgcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
2669450refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
2690832refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
2755056refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
2755164refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
2761076refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
2840112refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
2840630refgcc -O2 -fomit-frame-pointer2016121620161026
2840674refgcc -m64 -O2 -fomit-frame-pointer2016121620161026
2840716refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
2844028refgcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
2844966refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
2857546refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
2877562refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
2908890refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
2908890refgcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
3011002tablegcc -funroll-loops2016121620161026
3020418tablegcc2016121620161026
3032920tablecc2016121620161026
3965062refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
3966210refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
4316444refgcc -funroll-loops -O -fomit-frame-pointer2016121620161026
4326238refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
4355758refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
4358940refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
4361484refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
4408140refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
4421166refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
4604460refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
4608488refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
4636064refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
4662976refgcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
4673270refgcc -march=nocona -O -fomit-frame-pointer2016121620161026
4809356refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
4809774refgcc -march=barcelona -O -fomit-frame-pointer2016121620161026
4867062refgcc -march=k8 -O -fomit-frame-pointer2016121620161026
4867142refgcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
4909084refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
4916328refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
4918256refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
4920760refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
4922496refgcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
4922604refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
4923954refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
4935836refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
4940890refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
4948582refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
4975308refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
4977018refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
5042800refgcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
5188312refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
5189814refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
5296072refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
5339808refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
5392144refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
5409372refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
5423110refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
5488960refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
5489318refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
5630212refgcc -m64 -O -fomit-frame-pointer2016121620161026
5641668refgcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
5647092refgcc -O -fomit-frame-pointer2016121620161026
5715182refgcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
5715496refgcc -m64 -Os -fomit-frame-pointer2016121620161026
5715620refgcc -Os -fomit-frame-pointer2016121620161026
5715880refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
5724148refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
5725386refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
5726912refgcc -march=k8 -Os -fomit-frame-pointer2016121620161026
5732430refgcc -march=nocona -Os -fomit-frame-pointer2016121620161026
5747980refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
5752794refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
6858650refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
10300008refgcc -funroll-loops2016121620161026
10307804refgcc2016121620161026
10411152refcc2016121620161026

Compiler output

Implementation: crypto_aead/deoxysii256v141/aesni
Compiler: cc
deoxys.c: In file included from deoxys.c:31:0:
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.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
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:104:9: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c:
deoxys.c: In file included from deoxys.c:31:0:
deoxys.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
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:104:9: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c:
deoxys.c: In file included from deoxys.c:31:0:
deoxys.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
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:32:0:
deoxys.c: tweakable-cipher.macros:7:22: note: called from here
deoxys.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys.c: ^~~~~~~~~~~~~~~~~~~~~
deoxys.c: tweakable-cipher.macros:35:16: note: in expansion of macro 'permute'
deoxys.c: new_key2 = permute( new_key2, H_PERMUTATION);
deoxys.c: ...

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

Compiler output

Implementation: crypto_aead/deoxysii256v141/aesni
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
deoxys.c: deoxys.c:104:11: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'ssse3'
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:7:22: note: expanded from macro 'permute'
deoxys.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys.c: ^
deoxys.c: deoxys.c:112:3: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'ssse3'
deoxys.c: TWEAKEY_SCHEDULE3( tsubkeys1,tsubkeys2,subkeys, key);
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:43:3: note: expanded from macro 'TWEAKEY_SCHEDULE3'
deoxys.c: ONE_KEY_ROUND( subkeys1[ 0], subkeys1[ 1], subkeys2[ 0], subkeys2[ 1] ); ts[ 1] = xor( xor(subkeys1[ 1],subkeys2[ 1]), RCONS[ 1] ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:34:16: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c: new_key1 = permute( new_key1, H_PERMUTATION);\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:7:22: note: expanded from macro 'permute'
deoxys.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys.c: ^
deoxys.c: deoxys.c:112:3: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'ssse3'
deoxys.c: ./tweakable-cipher.macros:43:3: note: expanded from macro 'TWEAKEY_SCHEDULE3'
deoxys.c: ONE_KEY_ROUND( subkeys1[ 0], subkeys1[ 1], subkeys2[ 0], subkeys2[ 1] ); ts[ 1] = xor( xor(subkeys1[ 1],subkeys2[ 1]), RCONS[ 1] ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:35:16: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c: new_key2 = permute( new_key2, H_PERMUTATION);
deoxys.c: ^
deoxys.c: ...

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

Compiler output

Implementation: crypto_aead/deoxysii256v141/aesni
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments
deoxys.c: deoxys.c:151:15: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'aes'
deoxys.c: PROCESS_8_ASS_DATA_BLOCKS( States, ass_data + 16 * i , Auth );
deoxys.c: ^
deoxys.c: ./ae.macros:51:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: AES8 ( States, subkeys, tTweak ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:118:3: note: expanded from macro 'AES8'
deoxys.c: ONE_ROUND( states , subkeys[ 1] , RT[ 1] , 1 );\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:105:8: note: expanded from macro 'ONE_ROUND'
deoxys.c: s[0] = enc( s[0] , tmp );\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:1:18: note: expanded from macro 'enc'
deoxys.c: #define enc(a,b) _mm_aesenc_si128(a,b)
deoxys.c: ^
deoxys.c: deoxys.c:151:15: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'deoxys_aead_encrypt' that is compiled without support for 'aes'
deoxys.c: ./ae.macros:51:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: AES8 ( States, subkeys, tTweak ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:118:3: note: expanded from macro 'AES8'
deoxys.c: ONE_ROUND( states , subkeys[ 1] , RT[ 1] , 1 );\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:106:8: note: expanded from macro 'ONE_ROUND'
deoxys.c: s[1] = enc( s[1] , xor(tmp, tw_c[Round][1] ) );\
deoxys.c: ^
deoxys.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments aesni
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments aesni

Compiler output

Implementation: crypto_aead/deoxysii256v141/aesni
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
deoxys.c: In file included from deoxys.c:31:0:
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.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
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:104:9: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c:
deoxys.c: In file included from deoxys.c:31:0:
deoxys.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
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:104:9: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c:
deoxys.c: In file included from deoxys.c:31:0:
deoxys.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
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:32:0:
deoxys.c: tweakable-cipher.macros:7:22: note: called from here
deoxys.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys.c: ^~~~~~~~~~~~~~~~~~~~~
deoxys.c: tweakable-cipher.macros:35:16: note: in expansion of macro 'permute'
deoxys.c: new_key2 = permute( new_key2, H_PERMUTATION);
deoxys.c: ...
deoxys.c: In file included from deoxys.c:31:0:
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.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
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:104:9: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c:
deoxys.c: In file included from deoxys.c:31:0:
deoxys.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
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: deoxys.c:104:9: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
deoxys.c:
deoxys.c: In file included from deoxys.c:31:0:
deoxys.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
deoxys.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:32:0:
deoxys.c: tweakable-cipher.macros:7:22: note: called from here
deoxys.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys.c: ^~~~~~~~~~~~~~~~~~~~~
deoxys.c: tweakable-cipher.macros:35:16: note: in expansion of macro 'permute'
deoxys.c: new_key2 = permute( new_key2, H_PERMUTATION);
deoxys.c: ...

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

Compiler output

Implementation: crypto_aead/deoxysii256v141/aesni
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: deoxys.c: In function 'deoxys_aead_encrypt':
deoxys.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
deoxys.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:32:0:
deoxys.c: tweakable-cipher.macros:1:18: note: called from here
deoxys.c: #define enc(a,b) _mm_aesenc_si128(a,b)
deoxys.c: ^~~~~~~~~~~~~~~~~~~~~
deoxys.c: tweakable-cipher.macros:112:8: note: in expansion of macro 'enc'
deoxys.c: s[7] = enc( s[7] , xor(tmp, tw_c[Round][7] ) );\
deoxys.c: ^~~
deoxys.c: tweakable-cipher.macros:133:3: note: in expansion of macro 'ONE_ROUND'
deoxys.c: ONE_ROUND( states , subkeys[16] , RT[ 0] , 16 );\
deoxys.c: ^~~~~~~~~
deoxys.c: ae.macros:51:11: note: in expansion of macro 'AES8'
deoxys.c: AES8 ( States, subkeys, tTweak ); \
deoxys.c: ^~~~
deoxys.c: deoxys.c:151:15: note: in expansion of macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: PROCESS_8_ASS_DATA_BLOCKS( States, ass_data + 16 * i , Auth );
deoxys.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
deoxys.c: In file included from deoxys.c:30:0:
deoxys.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
deoxys.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
deoxys.c: ^~~~~~~~~~~~~~~~
deoxys.c: ...

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core2 -O2 -fomit-frame-pointer aesni
gcc -m64 -march=core2 -O3 -fomit-frame-pointer aesni
gcc -m64 -march=core2 -O -fomit-frame-pointer aesni
gcc -m64 -march=core2 -Os -fomit-frame-pointer aesni
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer aesni
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer aesni
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer aesni
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer aesni
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer aesni
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer aesni
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer aesni
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer aesni
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer aesni
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer aesni
gcc -m64 -march=corei7 -O -fomit-frame-pointer aesni
gcc -m64 -march=corei7 -Os -fomit-frame-pointer aesni