Implementation notes: amd64, skylake, crypto_aead/aes128poetv1aes128

Computer: skylake
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_aead
Primitive: aes128poetv1aes128
TimeImplementationCompilerBenchmark dateSUPERCOP version
16140niclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
16172niclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
16194niclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
16238niclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
30648nigcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
30654nigcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
30714nigcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
30880nigcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
30888nigcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
31124nigcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
31756nigcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
31818nigcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
31926nigcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
32132nigcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
33046nigcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
33072nigcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
33084nigcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
33210nigcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
33224nigcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
43348nigcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
43368nigcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
43494nigcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
43682nigcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
44064nigcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
155278refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
156128refgcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
156404refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
156524refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
156858refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
156906refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
156920refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
156982refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
157236refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
157474refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
158280refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
158458refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
158578refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
159700refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
159816refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
160366refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
160450refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
160460refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
160508refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
161272refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
161276refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
161374refgcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
161708refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
161906refgcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
161974refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
162328refgcc -O3 -fomit-frame-pointer2016121620161026
162576refgcc -m64 -O3 -fomit-frame-pointer2016121620161026
162642refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
162736refgcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
162904refgcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
163100refgcc -funroll-loops -O -fomit-frame-pointer2016121620161026
163362refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
163538refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
163646refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
163776refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
163786refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
165062refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
165130refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
165210refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
165788refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
166286refgcc -O2 -fomit-frame-pointer2016121620161026
166436refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
166438refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
166518refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
167608refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
167792refgcc -m64 -O2 -fomit-frame-pointer2016121620161026
167948refclang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
168008refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
168104refgcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
168510refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
168512refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
168672refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
169400refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
169538refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
169552refgcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
169574refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
169708refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
169864refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
169874refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
169906refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
170108refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
170184refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
170268refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
170528refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
170556refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
170592refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
170806refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
171054refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
171086refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
171202refgcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
171246refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
171438refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
171566refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
171750refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
172062refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
172156refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
172204refgcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
172304refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
172332refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
172684refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
172738refgcc -O -fomit-frame-pointer2016121620161026
172762refgcc -march=k8 -O -fomit-frame-pointer2016121620161026
173054refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
173094refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
173166refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
173300refgcc -march=nocona -Os -fomit-frame-pointer2016121620161026
173426refgcc -m64 -O -fomit-frame-pointer2016121620161026
173458refgcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
173630refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
173646refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
173674refgcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
173676refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
173746refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
173748refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
173806refgcc -march=k8 -Os -fomit-frame-pointer2016121620161026
173816refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
173862refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
173926refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
173928refgcc -Os -fomit-frame-pointer2016121620161026
173938refgcc -m64 -Os -fomit-frame-pointer2016121620161026
173982refgcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
173986refgcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
174042refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
174046refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
174314refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
174388refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
174646refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
174762refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
174856refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
174940refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
175074refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
175478refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
176042refgcc -march=barcelona -O -fomit-frame-pointer2016121620161026
176044refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
176460refgcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
177400refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
178830refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
179062refgcc -march=nocona -O -fomit-frame-pointer2016121620161026
418684refcc2016121620161026
423542refgcc2016121620161026
424428refgcc -funroll-loops2016121620161026

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: cc
poet.c: In file included from poet.c:31:0:
poet.c: poet.c: In function 'aes_encrypt':
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '_mm_aesenclast_si128': target specific option mismatch
poet.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
poet.c: ^~~~~~~~~~~~~~~~~~~~
poet.c: poet.c:136:12: note: called from here
poet.c: return _mm_aesenclast_si128(x, k[10]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
poet.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:135:7: note: called from here
poet.c: x = _mm_aesenc_si128(x, k[9]);
poet.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
poet.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:134:7: note: called from here
poet.c: x = _mm_aesenc_si128(x, k[8]);
poet.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
poet.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
poet.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc ni
gcc ni
gcc -funroll-loops ni

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
poet.c: poet.c:701:16: error: always_inline function '_mm_testc_si128' requires target feature 'ssse3', but would be inlined into function 'decrypt_final' that is compiled without support for 'ssse3'
poet.c: return _mm_testc_si128(t, p) - 1;
poet.c: ^
poet.c: poet.c:713:16: error: always_inline function '_mm_testc_si128' requires target feature 'ssse3', but would be inlined into function 'decrypt_final' that is compiled without support for 'ssse3'
poet.c: return _mm_testc_si128(t, p) - 1;
poet.c: ^
poet.c: poet.c:728:21: error: always_inline function '_mm_testc_si128' requires target feature 'ssse3', but would be inlined into function 'decrypt_final' that is compiled without support for 'ssse3'
poet.c: int alpha = _mm_testc_si128(tau_alpha, tmp);
poet.c: ^
poet.c: poet.c:738:20: error: always_inline function '_mm_testc_si128' requires target feature 'ssse3', but would be inlined into function 'decrypt_final' that is compiled without support for 'ssse3'
poet.c: int beta = _mm_testc_si128(t_beta, tmp);
poet.c: ^
poet.c: 4 errors generated.

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

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments
poet.c: poet.c:81:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
poet.c: temp2 = _mm_aeskeygenassist_si128(temp1, 0x1);
poet.c: ^
poet.c: /usr/bin/../lib/clang/3.9.0/include/__wmmintrin_aes.h:147:12: note: expanded from macro '_mm_aeskeygenassist_si128'
poet.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
poet.c: ^
poet.c: poet.c:85:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
poet.c: temp2 = _mm_aeskeygenassist_si128(temp1, 0x2);
poet.c: ^
poet.c: /usr/bin/../lib/clang/3.9.0/include/__wmmintrin_aes.h:147:12: note: expanded from macro '_mm_aeskeygenassist_si128'
poet.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
poet.c: ^
poet.c: poet.c:89:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
poet.c: temp2 = _mm_aeskeygenassist_si128(temp1, 0x4);
poet.c: ^
poet.c: /usr/bin/../lib/clang/3.9.0/include/__wmmintrin_aes.h:147:12: note: expanded from macro '_mm_aeskeygenassist_si128'
poet.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
poet.c: ^
poet.c: poet.c:93:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
poet.c: temp2 = _mm_aeskeygenassist_si128(temp1, 0x8);
poet.c: ^
poet.c: /usr/bin/../lib/clang/3.9.0/include/__wmmintrin_aes.h:147:12: note: expanded from macro '_mm_aeskeygenassist_si128'
poet.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
poet.c: ^
poet.c: poet.c:97:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
poet.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments ni
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ni

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: gcc -O2 -fomit-frame-pointer
poet.c: In file included from poet.c:31:0:
poet.c: poet.c: In function 'aes_revert_key':
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:51:18: note: called from here
poet.c: dec_key[1] = _mm_aesimc_si128(enc_key[9]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:50:18: note: called from here
poet.c: dec_key[2] = _mm_aesimc_si128(enc_key[8]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:49:18: note: called from here
poet.c: dec_key[3] = _mm_aesimc_si128(enc_key[7]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ...

Number of similar (compiler,implementation) pairs: 84, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer ni
gcc -O3 -fomit-frame-pointer ni
gcc -O -fomit-frame-pointer ni
gcc -Os -fomit-frame-pointer ni
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ni
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ni
gcc -fno-schedule-insns -O -fomit-frame-pointer ni
gcc -fno-schedule-insns -Os -fomit-frame-pointer ni
gcc -funroll-loops -O2 -fomit-frame-pointer ni
gcc -funroll-loops -O3 -fomit-frame-pointer ni
gcc -funroll-loops -O -fomit-frame-pointer ni
gcc -funroll-loops -Os -fomit-frame-pointer ni
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ni
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ni
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ni
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ni
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -O -fomit-frame-pointer ni
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ni
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ni
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ni
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ni
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ni
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ni
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ni
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ni
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ni
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ni
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ni
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ni
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ni
gcc -m64 -O2 -fomit-frame-pointer ni
gcc -m64 -O3 -fomit-frame-pointer ni
gcc -m64 -O -fomit-frame-pointer ni
gcc -m64 -Os -fomit-frame-pointer ni
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ni
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ni
gcc -m64 -march=core2 -O -fomit-frame-pointer ni
gcc -m64 -march=core2 -Os -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ni
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ni
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ni
gcc -m64 -march=corei7 -O -fomit-frame-pointer ni
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ni
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ni
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ni
gcc -m64 -march=k8 -O -fomit-frame-pointer ni
gcc -m64 -march=k8 -Os -fomit-frame-pointer ni
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ni
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ni
gcc -m64 -march=nocona -O -fomit-frame-pointer ni
gcc -m64 -march=nocona -Os -fomit-frame-pointer ni
gcc -march=barcelona -O2 -fomit-frame-pointer ni
gcc -march=barcelona -O3 -fomit-frame-pointer ni
gcc -march=barcelona -O -fomit-frame-pointer ni
gcc -march=barcelona -Os -fomit-frame-pointer ni
gcc -march=k8 -O2 -fomit-frame-pointer ni
gcc -march=k8 -O3 -fomit-frame-pointer ni
gcc -march=k8 -O -fomit-frame-pointer ni
gcc -march=k8 -Os -fomit-frame-pointer ni
gcc -march=nocona -O2 -fomit-frame-pointer ni
gcc -march=nocona -O3 -fomit-frame-pointer ni
gcc -march=nocona -O -fomit-frame-pointer ni
gcc -march=nocona -Os -fomit-frame-pointer ni

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
poet.c: In file included from poet.c:31:0:
poet.c: poet.c: In function 'aes_revert_key':
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:51:18: note: called from here
poet.c: dec_key[1] = _mm_aesimc_si128(enc_key[9]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:50:18: note: called from here
poet.c: dec_key[2] = _mm_aesimc_si128(enc_key[8]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:49:18: note: called from here
poet.c: dec_key[3] = _mm_aesimc_si128(enc_key[7]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ...
poet.c: In file included from poet.c:31:0:
poet.c: poet.c: In function 'aes_revert_key':
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:51:18: note: called from here
poet.c: dec_key[1] = _mm_aesimc_si128(enc_key[9]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:50:18: note: called from here
poet.c: dec_key[2] = _mm_aesimc_si128(enc_key[8]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:49:18: note: called from here
poet.c: dec_key[3] = _mm_aesimc_si128(enc_key[7]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ...

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