Implementation notes: x86, titan0, crypto_aead/twine80n6t4clocv2

Computer: titan0
Architecture: x86
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20190803
Operation: crypto_aead
Primitive: twine80n6t4clocv2
TimeImplementationCompilerBenchmark dateSUPERCOP version
98148vpermgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019070820190110
98188vpermgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019070820190110
98240vpermgcc -m32 -march=core2 -O2 -fomit-frame-pointer2019070820190110
98304vpermgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019070820190110
98316vpermgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019070820190110
98348vpermgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019070820190110
98420vpermgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019070820190110
98428vpermgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2019070820190110
98516vpermgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2019070820190110
98524vpermgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019070820190110
98764vpermgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019070820190110
98784vpermgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2019070820190110
98820vpermgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2019070820190110
98856vpermgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019070820190110
99260vpermgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019070820190110
99280vpermgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019070820190110
99420vpermgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019070820190110
99704vpermgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019070820190110
100080vpermgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019070820190110
100524vpermgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019070820190110
100968vpermgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019070820190110
101252vpermgcc -m32 -march=core2 -O3 -fomit-frame-pointer2019070820190110
101456vpermgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019070820190110
101604vpermgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019070820190110
103312vpermgcc -m32 -march=core2 -O -fomit-frame-pointer2019070820190110
103484vpermgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019070820190110
103548vpermgcc -m32 -march=corei7 -O -fomit-frame-pointer2019070820190110
103588vpermgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019070820190110
135584vpermgcc -m32 -march=core2 -Os -fomit-frame-pointer2019070820190110
135988vpermgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2019070820190110
136280vpermgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2019070820190110
136720vpermgcc -m32 -march=corei7 -Os -fomit-frame-pointer2019070820190110
1307520refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019070820190110
1309144refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019070820190110
1310172refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019070820190110
1310468refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019070820190110
1310996refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019070820190110
1312864refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019070820190110
1314912refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019070820190110
1323668refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2019070820190110
1324232refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019070820190110
1325808refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2019070820190110
1331172refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019070820190110
1332304refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2019070820190110
1335448refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019070820190110
1335992refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019070820190110
1336048refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019070820190110
1336544refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2019070820190110
1336644refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2019070820190110
1337260refgcc -funroll-loops -m32 -O -fomit-frame-pointer2019070820190110
1338748refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2019070820190110
1339872refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2019070820190110
1341964refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2019070820190110
1342464refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2019070820190110
1347848refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2019070820190110
1347852refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2019070820190110
1349508refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2019070820190110
1351792refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2019070820190110
1351932refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2019070820190110
1352832refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2019070820190110
1353004refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2019070820190110
1356484refgcc -m32 -march=prescott -O -fomit-frame-pointer2019070820190110
1357220refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019070820190110
1357880refgcc -m32 -O3 -fomit-frame-pointer2019070820190110
1358472refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019070820190110
1361136refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019070820190110
1361352refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019070820190110
1361684refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2019070820190110
1362540refgcc -m32 -march=athlon -O -fomit-frame-pointer2019070820190110
1363052refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019070820190110
1363600refgcc -m32 -march=corei7 -O -fomit-frame-pointer2019070820190110
1363924refgcc -m32 -march=k8 -O -fomit-frame-pointer2019070820190110
1364036refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2019070820190110
1364748refgcc -m32 -march=barcelona -O -fomit-frame-pointer2019070820190110
1365516refgcc -m32 -O -fomit-frame-pointer2019070820190110
1366672refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019070820190110
1368512refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2019070820190110
1371976refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070820190110
1373416refgcc -m32 -march=core2 -O -fomit-frame-pointer2019070820190110
1376716refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2019070820190110
1377088refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070820190110
1381028refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070820190110
1381456refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2019070820190110
1382912refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2019070820190110
1384016refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070820190110
1387080refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2019070820190110
1387208refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019070820190110
1387244refgcc -m32 -march=nocona -O -fomit-frame-pointer2019070820190110
1389584refgcc -m32 -O2 -fomit-frame-pointer2019070820190110
1390536refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2019070820190110
1390892refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2019070820190110
1391188refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2019070820190110
1391192refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2019070820190110
1391300refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2019070820190110
1395356refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070820190110
1395520refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070820190110
1396336refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2019070820190110
1396800refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070820190110
1396816refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070820190110
1396864refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070820190110
1398040refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070820190110
1399744refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070820190110
1400404refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070820190110
1400988refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070820190110
1401176refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070820190110
1401240refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070820190110
1407164refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2019070820190110
1407776refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2019070820190110
1408968refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2019070820190110
1416596refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2019070820190110
1417204refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2019070820190110
1417816refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2019070820190110
1420292refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2019070820190110
1425676refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2019070820190110
1427864refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2019070820190110
1429452refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070820190110
1432532refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2019070820190110
1444208refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070820190110
1448932refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070820190110
1450456refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070820190110
1519940refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070820190110
1554924refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019070820190110
1596720refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2019070820190110
1645008refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2019070820190110
1645648refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070820190110
1649296refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070820190110
1662848refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2019070820190110
1671068refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070820190110
1672004refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2019070820190110
1686320refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070820190110
1748248refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2019070820190110
1756020refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2019070820190110
1758692refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2019070820190110
1760476refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2019070820190110
1762972refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2019070820190110
1918728refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2019070820190110
1969112refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070820190110
1971868refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070820190110
1972568refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2019070820190110
2045008refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2019070820190110
2127068refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2019070820190110
2158964refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070820190110
2159184refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2019070820190110
2166412refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2019070820190110
2168664refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2019070820190110
2170780refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2019070820190110
2177720refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070820190110
2177788refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2019070820190110
2187864refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070820190110
2189024refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2019070820190110
2194208refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2019070820190110
2287348refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2019070820190110
2288832refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2019070820190110
2312044refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2019070820190110
2313580refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2019070820190110
2321940refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2019070820190110
2331800refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2019070820190110
2334916refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2019070820190110
2335912refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019070820190110
2336868refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2019070820190110
2336984refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2019070820190110
2342488refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2019070820190110
2342784refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2019070820190110
2345604refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2019070820190110
2349744refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2019070820190110
2349976refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2019070820190110
2354436refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2019070820190110
2439740refgcc -m32 -march=i386 -O -fomit-frame-pointer2019070820190110
2522700refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2019070820190110
2524828refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2019070820190110
2525728refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2019070820190110
2529564refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2019070820190110
2759692refgcc -m32 -march=pentium -O -fomit-frame-pointer2019070820190110
2761548refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2019070820190110
2762580refgcc -m32 -march=k6 -O -fomit-frame-pointer2019070820190110
2762992refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2019070820190110
2769284refgcc -m32 -march=i486 -O -fomit-frame-pointer2019070820190110
2769804refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070820190110
2835740refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2019070820190110
2885120refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070820190110
3276704refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070820190110
3280112refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2019070820190110
3385764refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2019070820190110
3386476refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2019070820190110
3387664refgcc -m32 -march=core2 -Os -fomit-frame-pointer2019070820190110
3390124refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2019070820190110
3391160refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2019070820190110
3391308refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2019070820190110
3392376refgcc -m32 -march=prescott -Os -fomit-frame-pointer2019070820190110
3393408refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2019070820190110
3393716refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2019070820190110
3393908refgcc -m32 -march=nocona -Os -fomit-frame-pointer2019070820190110
3398368refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070820190110
3399064refgcc -m32 -march=i386 -Os -fomit-frame-pointer2019070820190110
3400040refgcc -m32 -march=i486 -Os -fomit-frame-pointer2019070820190110
3401712refgcc -m32 -march=athlon -Os -fomit-frame-pointer2019070820190110
3402320refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070820190110
3402392refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019070820190110
3402864refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2019070820190110
3405708refgcc -m32 -march=pentium -Os -fomit-frame-pointer2019070820190110
3406236refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2019070820190110
3406292refgcc -m32 -Os -fomit-frame-pointer2019070820190110
3408528refgcc -m32 -march=k8 -Os -fomit-frame-pointer2019070820190110
3409456refgcc -m32 -march=k6 -Os -fomit-frame-pointer2019070820190110
3412004refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2019070820190110
3413388refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2019070820190110
3416984refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2019070820190110
3417900refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2019070820190110

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
encrypt.c: In file included from encrypt.c:3:0:
encrypt.c: twine.h: In function 'Encode':
encrypt.c: twine.h:57:25: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
encrypt.c: #define XOR(x,y) _mm_xor_si128((x),(y)) /* exclusive-OR of 128-bit words x and y */
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~
encrypt.c: twine.h:80:24: note: in expansion of macro 'XOR'
encrypt.c: #define SHUFFLE4(x) XOR( \
encrypt.c: ^~~
encrypt.c: twine.h:76:26: note: in expansion of macro 'SHUFFLE4'
encrypt.c: #define LOADS(p) SHUFFLE4(LOAD64(p)) /* load 64-bit word from memory address p, and shuffle it */
encrypt.c: ^~~~~~~~
encrypt.c: twine.h:227:15: note: in expansion of macro 'LOADS'
encrypt.c: word state = LOADS(text);
encrypt.c: ^~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
encrypt.c: from twine.h:4,
encrypt.c: from encrypt.c:3:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/emmintrin.h:1291:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
encrypt.c: _mm_xor_si128 (__m128i __A, __m128i __B)
encrypt.c: ^~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:3:0:
encrypt.c: twine.h:177:8: note: called from here
encrypt.c: right = XOR(right, _tmp); \
encrypt.c: ^
encrypt.c: twine.h:228:2: note: in expansion of macro 'twine80_enc'
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 88, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer vperm
gcc -m32 -O2 -fomit-frame-pointer vperm
gcc -m32 -O3 -fomit-frame-pointer vperm
gcc -m32 -O -fomit-frame-pointer vperm
gcc -m32 -Os -fomit-frame-pointer vperm
gcc -m32 -march=athlon -O2 -fomit-frame-pointer vperm
gcc -m32 -march=athlon -O3 -fomit-frame-pointer vperm
gcc -m32 -march=athlon -O -fomit-frame-pointer vperm
gcc -m32 -march=athlon -Os -fomit-frame-pointer vperm
gcc -m32 -march=i386 -O2 -fomit-frame-pointer vperm
gcc -m32 -march=i386 -O3 -fomit-frame-pointer vperm
gcc -m32 -march=i386 -O -fomit-frame-pointer vperm
gcc -m32 -march=i386 -Os -fomit-frame-pointer vperm
gcc -m32 -march=i486 -O2 -fomit-frame-pointer vperm
gcc -m32 -march=i486 -O3 -fomit-frame-pointer vperm
gcc -m32 -march=i486 -O -fomit-frame-pointer vperm
gcc -m32 -march=i486 -Os -fomit-frame-pointer vperm
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer vperm
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer vperm
gcc -m32 -march=k6-2 -O -fomit-frame-pointer vperm
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer vperm
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer vperm
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer vperm
gcc -m32 -march=k6-3 -O -fomit-frame-pointer vperm
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer vperm
gcc -m32 -march=k6 -O2 -fomit-frame-pointer vperm
gcc -m32 -march=k6 -O3 -fomit-frame-pointer vperm
gcc -m32 -march=k6 -O -fomit-frame-pointer vperm
gcc -m32 -march=k6 -Os -fomit-frame-pointer vperm
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer vperm
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer vperm
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer vperm
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer vperm
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer vperm
gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer vperm
gcc -m32 -march=pentium2 -O -fomit-frame-pointer vperm
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer vperm
gcc -m32 -march=pentium -O2 -fomit-frame-pointer vperm
gcc -m32 -march=pentium -O3 -fomit-frame-pointer vperm
gcc -m32 -march=pentium -O -fomit-frame-pointer vperm
gcc -m32 -march=pentium -Os -fomit-frame-pointer vperm
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer vperm
gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer vperm
gcc -m32 -march=pentiumpro -O -fomit-frame-pointer vperm
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: In file included from twine.h:7:0,
encrypt.c: from encrypt.c:3:
encrypt.c: twine.h: In function 'Encode':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/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:3:0:
encrypt.c: twine.h:174:7: note: called from here
encrypt.c: _tmp = PSHUFB(state, _tmp); \
encrypt.c: ^
encrypt.c: twine.h:228:2: note: in expansion of macro 'twine80_enc'
encrypt.c: twine80_enc(state);
encrypt.c: ^~~~~~~~~~~
encrypt.c: In file included from twine.h:7:0,
encrypt.c: from encrypt.c:3:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/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:3:0:
encrypt.c: twine.h:171:8: note: called from here
encrypt.c: right = PSHUFB(state, right); \
encrypt.c: ^
encrypt.c: twine.h:228:2: note: in expansion of macro 'twine80_enc'
encrypt.c: twine80_enc(state);
encrypt.c: ^~~~~~~~~~~
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 44, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer vperm
gcc -m32 -march=k8 -O2 -fomit-frame-pointer vperm
gcc -m32 -march=k8 -O3 -fomit-frame-pointer vperm
gcc -m32 -march=k8 -O -fomit-frame-pointer vperm
gcc -m32 -march=k8 -Os -fomit-frame-pointer vperm
gcc -m32 -march=nocona -O2 -fomit-frame-pointer vperm
gcc -m32 -march=nocona -O3 -fomit-frame-pointer vperm
gcc -m32 -march=nocona -O -fomit-frame-pointer vperm
gcc -m32 -march=nocona -Os -fomit-frame-pointer vperm
gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer vperm
gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer vperm
gcc -m32 -march=pentium-m -O -fomit-frame-pointer vperm
gcc -m32 -march=pentium-m -Os -fomit-frame-pointer vperm
gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer vperm
gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer vperm
gcc -m32 -march=pentium4 -O -fomit-frame-pointer vperm
gcc -m32 -march=pentium4 -Os -fomit-frame-pointer vperm
gcc -m32 -march=prescott -O2 -fomit-frame-pointer vperm
gcc -m32 -march=prescott -O3 -fomit-frame-pointer vperm
gcc -m32 -march=prescott -O -fomit-frame-pointer vperm
gcc -m32 -march=prescott -Os -fomit-frame-pointer vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
encrypt.c: from twine.h:4,
encrypt.c: from encrypt.c:3:
encrypt.c: twine.h: In function 'Encode':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/emmintrin.h:1291:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
encrypt.c: _mm_xor_si128 (__m128i __A, __m128i __B)
encrypt.c: ^~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:3:0:
encrypt.c: twine.h:177:8: note: called from here
encrypt.c: right = XOR(right, _tmp); \
encrypt.c: ^
encrypt.c: twine.h:228:2: note: in expansion of macro 'twine80_enc'
encrypt.c: twine80_enc(state);
encrypt.c: ^~~~~~~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
encrypt.c: from twine.h:4,
encrypt.c: from encrypt.c:3:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/emmintrin.h:1273:1: error: inlining failed in call to always_inline '_mm_and_si128': target specific option mismatch
encrypt.c: _mm_and_si128 (__m128i __A, __m128i __B)
encrypt.c: ^~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:3:0:
encrypt.c: twine.h:176:7: note: called from here
encrypt.c: _tmp = MASK4L(_tmp); \
encrypt.c: ^
encrypt.c: twine.h:228:2: note: in expansion of macro 'twine80_enc'
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer vperm
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer vperm
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer vperm
gcc -m32 -march=pentium3 -O -fomit-frame-pointer vperm
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: In file included from twine.h:7:0,
encrypt.c: from encrypt.c:3:
encrypt.c: twine.h: In function 'Encode':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/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:3:0:
encrypt.c: twine.h:174:7: note: called from here
encrypt.c: _tmp = PSHUFB(state, _tmp); \
encrypt.c: ^
encrypt.c: twine.h:228:2: note: in expansion of macro 'twine80_enc'
encrypt.c: twine80_enc(state);
encrypt.c: ^~~~~~~~~~~
encrypt.c: In file included from twine.h:7:0,
encrypt.c: from encrypt.c:3:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/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:3:0:
encrypt.c: twine.h:171:8: note: called from here
encrypt.c: right = PSHUFB(state, right); \
encrypt.c: ^
encrypt.c: twine.h:228:2: note: in expansion of macro 'twine80_enc'
encrypt.c: twine80_enc(state);
encrypt.c: ^~~~~~~~~~~
encrypt.c: ...
encrypt.c: In file included from twine.h:7:0,
encrypt.c: from encrypt.c:3:
encrypt.c: twine.h: In function 'Encode':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/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:3:0:
encrypt.c: twine.h:174:7: note: called from here
encrypt.c: _tmp = PSHUFB(state, _tmp); \
encrypt.c: ^
encrypt.c: twine.h:228:2: note: in expansion of macro 'twine80_enc'
encrypt.c: twine80_enc(state);
encrypt.c: ^~~~~~~~~~~
encrypt.c: In file included from twine.h:7:0,
encrypt.c: from encrypt.c:3:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/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:3:0:
encrypt.c: twine.h:171:8: note: called from here
encrypt.c: right = PSHUFB(state, right); \
encrypt.c: ^
encrypt.c: twine.h:228:2: note: in expansion of macro 'twine80_enc'
encrypt.c: twine80_enc(state);
encrypt.c: ^~~~~~~~~~~
encrypt.c: ...

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