Implementation notes: amd64, skylake, crypto_aead/deoxysi128v141

Computer: skylake
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_aead
Primitive: deoxysi128v141
TimeImplementationCompilerBenchmark dateSUPERCOP version
7016aesnigcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
7018aesnigcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
7030aesnigcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
7032aesnigcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
7034aesnigcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
7160aesnigcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
7164aesnigcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
7168aesnigcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
7176aesnigcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
7178aesnigcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
7296aesnigcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
7302aesnigcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
7324aesnigcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
7324aesnigcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
7324aesnigcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
7328aesnigcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
7338aesnigcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
7474aesnigcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
7504aesnigcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
7504aesnigcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
7622aesniclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
7860aesniclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
8292aesniclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
8312aesniclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
117742tablegcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
119200tablegcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
119898tablegcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
121240tablegcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
121336tablegcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
121710tablegcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
121746tablegcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
121762tablegcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
121828tablegcc -m64 -O2 -fomit-frame-pointer2016121620161026
121896tablegcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
122104tablegcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
122178tablegcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
122186tablegcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
122190tablegcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
122562tablegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
122706tablegcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
122782tablegcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
122848tablegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
122896tablegcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
123014tablegcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
123020tablegcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
123116tablegcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
123320tablegcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
123534tablegcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
123586tablegcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
123794tablegcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
123802tablegcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
123838tablegcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
123924tablegcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
124122tablegcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
124256tablegcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
124280tablegcc -O2 -fomit-frame-pointer2016121620161026
124298tablegcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
124336tablegcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
124402tablegcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
124416tablegcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
124520tablegcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
124770tablegcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
124796tablegcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
125178tablegcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
125224tablegcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
125242tablegcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
125284tablegcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
125306tablegcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
125318tablegcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
125328tablegcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
125392tablegcc -march=nocona -Os -fomit-frame-pointer2016121620161026
125530tablegcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
125570tablegcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
125694tablegcc -funroll-loops -O -fomit-frame-pointer2016121620161026
125710tablegcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
125728tablegcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
125842tablegcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
125896tablegcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
125912tablegcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
126010tablegcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
126014tablegcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
126040tablegcc -march=k8 -Os -fomit-frame-pointer2016121620161026
126054tablegcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
126064tablegcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
126090tablegcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
126098tablegcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
126232tablegcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
126262tablegcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
126268tablegcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
126280tablegcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
126388tablegcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
126428tablegcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
126514tablegcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
126604tablegcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
126654tablegcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
126670tablegcc -m64 -O3 -fomit-frame-pointer2016121620161026
126686tablegcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
126782tablegcc -Os -fomit-frame-pointer2016121620161026
126816tablegcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
126858tablegcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
126978tablegcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
127108tablegcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
127446tablegcc -O3 -fomit-frame-pointer2016121620161026
127462tablegcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
127702tablegcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
127836tablegcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
128250tablegcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
128398tablegcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
128544tablegcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
128806tablegcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
129148tablegcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
129290tablegcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
129318tablegcc -march=nocona -O -fomit-frame-pointer2016121620161026
129414tablegcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
129430tablegcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
129528tablegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
129564tablegcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
129644tablegcc -march=barcelona -O -fomit-frame-pointer2016121620161026
129718tablegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
129818tablegcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
130084tablegcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
130090tablegcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
130120tablegcc -march=k8 -O -fomit-frame-pointer2016121620161026
130156tablegcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
130258tablegcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
130402tablegcc -m64 -Os -fomit-frame-pointer2016121620161026
130536tablegcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
131454tablegcc -m64 -O -fomit-frame-pointer2016121620161026
131738tablegcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
131756tablegcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
132028tableclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
132336tablegcc -O -fomit-frame-pointer2016121620161026
132358tableclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
132618tableclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
133000tableclang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
133188tableclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
133368tableclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
134346tableclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
134372tableclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
134816tableclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
135100tablegcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
137152tableclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
275202tablecc2016121620161026
278808tablegcc -funroll-loops2016121620161026
282532tablegcc2016121620161026
692104refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
692124refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
696566refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
698034refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
698580refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
698644refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
698786refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
702282refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
704166refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
707600refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
707840refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
707972refgcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
712388refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
712662refgcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
712736refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
728842refgcc -m64 -O3 -fomit-frame-pointer2016121620161026
731198refgcc -O3 -fomit-frame-pointer2016121620161026
731984refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
734250refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
745228refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
747188refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
748174refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
749048refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
749624refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
752066refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
753366refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
755258refclang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
760094refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
766502refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
791328refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
796496refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
797458refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
799186refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
877334refgcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
884242refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
884674refgcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
896012refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
1055710refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
1056130refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
1061324refgcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
1061546refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
1068406refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
1073240refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
1074078refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
1147078refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
1147080refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
1148308refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
1148704refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
1150812refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
1153052refgcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
1154942refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
1209200refgcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
1209606refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
1211896refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
1212258refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
1213470refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
1215018refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
1215174refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
1215760refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
1217402refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
1217460refgcc -O2 -fomit-frame-pointer2016121620161026
1217540refgcc -m64 -O2 -fomit-frame-pointer2016121620161026
1232072refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
1232988refgcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
1850228refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
1850516refgcc -funroll-loops -O -fomit-frame-pointer2016121620161026
1863702refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
1865126refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
1875220refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
1879212refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
1888054refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
1902216refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
1905934refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
1949220refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
2054570refgcc -march=nocona -O -fomit-frame-pointer2016121620161026
2055750refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
2068342refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
2084232refgcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
2157252refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
2158860refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
2164666refgcc -march=nocona -Os -fomit-frame-pointer2016121620161026
2186088refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
2191650refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
2195442refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
2198988refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
2206550refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
2229064refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
2230374refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
2233064refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
2233172refgcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
2237210refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
2242060refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
2243014refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
2243644refgcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
2245580refgcc -m64 -Os -fomit-frame-pointer2016121620161026
2247212refgcc -march=k8 -Os -fomit-frame-pointer2016121620161026
2247720refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
2250828refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
2254790refgcc -Os -fomit-frame-pointer2016121620161026
2276840refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
2296104refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
2298172refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
2311632refgcc -O -fomit-frame-pointer2016121620161026
2320642refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
2322666refgcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
2323422refgcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
2323758refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
2327180refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
2336000refgcc -m64 -O -fomit-frame-pointer2016121620161026
2342576refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
2343728refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
2365702refgcc -march=k8 -O -fomit-frame-pointer2016121620161026
2373348refgcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
2385238refgcc -march=barcelona -O -fomit-frame-pointer2016121620161026
2413094refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
2417434refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
2419446refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
2427144refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
4277568refgcc2016121620161026
4285138refgcc -funroll-loops2016121620161026
4351464refcc2016121620161026

