Implementation notes: amd64, ryzen, crypto_aead/twine80n6t4clocv2

Computer: ryzen
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20170904
Operation: crypto_aead
Primitive: twine80n6t4clocv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
88890? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017091220170904
88890? ? ?? ? ?vpermgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017091220170904
88920? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017091220170904
88950? ? ?? ? ?vpermgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017091220170904
89070? ? ?? ? ?vpermgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017091220170904
89100? ? ?? ? ?vpermgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017091220170904
89100? ? ?? ? ?vpermgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017091220170904
89100? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017091220170904
89100? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017091220170904
89100? ? ?? ? ?vpermgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017091220170904
89130? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017091220170904
89160? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017091220170904
89160? ? ?? ? ?vpermgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017091220170904
89400? ? ?? ? ?vpermgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017091220170904
89430? ? ?? ? ?vpermgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017091220170904
89430? ? ?? ? ?vpermgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017091220170904
89460? ? ?? ? ?vpermgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017091220170904
89790? ? ?? ? ?vpermgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017091220170904
89820? ? ?? ? ?vpermgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017091220170904
89850? ? ?? ? ?vpermgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017091220170904
90060? ? ?? ? ?vpermclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091220170904
90090? ? ?? ? ?vpermclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091220170904
90120? ? ?? ? ?vpermclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017091220170904
90180? ? ?? ? ?vpermgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017091220170904
90180? ? ?? ? ?vpermgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017091220170904
90450? ? ?? ? ?vpermclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017091220170904
90450? ? ?? ? ?vpermclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
91920? ? ?? ? ?vpermicc2017091220170904
91950? ? ?? ? ?vpermicc_-no-vec2017091220170904
145290? ? ?? ? ?vpermgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017091220170904
145320? ? ?? ? ?vpermgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017091220170904
145440? ? ?? ? ?vpermgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017091220170904
145500? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017091220170904
145500? ? ?? ? ?vpermgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017091220170904
145530? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017091220170904
145560? ? ?? ? ?vpermgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017091220170904
145590? ? ?? ? ?vpermgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017091220170904
145620? ? ?? ? ?vpermgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017091220170904
145650? ? ?? ? ?vpermgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017091220170904
145830? ? ?? ? ?vpermgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017091220170904
145860? ? ?? ? ?vpermgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017091220170904
222690? ? ?? ? ?vpermgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017091220170904
222720? ? ?? ? ?vpermgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017091220170904
225240? ? ?? ? ?vpermclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017091220170904
877440? ? ?? ? ?reficc2017091220170904
881940? ? ?? ? ?reficc_-no-vec2017091220170904
1016730? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017091220170904
1016850? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
1018260? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
1019190? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
1019490? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
1020030? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017091220170904
1031850? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017091220170904
1039140? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017091220170904
1042230? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017091220170904
1049250? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017091220170904
1050000? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017091220170904
1052430? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017091220170904
1055490? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017091220170904
1060620? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017091220170904
1062780? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017091220170904
1063050? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017091220170904
1063290? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091220170904
1063470? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017091220170904
1063890? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017091220170904
1072110? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
1073400? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
1073400? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
1082070? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
1205160? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017091220170904
1218000? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017091220170904
1218240? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
1218480? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017091220170904
1218720? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017091220170904
1219020? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017091220170904
1219470? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
1219950? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017091220170904
1220310? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017091220170904
1220310? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017091220170904
1220430? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017091220170904
1221090? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
1221210? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017091220170904
1221570? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017091220170904
1221780? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017091220170904
1222290? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017091220170904
1222920? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017091220170904
1223040? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017091220170904
1223670? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017091220170904
1223970? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017091220170904
1224150? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
1224690? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017091220170904
1224720? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017091220170904
1225140? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017091220170904
1225200? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017091220170904
1226340? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017091220170904
1228710? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017091220170904
1331580? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017091220170904
1337520? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
1337910? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
1341450? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017091220170904
1345920? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017091220170904
1420440? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017091220170904
1421070? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091220170904
1422390? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017091220170904
1430370? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017091220170904
1442100? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017091220170904
1443060? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
1445850? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017091220170904
1453680? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
1479360? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017091220170904
1479660? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017091220170904
1489050? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017091220170904
1491180? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017091220170904
1504830? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017091220170904
1526940? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091220170904
1527750? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
1532520? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017091220170904
1542630? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017091220170904
1543140? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091220170904
1545030? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
1595400? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091220170904
1596900? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017091220170904
1599900? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017091220170904
1610130? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
1615770? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017091220170904
1651410? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
1652700? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
1653150? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
1654620? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
1799880? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017091220170904
1800330? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017091220170904
1800570? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017091220170904
1800660? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017091220170904
1801170? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017091220170904
1801290? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017091220170904
1802910? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017091220170904
1814970? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
1817250? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
1839720? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
1840800? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
1845120? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017091220170904
1867200? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017091220170904
1981980? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017091220170904
1982160? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
1982400? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017091220170904
1982460? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017091220170904
1982490? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
1982610? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017091220170904
1985340? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017091220170904
2112690? ? ?? ? ?refgcc_-funroll-loops2017091220170904
2114160? ? ?? ? ?refcc2017091220170904
2117100? ? ?? ? ?refgcc2017091220170904
2134590? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017091220170904
2134800? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017091220170904
2135070? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
2135550? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
2136210? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017091220170904
2137020? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017091220170904
2147580? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017091220170904
2542140? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017091220170904
2545680? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017091220170904
2586990? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091220170904
3053460? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017091220170904
3310500? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017091220170904
3829290? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017091220170904
3831480? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091220170904
4067430? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017091220170904

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: cc
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-pc-linux-gnu/7.2.0/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-pc-linux-gnu/7.2.0/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: 71, namely:
CompilerImplementations
cc vperm
gcc vperm
gcc -O2 -fomit-frame-pointer vperm
gcc -O3 -fomit-frame-pointer vperm
gcc -O -fomit-frame-pointer vperm
gcc -Os -fomit-frame-pointer vperm
gcc -fno-schedule-insns -O2 -fomit-frame-pointer vperm
gcc -fno-schedule-insns -O3 -fomit-frame-pointer vperm
gcc -fno-schedule-insns -O -fomit-frame-pointer vperm
gcc -fno-schedule-insns -Os -fomit-frame-pointer vperm
gcc -funroll-loops vperm
gcc -funroll-loops -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -O -fomit-frame-pointer vperm
gcc -funroll-loops -Os -fomit-frame-pointer vperm
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer vperm
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer vperm
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer vperm
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer vperm
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer vperm
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer vperm
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer vperm
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer vperm
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer vperm
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer vperm
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer vperm
gcc -m64 -O2 -fomit-frame-pointer vperm
gcc -m64 -O3 -fomit-frame-pointer vperm
gcc -m64 -O -fomit-frame-pointer vperm
gcc -m64 -Os -fomit-frame-pointer vperm
gcc -m64 -march=k8 -O2 -fomit-frame-pointer vperm
gcc -m64 -march=k8 -O3 -fomit-frame-pointer vperm
gcc -m64 -march=k8 -O -fomit-frame-pointer vperm
gcc -m64 -march=k8 -Os -fomit-frame-pointer vperm
gcc -m64 -march=nocona -O2 -fomit-frame-pointer vperm
gcc -m64 -march=nocona -O3 -fomit-frame-pointer vperm
gcc -m64 -march=nocona -O -fomit-frame-pointer vperm
gcc -m64 -march=nocona -Os -fomit-frame-pointer vperm
gcc -march=barcelona -O2 -fomit-frame-pointer vperm
gcc -march=barcelona -O3 -fomit-frame-pointer vperm
gcc -march=barcelona -O -fomit-frame-pointer vperm
gcc -march=barcelona -Os -fomit-frame-pointer vperm
gcc -march=k8 -O2 -fomit-frame-pointer vperm
gcc -march=k8 -O3 -fomit-frame-pointer vperm
gcc -march=k8 -O -fomit-frame-pointer vperm
gcc -march=k8 -Os -fomit-frame-pointer vperm
gcc -march=nocona -O2 -fomit-frame-pointer vperm
gcc -march=nocona -O3 -fomit-frame-pointer vperm
gcc -march=nocona -O -fomit-frame-pointer vperm
gcc -march=nocona -Os -fomit-frame-pointer vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: In file included from encrypt.c:3:
encrypt.c: ./twine.h:227:15: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Encode' that is compiled without support for 'ssse3'
encrypt.c: word state = LOADS(text);
encrypt.c: ^
encrypt.c: ./twine.h:76:26: note: expanded from macro 'LOADS'
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:81:3: note: expanded from macro 'SHUFFLE4'
encrypt.c: _mm_shuffle_epi8(MASK4L(x), _mm_set_epi8(7, -1, 6, -1, 5, -1, 4, -1, 3, -1, 2, -1, 1, -1, 0, -1)), \
encrypt.c: ^
encrypt.c: ./twine.h:227:15: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Encode' that is compiled without support for 'ssse3'
encrypt.c: ./twine.h:76:26: note: expanded from macro 'LOADS'
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:82:3: note: expanded from macro 'SHUFFLE4'
encrypt.c: _mm_shuffle_epi8(SHR4(MASK4U(x)), _mm_set_epi8(-1, 7, -1, 6, -1, 5, -1, 4, -1, 3, -1, 2, -1, 1, -1, 0)))
encrypt.c: ^
encrypt.c: ./twine.h:228:2: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Encode' that is compiled without support for 'ssse3'
encrypt.c: twine80_enc(state);
encrypt.c: ^
encrypt.c: ./twine.h:163:9: note: expanded from macro 'twine80_enc'
encrypt.c: left = PSHUFB(state, left); \
encrypt.c: ^
encrypt.c: ./twine.h:70:25: note: expanded from macro 'PSHUFB'
encrypt.c: #define PSHUFB(s,x) _mm_shuffle_epi8((s), (x)) /* return s(x) */
encrypt.c: ...

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

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: gcc -m64 -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-pc-linux-gnu/7.2.0/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-pc-linux-gnu/7.2.0/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-pc-linux-gnu/7.2.0/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-pc-linux-gnu/7.2.0/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 -m64 -march=barcelona -O2 -fomit-frame-pointer vperm
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer vperm
gcc -m64 -march=barcelona -O -fomit-frame-pointer vperm
gcc -m64 -march=barcelona -Os -fomit-frame-pointer vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/ref
Compiler: icc -O1 -static
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 32, namely:
CompilerImplementations
icc -O1 -static ref vperm
icc -O1 -static -no-vec ref vperm
icc -O2 -static ref vperm
icc -O2 -static -no-vec ref vperm
icc -O3 -static ref vperm
icc -O3 -static -no-vec ref vperm
icc -Os -static ref vperm
icc -Os -static -no-vec ref vperm
icc -m64 -O1 -static ref vperm
icc -m64 -O1 -static -no-vec ref vperm
icc -m64 -O2 -static ref vperm
icc -m64 -O2 -static -no-vec ref vperm
icc -m64 -O3 -static ref vperm
icc -m64 -O3 -static -no-vec ref vperm
icc -m64 -Os -static ref vperm
icc -m64 -Os -static -no-vec ref vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/ref
Compiler: icc -O1 -xB -static
cloc.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
encrypt.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
twine.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
utils.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xB -static ref
icc -O1 -xB -static -no-vec ref
icc -O2 -xB -static ref
icc -O2 -xB -static -no-vec ref
icc -O3 -xB -static ref
icc -O3 -xB -static -no-vec ref
icc -Os -xB -static ref
icc -Os -xB -static -no-vec ref

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: icc -O1 -xB -static
encrypt.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xB -static vperm
icc -O1 -xB -static -no-vec vperm
icc -O2 -xB -static vperm
icc -O2 -xB -static -no-vec vperm
icc -O3 -xB -static vperm
icc -O3 -xB -static -no-vec vperm
icc -Os -xB -static vperm
icc -Os -xB -static -no-vec vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/ref
Compiler: icc -O1 -xK -static
cloc.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
encrypt.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
twine.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
utils.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xK -static ref
icc -O1 -xK -static -no-vec ref
icc -O2 -xK -static ref
icc -O2 -xK -static -no-vec ref
icc -O3 -xK -static ref
icc -O3 -xK -static -no-vec ref
icc -Os -xK -static ref
icc -Os -xK -static -no-vec ref

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: icc -O1 -xK -static
encrypt.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xK -static vperm
icc -O1 -xK -static -no-vec vperm
icc -O2 -xK -static vperm
icc -O2 -xK -static -no-vec vperm
icc -O3 -xK -static vperm
icc -O3 -xK -static -no-vec vperm
icc -Os -xK -static vperm
icc -Os -xK -static -no-vec vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/ref
Compiler: icc -O1 -xN -static
cloc.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
encrypt.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
twine.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
utils.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xN -static ref
icc -O1 -xN -static -no-vec ref
icc -O2 -xN -static ref
icc -O2 -xN -static -no-vec ref
icc -O3 -xN -static ref
icc -O3 -xN -static -no-vec ref
icc -Os -xN -static ref
icc -Os -xN -static -no-vec ref

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: icc -O1 -xN -static
encrypt.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xN -static vperm
icc -O1 -xN -static -no-vec vperm
icc -O2 -xN -static vperm
icc -O2 -xN -static -no-vec vperm
icc -O3 -xN -static vperm
icc -O3 -xN -static -no-vec vperm
icc -Os -xN -static vperm
icc -Os -xN -static -no-vec vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/ref
Compiler: icc -O1 -xW -static
cloc.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
encrypt.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
twine.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
utils.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xW -static ref
icc -O1 -xW -static -no-vec ref
icc -O2 -xW -static ref
icc -O2 -xW -static -no-vec ref
icc -O3 -xW -static ref
icc -O3 -xW -static -no-vec ref
icc -Os -xW -static ref
icc -Os -xW -static -no-vec ref

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: icc -O1 -xW -static
encrypt.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xW -static vperm
icc -O1 -xW -static -no-vec vperm
icc -O2 -xW -static vperm
icc -O2 -xW -static -no-vec vperm
icc -O3 -xW -static vperm
icc -O3 -xW -static -no-vec vperm
icc -Os -xW -static vperm
icc -Os -xW -static -no-vec vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/ref
Compiler: icc -fast
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/kernelrandombytes.o; was the source file compiled with -ipo
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/cpucycles.o; was the source file compiled with -ipo
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
icc -fast ref vperm

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/ref
Compiler: icc -m64 -xHost -vec-report0 -static
cloc.c: icc: command line remark #10148: option '-vec-report0' not supported
encrypt.c: icc: command line remark #10148: option '-vec-report0' not supported
twine.c: icc: command line remark #10148: option '-vec-report0' not supported
utils.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -m64 -xHost -vec-report0 -static ref

Compiler output

Implementation: crypto_aead/twine80n6t4clocv2/vperm
Compiler: icc -m64 -xHost -vec-report0 -static
encrypt.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -m64 -xHost -vec-report0 -static vperm