Implementation notes: amd64, gpu, crypto_aead/aes128n12t8silcv2

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: aes128n12t8silcv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
323824767 0 017852 792 1104aesnigcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082520190816
323915760 0 022765 760 1344aesniclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082520190816
326254767 0 017852 792 1104aesnigcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082520190816
331625005 0 018044 792 1104aesnigcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082520190816
342565454 0 020740 792 1104aesnigcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082520190816
344465005 0 018044 792 1104aesnigcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082520190816
345284263 0 017340 792 1104aesnigcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082520190816
350045935 0 021316 792 1104aesnigcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082520190816
352285760 0 023533 760 1344aesniclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
357004581 0 016551 768 1072aesnigcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082520190816
357644581 0 016551 768 1072aesnigcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082520190816
361085935 0 021316 792 1104aesnigcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082520190816
361644581 0 016551 768 1072aesnigcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082520190816
362644767 0 017852 792 1104aesnigcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082520190816
363604212 0 016175 768 1072aesnigcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082520190816
367244500 0 017548 792 1104aesnigcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082520190816
371165005 0 018044 792 1104aesnigcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082520190816
374925760 0 023533 760 1344aesniclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082520190816
383725935 0 021316 792 1104aesnigcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082520190816
24918024171 0 042161 760 1160refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082520190816
25575924715 0 040837 768 928refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019082520190816
25676124121 0 044401 760 872refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
26162823947 0 041169 760 1160refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082520190816
26200828083 0 045696 784 928refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082520190816
26843224715 0 040837 768 928refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082520190816
26872429051 0 047440 784 928refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
26910829051 0 047440 784 928refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
26923228083 0 045696 784 928refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019082520190816
26979224137 0 043089 760 872refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019082520190816
27038844648 0 035493 768 928refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
27150822251 0 035093 768 928refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082520190816
27431622228 0 035069 768 928refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082520190816
27663224898 0 040216 784 928refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082520190816
27694422324 0 035493 768 928refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
27711621229 0 033057 752 896refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
27715622259 0 035125 768 928refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082520190816
27725722211 0 035053 768 928refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019082520190816
27865224171 0 042161 760 1160refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
27869727723 0 044992 784 928refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
27985224176 0 040269 768 928refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
27994821113 0 032905 752 896refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019082520190816
28344021941 0 034789 768 928refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082520190816
28395025578 0 040848 784 928refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082520190816
28573621934 0 034773 768 928refgcc_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
28594022196 0 035045 768 928refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019082520190816
28642821932 0 034757 768 928refgcc_-march=nocona_-O_-fomit-frame-pointer2019082520190816
28700821113 0 032905 752 896refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
28772828083 0 045696 784 928refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019082520190816
28869221110 0 032905 752 896refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082520190816
28921224898 0 040216 784 928refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082520190816
29039224443 0 040173 768 928refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
29128024747 0 040965 768 928refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
29142822259 0 035125 768 928refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082520190816
29183622228 0 035069 768 928refgcc_-O2_-fomit-frame-pointer2019082520190816
29198822227 0 035069 768 928refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082520190816
29316824215 0 040389 768 928refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019082520190816
29349221120 0 032921 752 896refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082520190816
29384024121 0 044401 760 872refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
29393228955 0 047160 784 928refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019082520190816
29415226195 0 041992 784 928refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
29438024146 0 040445 768 928refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019082520190816
29445652390 0 041992 784 928refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
29449221938 0 034789 768 928refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082520190816
29486424667 0 040685 768 928refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019082520190816
29526827723 0 044992 784 928refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
29570021932 0 034757 768 928refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019082520190816
29570824922 0 040144 784 928refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082520190816
29596421936 0 034445 768 928refgcc_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
29654421224 0 033057 752 896refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019082520190816
29665621120 0 032921 752 896refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082520190816
29833621230 0 033057 752 896refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
29840024215 0 040389 768 928refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019082520190816
29908021949 0 034805 768 928refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019082520190816
29910424146 0 040445 768 928refgcc_-funroll-loops_-O_-fomit-frame-pointer2019082520190816
29923623947 0 041169 760 1160refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019082520190816
30080843868 0 034773 768 928refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
30122825546 0 040648 784 928refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019082520190816
30146028955 0 047160 784 928refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019082520190816
30190822196 0 035045 768 928refgcc_-march=k8_-O2_-fomit-frame-pointer2019082520190816
30207624176 0 040269 768 928refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
30269621110 0 032905 752 896refgcc_-m64_-Os_-fomit-frame-pointer2019082520190816
30331642226 0 032905 752 896refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
30364424150 0 040397 768 928refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019082520190816
30602822228 0 035069 768 928refgcc_-m64_-O2_-fomit-frame-pointer2019082520190816
30616421112 0 032905 752 896refgcc_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
30640821938 0 034789 768 928refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082520190816
30705221230 0 033057 752 896refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019082520190816
30752821113 0 032905 752 896refgcc_-march=k8_-Os_-fomit-frame-pointer2019082520190816
30760821224 0 033057 752 896refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019082520190816
30809225197 0 040168 784 928refgcc_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
30823624667 0 040685 768 928refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019082520190816
30838824715 0 040837 768 928refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019082520190816
30871621941 0 034789 768 928refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019082520190816
30874024898 0 040216 784 928refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082520190816
31062425563 0 040840 784 928refgcc_-m64_-O3_-fomit-frame-pointer2019082520190816
31242425578 0 040784 784 928refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082520190816
31244821230 0 033057 752 896refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019082520190816
31300025197 0 040168 784 928refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
31306024150 0 040397 768 928refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019082520190816
31667225578 0 040864 784 928refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019082520190816
31791221113 0 032905 752 896refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082520190816
31810824146 0 040445 768 928refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019082520190816
31823621110 0 032905 752 896refgcc_-Os_-fomit-frame-pointer2019082520190816
31966421936 0 034445 768 928refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
31982825563 0 040840 784 928refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082520190816
32065624443 0 040173 768 928refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
32440421120 0 032921 752 896refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082520190816
32498022227 0 035069 768 928refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082520190816
32648821113 0 032905 752 896refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082520190816
32707224121 0 044401 760 872refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
32808422259 0 035125 768 928refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019082520190816
32959224747 0 040965 768 928refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
32984421224 0 033057 752 896refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082520190816
33112421938 0 034789 768 928refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019082520190816
33144821112 0 032905 752 896refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019082520190816
33164021112 0 032905 752 896refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
33195621230 0 033057 752 896refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
33252425963 0 041520 784 928refgcc_-march=k8_-O3_-fomit-frame-pointer2019082520190816
33392025963 0 041520 784 928refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019082520190816
33549621229 0 033057 752 896refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
33653221956 0 034805 768 928refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019082520190816
33945621949 0 034805 768 928refgcc_-m64_-O_-fomit-frame-pointer2019082520190816
34312822227 0 035069 768 928refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082520190816
34412025563 0 040840 784 928refgcc_-O3_-fomit-frame-pointer2019082520190816
34541221145 0 032953 752 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082520190816
34771621938 0 034789 768 928refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082520190816
35050821941 0 034789 768 928refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019082520190816
35597221113 0 032905 752 896refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019082520190816
35644021956 0 034805 768 928refgcc_-march=k8_-O_-fomit-frame-pointer2019082520190816
36067621938 0 034789 768 928refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082520190816
36925221949 0 034805 768 928refgcc_-O_-fomit-frame-pointer2019082520190816
67443335378 0 049967 768 888refcc2019082520190816
69868535378 0 049967 768 888refgcc_-funroll-loops2019082520190816
70501235378 0 049967 768 888refgcc2019082520190816

Test failure

Implementation: aesni
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer aesni
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer aesni
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer aesni
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref

Compiler output

Implementation: aesni
Security model: unknown
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/7/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: note: 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/7/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: note: 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/7/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: aesni
Security model: unknown
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-6.0/lib/clang/6.0.0/include/__wmmintrin_aes.h:147: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-6.0/lib/clang/6.0.0/include/__wmmintrin_aes.h:147: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: 5, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments aesni
clang -O3 -fwrapv -mavx -fomit-frame-pointer -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: aesni
Security model: unknown
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/7/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: note: 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/7/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: note: 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/7/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: 84, 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 -O3 -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 -O3 -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 -O3 -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=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=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: aesni
Security model: unknown
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/7/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: note: 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/7/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: note: 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/7/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/7/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: note: 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/7/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: note: 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/7/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