Implementation notes: amd64, skylake, crypto_aead/aes128poetv1aes4

Computer: skylake
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_aead
Primitive: aes128poetv1aes4
TimeImplementationCompilerBenchmark dateSUPERCOP version
11446niclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
11450niclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
11462niclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
11494niclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
25924nigcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
26004nigcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
26262nigcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
26322nigcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
26330nigcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
26650nigcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
26858nigcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
26866nigcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
27124nigcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
27362nigcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
31460nigcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
31570nigcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
31650nigcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
31744nigcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
31808nigcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
32620nigcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
32716nigcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
32782nigcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
32806nigcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
32968nigcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
120236refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
120610refgcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
120622refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
120862refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
121072refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
121246refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
121280refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
121488refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
121754refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
121762refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
121984refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
122106refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
122350refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
122746refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
122772refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
123848refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
124886refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
124924refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
125312refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
125342refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
125344refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
125382refgcc -funroll-loops -O -fomit-frame-pointer2016121620161026
125482refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
125712refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
125816refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
125858refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
126282refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
126332refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
126422refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
126526refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
126668refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
126740refgcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
126866refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
126878refgcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
127070refgcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
127252refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
127318refgcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
127636refgcc -m64 -O3 -fomit-frame-pointer2016121620161026
127742refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
128042refgcc -O3 -fomit-frame-pointer2016121620161026
128216refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
128316refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
129252refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
129678refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
129890refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
130116refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
130988refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
131280refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
131282refgcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
131472refgcc -O2 -fomit-frame-pointer2016121620161026
131672refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
131694refgcc -m64 -O2 -fomit-frame-pointer2016121620161026
131726refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
131924refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
132038refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
132682refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
132692refclang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
132876refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
133256refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
133264refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
133530refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
133802refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
133898refgcc -O -fomit-frame-pointer2016121620161026
134000refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
134170refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
134250refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
134286refgcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
134358refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
134366refgcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
134432refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
134630refgcc -march=k8 -O -fomit-frame-pointer2016121620161026
134636refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
134766refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
134808refgcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
135088refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
135142refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
135278refgcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
135286refgcc -m64 -O -fomit-frame-pointer2016121620161026
135442refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
135640refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
135650refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
135712refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
135722refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
135770refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
135832refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
135880refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
135884refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
135988refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
136138refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
136240refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
136276refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
136322refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
136406refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
136418refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
136424refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
136528refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
136554refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
136606refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
136608refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
136652refgcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
136736refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
136738refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
136784refgcc -m64 -Os -fomit-frame-pointer2016121620161026
136800refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
136990refgcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
137006refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
137398refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
137810refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
137816refgcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
137824refgcc -march=nocona -O -fomit-frame-pointer2016121620161026
138142refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
138360refgcc -march=nocona -Os -fomit-frame-pointer2016121620161026
138502refgcc -march=barcelona -O -fomit-frame-pointer2016121620161026
138996refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
139638refgcc -march=k8 -Os -fomit-frame-pointer2016121620161026
139738refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
139818refgcc -Os -fomit-frame-pointer2016121620161026
142598refgcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
350052refcc2016121620161026
351518refgcc2016121620161026
352478refgcc -funroll-loops2016121620161026

Compiler output

Implementation: crypto_aead/aes128poetv1aes4/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:163: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:162: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:161: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/aes128poetv1aes4/ni
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
poet.c: poet.c:743: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:755: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:770: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:780: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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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