Implementation notes: amd64, hydra1, crypto_aead/aes128n12t8silcv2

Computer: hydra1
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20161220
Operation: crypto_aead
Primitive: aes128n12t8silcv2
TimeImplementationCompilerBenchmark dateSUPERCOP version
164016refclang -O3 -fomit-frame-pointer -Qunused-arguments2016101520161009
164042refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101520161009
164134refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101520161009
164173refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101520161009
167963refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101520161009
168112refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016101520161009
171096refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016101520161009
171173refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016101520161009
171190refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016101520161009
171312refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016101520161009
171392refgcc -funroll-loops -O2 -fomit-frame-pointer2016101520161009
171431refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016101520161009
171653refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016101520161009
171756refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016101520161009
172037refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016101520161009
172188refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016101520161009
172368refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016101520161009
172493refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016101520161009
172528refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016101520161009
172543refgcc -funroll-loops -O3 -fomit-frame-pointer2016101520161009
184381refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016101520161009
184406refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016101520161009
187350refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016101520161009
187394refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016101520161009
187992refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016101520161009
188653refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016101520161009
188794refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016101520161009
189282refgcc -m64 -O2 -fomit-frame-pointer2016101520161009
190082refgcc -O2 -fomit-frame-pointer2016101520161009
190715refgcc -m64 -O3 -fomit-frame-pointer2016101520161009
190797refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016101520161009
191040refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016101520161009
191045refgcc -O3 -fomit-frame-pointer2016101520161009
191267refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016101520161009
191379refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016101520161009
191765refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016101520161009
191768refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016101520161009
192576refgcc -march=k8 -O2 -fomit-frame-pointer2016101520161009
193091refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016101520161009
193999refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016101520161009
194005refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016101520161009
194008refgcc -march=barcelona -O3 -fomit-frame-pointer2016101520161009
194014refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016101520161009
194050refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016101520161009
194061refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016101520161009
194075refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016101520161009
194163refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016101520161009
194187refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016101520161009
194302refgcc -march=k8 -O3 -fomit-frame-pointer2016101520161009
194753refgcc -funroll-loops -O -fomit-frame-pointer2016101520161009
195301refgcc -march=barcelona -O2 -fomit-frame-pointer2016101520161009
204923refgcc -fno-schedule-insns -O -fomit-frame-pointer2016101520161009
204968refgcc -O -fomit-frame-pointer2016101520161009
205467refgcc -m64 -O -fomit-frame-pointer2016101520161009
205745refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016101520161009
206245refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016101520161009
206645refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016101520161009
207200refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016101520161009
207328refgcc -Os -fomit-frame-pointer2016101520161009
207357refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016101520161009
207760refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016101520161009
207803refgcc -march=k8 -Os -fomit-frame-pointer2016101520161009
207949refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016101520161009
208014refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016101520161009
208061refgcc -m64 -Os -fomit-frame-pointer2016101520161009
208536refgcc -march=barcelona -Os -fomit-frame-pointer2016101520161009
208546refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016101520161009
208832refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016101520161009
209088refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016101520161009
209109refgcc -march=nocona -O2 -fomit-frame-pointer2016101520161009
209296refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016101520161009
210381refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016101520161009
210741refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016101520161009
210826refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016101520161009
210861refgcc -march=barcelona -O -fomit-frame-pointer2016101520161009
214613refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016101520161009
214658refgcc -m64 -march=k8 -O -fomit-frame-pointer2016101520161009
214983refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016101520161009
215125refgcc -march=nocona -Os -fomit-frame-pointer2016101520161009
215344refgcc -march=k8 -O -fomit-frame-pointer2016101520161009
215445refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016101520161009
216227refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016101520161009
217493refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016101520161009
217557refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016101520161009
217645refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016101520161009
217675refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016101520161009
217696refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016101520161009
218933refgcc -funroll-loops -Os -fomit-frame-pointer2016101520161009
225349refgcc -m64 -march=core2 -O -fomit-frame-pointer2016101520161009
225473refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016101520161009
225536refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016101520161009
228858refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016101520161009
229205refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016101520161009
235134refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016101520161009
235794refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016101520161009
236443refgcc -march=nocona -O3 -fomit-frame-pointer2016101520161009
243840refgcc -march=nocona -O -fomit-frame-pointer2016101520161009
243856refgcc -m64 -march=nocona -O -fomit-frame-pointer2016101520161009
536002refgcc2016101520161009
536771refcc2016101520161009
536851refgcc -funroll-loops2016101520161009

Test failure

