Implementation notes: amd64, skylake, crypto_aead/present80n6t4silcv3

Computer: skylake
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_aead
Primitive: present80n6t4silcv3
TimeImplementationCompilerBenchmark dateSUPERCOP version
469526vpermgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
470050vpermgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
470682vpermgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
471156vpermgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
472262vpermgcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
472494vpermgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
472632vpermgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
474502vpermgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
474796vpermgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
714026vpermgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
714072vpermgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
714432vpermgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
714840vpermgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
715058vpermgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
715378vpermgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
715982vpermgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
719156vpermgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
720478vpermgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
1071590vpermgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
1072446vpermgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
1084964vpermgcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
1086380vpermgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
1086748vpermgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
1086948vpermgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
1087920vpermgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
1090244vpermgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
1090322vpermgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
1091148vpermgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
1091320vpermgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
1091390vpermgcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
1091982vpermgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
1092188vpermgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
1466436vpermgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
1466450vpermgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
1468726vpermgcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
1469040vpermgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
19350244refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
19356630refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
24777380refgcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
24777420refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
24777580refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
24778120refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
24779936refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
24781588refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
24782144refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
24806936refgcc -funroll-loops -O -fomit-frame-pointer2016121620161026
24807124refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
24809518refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
24811250refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
24811420refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
24813484refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
24815192refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
25138166refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
25141040refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
25141336refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
25142380refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
25143560refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
25165902refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
25167890refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
25176142refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
25176732refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
25178754refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
25332758refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
25333004refclang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
25333276refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
25333800refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
25379706refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
25393216refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
25396266refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
27089272refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
27089852refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
27099088refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
27099548refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
27195232refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
27195510refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
27196266refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
27196460refgcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
27197538refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
27233204refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
27266842refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
27418238refgcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
27418332refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
27464748refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
27470516refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
27476650refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
27489950refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
27490532refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
27494318refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
27514566refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
27515050refgcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
27585398refgcc -O2 -fomit-frame-pointer2016121620161026
27607900refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
27611936refgcc -m64 -O2 -fomit-frame-pointer2016121620161026
27949946refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
27950368refgcc -m64 -O3 -fomit-frame-pointer2016121620161026
27955404refgcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
27955542refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
27956838refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
27956952refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
27959738refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
27962956refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
27969216refgcc -O3 -fomit-frame-pointer2016121620161026
27970746refgcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
27971314refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
27987074refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
27991308refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
28963066refgcc -march=barcelona -O -fomit-frame-pointer2016121620161026
28994404refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
29066576refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
29092022refgcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
29094690refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
29100446refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
29132406refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
29138112refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
29209244refgcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
29211270refgcc -m64 -O -fomit-frame-pointer2016121620161026
29211330refgcc -O -fomit-frame-pointer2016121620161026
29322684refgcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
29323324refgcc -march=k8 -O -fomit-frame-pointer2016121620161026
29526800refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
29533540refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
31695662refgcc -march=nocona -O -fomit-frame-pointer2016121620161026
31706790refgcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
31785326refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
31788138refgcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
32019618refgcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
32020150refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
34436434refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
34439078refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
34463084refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
37708738refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
37709646refgcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
37709702refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
37712916refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
37725686refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
37727822refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
37740412refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
38019432refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
38027694refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
38392272refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
38395012refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
38403962refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
38446906refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
38449062refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
38449170refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
38551876refgcc -m64 -Os -fomit-frame-pointer2016121620161026
38552206refgcc -Os -fomit-frame-pointer2016121620161026
38553146refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
38554600refgcc -march=k8 -Os -fomit-frame-pointer2016121620161026
38556900refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
38559424refgcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
38598436refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
38790280refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
38792502refgcc -march=nocona -Os -fomit-frame-pointer2016121620161026
56606662refgcc2016121620161026
56634250refcc2016121620161026
56647276refgcc -funroll-loops2016121620161026

Compiler output

