Implementation notes: x86, h9trinity, crypto_aead/twine80n6t4clocv2

Computer: h9trinity
Architecture: x86
CPU ID: AuthenticAMD-00610f01-178bfbff
SUPERCOP version: 20171218
Operation: crypto_aead
Primitive: twine80n6t4clocv2
TimeImplementationCompilerBenchmark dateSUPERCOP version
217745vpermgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017121420171020
217865vpermgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017121420171020
217932vpermgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2017121420171020
218015vpermgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2017121420171020
218057vpermgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017121420171020
218119vpermgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2017121420171020
218278vpermgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2017121420171020
218305vpermgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017121420171020
218438vpermgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017121420171020
218454vpermgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017121420171020
218479vpermgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017121420171020
218523vpermgcc -m32 -march=core2 -Os -fomit-frame-pointer2017121420171020
218524vpermgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017121420171020
218527vpermgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017121420171020
218576vpermgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017121420171020
218671vpermgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017121420171020
218712vpermgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2017121420171020
218774vpermgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2017121420171020
218911vpermgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2017121420171020
218961vpermgcc -m32 -march=corei7 -O -fomit-frame-pointer2017121420171020
218980vpermgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017121420171020
219009vpermgcc -m32 -march=core2 -O -fomit-frame-pointer2017121420171020
219031vpermgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017121420171020
219062vpermgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017121420171020
219223vpermgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017121420171020
219352vpermgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2017121420171020
219363vpermgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2017121420171020
222244vpermgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2017121420171020
1767469refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017121420171020
1776529refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017121420171020
1780677refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017121420171020
1781481refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017121420171020
1835975refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017121420171020
1843897refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017121420171020
1847943refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017121420171020
1884868refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2017121420171020
1889096refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2017121420171020
1898362refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017121420171020
1902958refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017121420171020
1903649refgcc -m32 -O3 -fomit-frame-pointer2017121420171020
1923329refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2017121420171020
1929685refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2017121420171020
1939036refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017121420171020
1939990refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017121420171020
1943949refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017121420171020
1968097refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017121420171020
2010148refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017121420171020
2014933refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017121420171020
2018374refgcc -m32 -march=nocona -O -fomit-frame-pointer2017121420171020
2023515refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017121420171020
2029091refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017121420171020
2029398refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017121420171020
2029938refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017121420171020
2030508refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017121420171020
2031376refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017121420171020
2032325refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017121420171020
2034712refgcc -m32 -march=core2 -O -fomit-frame-pointer2017121420171020
2035492refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2017121420171020
2036924refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017121420171020
2042288refgcc -m32 -march=athlon -O -fomit-frame-pointer2017121420171020
2042848refgcc -m32 -march=prescott -O -fomit-frame-pointer2017121420171020
2043131refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017121420171020
2046310refgcc -m32 -march=k8 -O -fomit-frame-pointer2017121420171020
2047323refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017121420171020
2053973refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017121420171020
2054067refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017121420171020
2060607refgcc -m32 -O -fomit-frame-pointer2017121420171020
2061701refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2017121420171020
2062606refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017121420171020
2074509refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017121420171020
2076214refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017121420171020
2077474refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017121420171020
2093324refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017121420171020
2097182refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017121420171020
2099567refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017121420171020
2111549refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017121420171020
2116854refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017121420171020
2119926refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017121420171020
2123021refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017121420171020
2129129refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017121420171020
2139354refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2017121420171020
2140237refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017121420171020
2141157refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2017121420171020
2142696refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017121420171020
2145438refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017121420171020
2146849refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017121420171020
2149858refgcc -m32 -O2 -fomit-frame-pointer2017121420171020
2150041refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017121420171020
2150347refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017121420171020
2151519refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017121420171020
2152224refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017121420171020
2157024refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017121420171020
2157398refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017121420171020
2163476refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017121420171020
2166056refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017121420171020
2178800refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017121420171020
2178851refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017121420171020
2179242refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017121420171020
2183512refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017121420171020
2183732refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017121420171020
2192636refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017121420171020
2195961refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017121420171020
2202460refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017121420171020
2203109refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017121420171020
2204276refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017121420171020
2210259refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017121420171020
2214123refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017121420171020
2214456refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017121420171020
2215401refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017121420171020
2220562refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017121420171020
2228886refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017121420171020
2255185refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017121420171020
2259680refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017121420171020
2261721refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017121420171020
2323599refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017121420171020
2340423refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017121420171020
2343497refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017121420171020
2381722refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017121420171020
2409605refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017121420171020
2421426refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017121420171020
2424956refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017121420171020
2477063refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017121420171020
2503425refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017121420171020
2506591refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017121420171020
2507595refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017121420171020
2510328refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017121420171020
2527772refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017121420171020
2546503refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017121420171020
2547005refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017121420171020
2550102refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017121420171020
2555016refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017121420171020
2607524refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017121420171020
2762912refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017121420171020
2774935refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017121420171020
2793270refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017121420171020
2793725refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017121420171020
2881534refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017121420171020
2921282refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017121420171020
2940525refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017121420171020
3013427refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017121420171020
3040374refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017121420171020
3083387refgcc -m32 -march=k6 -O -fomit-frame-pointer2017121420171020
3091641refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017121420171020
3092195refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017121420171020
3092850refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017121420171020
3093935refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017121420171020
3127476refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017121420171020
3149993refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017121420171020
3155063refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017121420171020
3167487refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017121420171020
3193921refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017121420171020
3197193refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017121420171020
3197196refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017121420171020
3199381refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017121420171020
3206041refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017121420171020
3208016refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017121420171020
3237067refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017121420171020
3241192refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017121420171020
3245196refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017121420171020
3264691refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017121420171020
3274837refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017121420171020
3277457refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017121420171020
3289045refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017121420171020
3307295refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017121420171020
3311246refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017121420171020
3328971refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017121420171020
3330759refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017121420171020
3331970refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017121420171020
3336631refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017121420171020
3391044refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017121420171020
3415610refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017121420171020
3561519refgcc -m32 -march=i386 -O -fomit-frame-pointer2017121420171020
3576333refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017121420171020
3586651refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017121420171020
3595763refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017121420171020
3820292refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017121420171020
3888224refgcc -m32 -march=i486 -O -fomit-frame-pointer2017121420171020
3904563refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017121420171020
3920063refgcc -m32 -march=pentium -O -fomit-frame-pointer2017121420171020
4587918refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017121420171020
4589812refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017121420171020
4627281refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017121420171020
4642377refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2017121420171020
4643179refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017121420171020
4651461refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017121420171020
4658331refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017121420171020
4662356refgcc -m32 -Os -fomit-frame-pointer2017121420171020
4671726refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017121420171020
4685010refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017121420171020
4688728refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017121420171020
4689411refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017121420171020
4690636refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017121420171020
4722272refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017121420171020
4727769refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017121420171020
4735355refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017121420171020
4742350refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017121420171020
4748286refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2017121420171020
4750446refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017121420171020
4804740refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017121420171020
4819344refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017121420171020

Test failure

Implementation: crypto_aead/twine80n6t4clocv2/ref
Compiler: gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer ref vperm
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer ref vperm
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer ref vperm

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/5/include/xmmintrin.h:1249:0,
encrypt.c: from twine.h:4,
encrypt.c: from encrypt.c:3:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:1286: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: error: 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/5/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:3:0:
encrypt.c: twine.h:174:7: error: 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/5/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:3:0:
encrypt.c: twine.h:171:8: error: 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/5/include/xmmintrin.h:1249: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/5/include/emmintrin.h:1286: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: error: 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/5/include/xmmintrin.h:1249:0,
encrypt.c: from twine.h:4,
encrypt.c: from encrypt.c:3:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:1268: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: error: 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/5/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:3:0:
encrypt.c: twine.h:174:7: error: 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/5/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:3:0:
encrypt.c: twine.h:171:8: error: 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/5/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:3:0:
encrypt.c: twine.h:174:7: error: 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/5/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:3:0:
encrypt.c: twine.h:171:8: error: 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