Implementation: crypto_aead/aes128n12t8silcv2/ref
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aes128n12t8silcv2/aesni
Compiler: cc
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: encrypt.c: In function 'crypto_aead_aes128n12t8silcv2_aesni_encrypt':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '_mm_aesenclast_si128': target specific option mismatch
encrypt.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:0:
encrypt.c: aes.h:67:8: error: called from here
encrypt.c: out = _mm_aesenclast_si128(out, roundkeys[10]);\
encrypt.c: ^
encrypt.c: encrypt.c:107:5: note: in expansion of macro 'AES128_encrypt'
encrypt.c: AES128_encrypt(estate, estate);
encrypt.c: ^
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
encrypt.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:0:
encrypt.c: aes.h:66:8: error: called from here
encrypt.c: out = _mm_aesenc_si128(out, roundkeys[9]); \
encrypt.c: ^
encrypt.c: encrypt.c:107:5: note: in expansion of macro 'AES128_encrypt'
encrypt.c: AES128_encrypt(estate, estate);
encrypt.c: ^
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
encrypt.c: ...

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

Compiler output

Implementation: crypto_aead/aes128n12t8silcv2/aesni
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: In file included from encrypt.c:41:
encrypt.c: ./aes.h:30:2: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 1); roundkeys[1] = x0;
encrypt.c: ^
encrypt.c: ./aes.h:13:7: note: expanded from macro 'EXPAND_ASSIST'
encrypt.c: v2 = _mm_aeskeygenassist_si128(v4, aes_const); \
encrypt.c: ^
encrypt.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/__wmmintrin_aes.h:62:12: note: expanded from macro '_mm_aeskeygenassist_si128'
encrypt.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:
encrypt.c: ./aes.h:31:2: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 2); roundkeys[2] = x0;
encrypt.c: ^
encrypt.c: ./aes.h:13:7: note: expanded from macro 'EXPAND_ASSIST'
encrypt.c: v2 = _mm_aeskeygenassist_si128(v4, aes_const); \
encrypt.c: ^
encrypt.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/__wmmintrin_aes.h:62:12: note: expanded from macro '_mm_aeskeygenassist_si128'
encrypt.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:
encrypt.c: ./aes.h:32:2: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 4); roundkeys[3] = x0;
encrypt.c: ^
encrypt.c: ./aes.h:13:7: note: expanded from macro 'EXPAND_ASSIST'
encrypt.c: ...

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

Compiler output

Implementation: crypto_aead/aes128n12t8silcv2/aesni
Compiler: gcc -O2 -fomit-frame-pointer
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: aes.h: In function 'AES128_KeyExpansion':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:0:
encrypt.c: aes.h:13:5: error: called from here
encrypt.c: v2 = _mm_aeskeygenassist_si128(v4, aes_const); \
encrypt.c: ^
encrypt.c: aes.h:39:2: note: in expansion of macro 'EXPAND_ASSIST'
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 54); roundkeys[10] = x0;
encrypt.c: ^
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:0:
encrypt.c: aes.h:13:5: error: called from here
encrypt.c: v2 = _mm_aeskeygenassist_si128(v4, aes_const); \
encrypt.c: ^
encrypt.c: aes.h:38:2: note: in expansion of macro 'EXPAND_ASSIST'
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 27); roundkeys[9] = x0;
encrypt.c: ^
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: ...

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

Compiler output

Implementation: crypto_aead/aes128n12t8silcv2/aesni
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: aes.h: In function 'AES128_KeyExpansion':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:0:
encrypt.c: aes.h:13:5: error: called from here
encrypt.c: v2 = _mm_aeskeygenassist_si128(v4, aes_const); \
encrypt.c: ^
encrypt.c: aes.h:39:2: note: in expansion of macro 'EXPAND_ASSIST'
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 54); roundkeys[10] = x0;
encrypt.c: ^
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:0:
encrypt.c: aes.h:13:5: error: called from here
encrypt.c: v2 = _mm_aeskeygenassist_si128(v4, aes_const); \
encrypt.c: ^
encrypt.c: aes.h:38:2: note: in expansion of macro 'EXPAND_ASSIST'
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 27); roundkeys[9] = x0;
encrypt.c: ^
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: ...
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: aes.h: In function 'AES128_KeyExpansion':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:0:
encrypt.c: aes.h:13:5: error: called from here
encrypt.c: v2 = _mm_aeskeygenassist_si128(v4, aes_const); \
encrypt.c: ^
encrypt.c: aes.h:39:2: note: in expansion of macro 'EXPAND_ASSIST'
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 54); roundkeys[10] = x0;
encrypt.c: ^
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:0:
encrypt.c: aes.h:13:5: error: called from here
encrypt.c: v2 = _mm_aeskeygenassist_si128(v4, aes_const); \
encrypt.c: ^
encrypt.c: aes.h:38:2: note: in expansion of macro 'EXPAND_ASSIST'
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 27); roundkeys[9] = x0;
encrypt.c: ^
encrypt.c: In file included from encrypt.c:7:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: ...

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