Compiler output

Implementation: crypto_aead/deoxysi128v141/aesni
Compiler: cc
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/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:99:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
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/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:99:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
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/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:31: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:13: note: in expansion of macro 'permute'
deoxys.c: new_key = permute( new_key, 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/deoxysi128v141/aesni
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
deoxys.c: deoxys.c:99:13: 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:106:5: 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_SCHEDULE2( tsubkeys,subkeys, key);
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:39:3: note: expanded from macro 'TWEAKEY_SCHEDULE2'
deoxys.c: ONE_KEY_ROUND( subkeys[ 0], subkeys[ 1] ); ts[ 1] = xor( subkeys[ 1], RCONS[ 1] ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:35:13: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c: new_key = permute( new_key, 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:106:5: 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:40:3: note: expanded from macro 'TWEAKEY_SCHEDULE2'
deoxys.c: ONE_KEY_ROUND( subkeys[ 1], subkeys[ 2] ); ts[ 2] = xor( subkeys[ 2], RCONS[ 2] ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:35:13: note: expanded from macro 'ONE_KEY_ROUND'
deoxys.c: new_key = permute( new_key, 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/deoxysi128v141/aesni
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments
deoxys.c: deoxys.c:144: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:32:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: AES8 ( States, subkeys, tTweak ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:176:3: note: expanded from macro 'AES8'
deoxys.c: ONE_ROUND( states , subkeys[ 1] , RT[ 1] , 1 );\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:141: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:144: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:32:11: note: expanded from macro 'PROCESS_8_ASS_DATA_BLOCKS'
deoxys.c: AES8 ( States, subkeys, tTweak ); \
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:176:3: note: expanded from macro 'AES8'
deoxys.c: ONE_ROUND( states , subkeys[ 1] , RT[ 1] , 1 );\
deoxys.c: ^
deoxys.c: ./tweakable-cipher.macros:142: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/deoxysi128v141/aesni
Compiler: gcc -m64 -march=barcelona -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/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:99:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
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/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:99:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
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/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:31: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:13: note: in expansion of macro 'permute'
deoxys.c: new_key = permute( new_key, H_PERMUTATION);
deoxys.c: ...
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/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:99:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
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/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:99:11: note: called from here
deoxys.c: tmp = permute( tmp, H_PERMUTATION );
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/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:31: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:13: note: in expansion of macro 'permute'
deoxys.c: new_key = permute( new_key, 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/deoxysi128v141/aesni
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
deoxys.c: In file included from deoxys.c:29: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:31: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:148: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:189:3: note: in expansion of macro 'ONE_ROUND'
deoxys.c: ONE_ROUND( states , subkeys[14] , RT[ 6] , 14 );\
deoxys.c: ^~~~~~~~~
deoxys.c: ae.macros:32:11: note: in expansion of macro 'AES8'
deoxys.c: AES8 ( States, subkeys, tTweak ); \
deoxys.c: ^~~~
deoxys.c: deoxys.c:144: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:29: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