Implementation: crypto_aead/present80n6t4silcv3/vperm
Compiler: cc
present.c: In file included from common.h:7:0,
present.c: from present.h:1,
present.c: from present.c:1:
present.c: present.c: In function 'format_input':
present.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
present.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
present.c: ^~~~~~~~~~~~~~~~
present.c: In file included from present.h:1:0,
present.c: from present.c:1:
present.c: common.h:40:22: note: called from here
present.c: #define PSHUFB(s, x) _mm_shuffle_epi8((s), (x)) /*return s(x)*/
present.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~
present.c: present.c:113:11: note: in expansion of macro 'PSHUFB'
present.c: *state = PSHUFB(*state, LOAD(PRESENTInShuffleL));
present.c: ^~~~~~
present.c: In file included from common.h:7:0,
present.c: from present.h:1,
present.c: from present.c:1:
present.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
present.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
present.c: ^~~~~~~~~~~~~~~~
present.c: present.c:112:9: note: called from here
present.c: dqword tmp = PSHUFB(*state, LOAD(PRESENTInShuffleU));
present.c: ^~~
present.c: In file included from common.h:7:0,
present.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/present80n6t4silcv3/vperm
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
present.c: present.c:112:15: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'format_input' that is compiled without support for 'ssse3'
present.c: dqword tmp = PSHUFB(*state, LOAD(PRESENTInShuffleU));
present.c: ^
present.c: ./common.h:40:22: note: expanded from macro 'PSHUFB'
present.c: #define PSHUFB(s, x) _mm_shuffle_epi8((s), (x)) /*return s(x)*/
present.c: ^
present.c: present.c:113:11: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'format_input' that is compiled without support for 'ssse3'
present.c: *state = PSHUFB(*state, LOAD(PRESENTInShuffleL));
present.c: ^
present.c: ./common.h:40:22: note: expanded from macro 'PSHUFB'
present.c: #define PSHUFB(s, x) _mm_shuffle_epi8((s), (x)) /*return s(x)*/
present.c: ^
present.c: 2 errors generated.

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/present80n6t4silcv3/vperm
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
silc.c: silc.c:170:34: warning: implicit conversion from 'int' to 'char' changes value from 135 to -121 [-Wconstant-conversion]
silc.c: state = XORDQW(tmpState, SHR(state, 8));
silc.c: ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
silc.c: ./common.h:30:63: note: expanded from macro 'SHR'
silc.c: #define SHR(x,n) _mm_shuffle_epi8((x), _mm_set_epi8(127+(n), 126+(n), 125+(n), 124+(n), 123+(n), 122+(n), 121+(n), 120+(n), 119+(n), 118+(n), 117+(n), 116+(n), 115+(n), 114+(n), 113+(n), 112+(n))) // shift to the right
silc.c: ~~~~~~~~~~~~ ^
silc.c: ./common.h:17:43: note: expanded from macro 'XORDQW'
silc.c: #define XORDQW(x, y) _mm_xor_si128((x), (y))
silc.c: ^
silc.c: silc.c:170:34: warning: implicit conversion from 'int' to 'char' changes value from 134 to -122 [-Wconstant-conversion]
silc.c: state = XORDQW(tmpState, SHR(state, 8));
silc.c: ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
silc.c: ./common.h:30:72: note: expanded from macro 'SHR'
silc.c: #define SHR(x,n) _mm_shuffle_epi8((x), _mm_set_epi8(127+(n), 126+(n), 125+(n), 124+(n), 123+(n), 122+(n), 121+(n), 120+(n), 119+(n), 118+(n), 117+(n), 116+(n), 115+(n), 114+(n), 113+(n), 112+(n))) // shift to the right
silc.c: ~~~~~~~~~~~~ ^
silc.c: ./common.h:17:43: note: expanded from macro 'XORDQW'
silc.c: #define XORDQW(x, y) _mm_xor_si128((x), (y))
silc.c: ^
silc.c: silc.c:170:34: warning: implicit conversion from 'int' to 'char' changes value from 133 to -123 [-Wconstant-conversion]
silc.c: state = XORDQW(tmpState, SHR(state, 8));
silc.c: ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
silc.c: ./common.h:30:81: note: expanded from macro 'SHR'
silc.c: #define SHR(x,n) _mm_shuffle_epi8((x), _mm_set_epi8(127+(n), 126+(n), 125+(n), 124+(n), 123+(n), 122+(n), 121+(n), 120+(n), 119+(n), 118+(n), 117+(n), 116+(n), 115+(n), 114+(n), 113+(n), 112+(n))) // shift to the right
silc.c: ~~~~~~~~~~~~ ^
silc.c: ./common.h:17:43: note: expanded from macro 'XORDQW'
silc.c: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments vperm
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments vperm
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments vperm
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments vperm
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments vperm
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments vperm

Compiler output

Implementation: crypto_aead/present80n6t4silcv3/vperm
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
present.c: In file included from common.h:7:0,
present.c: from present.h:1,
present.c: from present.c:1:
present.c: present.c: In function 'format_input':
present.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
present.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
present.c: ^~~~~~~~~~~~~~~~
present.c: In file included from present.h:1:0,
present.c: from present.c:1:
present.c: common.h:40:22: note: called from here
present.c: #define PSHUFB(s, x) _mm_shuffle_epi8((s), (x)) /*return s(x)*/
present.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~
present.c: present.c:113:11: note: in expansion of macro 'PSHUFB'
present.c: *state = PSHUFB(*state, LOAD(PRESENTInShuffleL));
present.c: ^~~~~~
present.c: In file included from common.h:7:0,
present.c: from present.h:1,
present.c: from present.c:1:
present.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
present.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
present.c: ^~~~~~~~~~~~~~~~
present.c: present.c:112:9: note: called from here
present.c: dqword tmp = PSHUFB(*state, LOAD(PRESENTInShuffleU));
present.c: ^~~
present.c: In file included from common.h:7:0,
present.c: ...
present.c: In file included from common.h:7:0,
present.c: from present.h:1,
present.c: from present.c:1:
present.c: present.c: In function 'format_input':
present.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
present.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
present.c: ^~~~~~~~~~~~~~~~
present.c: In file included from present.h:1:0,
present.c: from present.c:1:
present.c: common.h:40:22: note: called from here
present.c: #define PSHUFB(s, x) _mm_shuffle_epi8((s), (x)) /*return s(x)*/
present.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~
present.c: present.c:113:11: note: in expansion of macro 'PSHUFB'
present.c: *state = PSHUFB(*state, LOAD(PRESENTInShuffleL));
present.c: ^~~~~~
present.c: In file included from common.h:7:0,
present.c: from present.h:1,
present.c: from present.c:1:
present.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
present.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
present.c: ^~~~~~~~~~~~~~~~
present.c: present.c:112:9: note: called from here
present.c: dqword tmp = PSHUFB(*state, LOAD(PRESENTInShuffleU));
present.c: ^~~
present.c: In file included from common.h:7:0,
present.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