Implementation notes: amd64, gpu, crypto_aead/aes128n12t8clocv3

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: aes128n12t8clocv3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
328536525 0 023485 760 1360aesniclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082520190816
331625453 0 017399 768 1088aesnigcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082520190816
333845906 0 018964 792 1120aesnigcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082520190816
334166100 0 019116 792 1120aesnigcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082520190816
334845453 0 017399 768 1088aesnigcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082520190816
336446525 0 024253 760 1360aesniclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082520190816
342285906 0 018964 792 1120aesnigcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082520190816
344965636 0 018652 792 1120aesnigcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082520190816
345565087 0 017031 768 1088aesnigcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082520190816
350646525 0 024253 760 1360aesniclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
352966323 0 021588 792 1120aesnigcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082520190816
353565453 0 017399 768 1088aesnigcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082520190816
354086771 0 022132 792 1120aesnigcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082520190816
354126771 0 022132 792 1120aesnigcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082520190816
362806100 0 019116 792 1120aesnigcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082520190816
364086771 0 022132 792 1120aesnigcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082520190816
366245460 0 018516 792 1120aesnigcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082520190816
372246100 0 019116 792 1120aesnigcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082520190816
374645906 0 018964 792 1120aesnigcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082520190816
15264821746 0 034678 776 928refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019082520190816
22426521002 0 032841 752 896refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082520190816
22567520890 0 032705 752 896refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082520190816
22780023580 0 042537 760 872refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019082520190816
23301320880 0 032689 752 896refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082520190816
23370823564 0 043849 760 872refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
23618422265 0 035101 768 928refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019082520190816
23707621002 0 032841 752 896refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019082520190816
23770821002 0 032841 752 896refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019082520190816
23982021738 0 034662 776 928refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082520190816
24079622131 0 034965 768 928refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082520190816
24131722163 0 035021 768 928refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082520190816
24249024872 0 040989 768 928refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019082520190816
24317423957 0 040270 776 928refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019082520190816
24490022265 0 035101 768 928refgcc_-march=k8_-O2_-fomit-frame-pointer2019082520190816
24505222131 0 034965 768 928refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082520190816
24538023564 0 043849 760 872refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
24588621746 0 034678 776 928refgcc_-m64_-O_-fomit-frame-pointer2019082520190816
24605622148 0 034981 768 928refgcc_-m64_-O2_-fomit-frame-pointer2019082520190816
24681624900 0 040046 776 928refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082520190816
24732820890 0 032705 752 896refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082520190816
24783223755 0 041753 760 1160refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
25064421002 0 032841 752 896refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019082520190816
25185624872 0 040989 768 928refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082520190816
25192421922 0 034437 768 928refgcc_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
25194025297 0 041501 768 928refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
25308828757 0 046294 776 928refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019082520190816
25323230046 0 048318 776 928refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
25337220882 0 032689 752 896refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019082520190816
25381220880 0 032689 752 896refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
25398421738 0 034662 776 928refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082520190816
25409241760 0 032689 752 896refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
25441224007 0 040246 776 928refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019082520190816
25457721761 0 034694 776 928refgcc_-march=k8_-O_-fomit-frame-pointer2019082520190816
25529625238 0 041253 768 928refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019082520190816
25568024872 0 040989 768 928refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019082520190816
25604121738 0 034662 776 928refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019082520190816
25636826207 0 041918 776 928refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
25657228462 0 045662 776 928refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
25686024657 0 040389 768 928refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
25772025553 0 040742 776 928refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082520190816
25817421732 0 034630 776 928refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019082520190816
25823224876 0 040118 776 928refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082520190816
25839622155 0 034989 768 928refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082520190816
25852822148 0 034981 768 928refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082520190816
25895225972 0 041446 776 928refgcc_-march=k8_-O3_-fomit-frame-pointer2019082520190816
25944421002 0 032841 752 896refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
25991621922 0 034437 768 928refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
26060422131 0 034965 768 928refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082520190816
26084423564 0 043849 760 872refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082520190816
26092420880 0 032689 752 896refgcc_-march=k8_-Os_-fomit-frame-pointer2019082520190816
26108422163 0 035021 768 928refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019082520190816
26175643466 0 034646 776 928refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
26219121738 0 034662 776 928refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082520190816
26418428757 0 046294 776 928refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082520190816
26500422377 0 035517 768 928refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
26515223531 0 040761 760 1160refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082520190816
26539220880 0 032689 752 896refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019082520190816
26544020880 0 032689 752 896refgcc_-m64_-Os_-fomit-frame-pointer2019082520190816
26582425553 0 040758 776 928refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019082520190816
26639228462 0 045662 776 928refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
26676021002 0 032841 752 896refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082520190816
26742444754 0 035517 768 928refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
26772821738 0 034662 776 928refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082520190816
26784825972 0 041446 776 928refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019082520190816
26873621002 0 032841 752 896refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019082520190816
26902021732 0 034630 776 928refgcc_-march=nocona_-O_-fomit-frame-pointer2019082520190816
26910828757 0 046294 776 928refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019082520190816
26920823957 0 040270 776 928refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019082520190816
26922020880 0 032689 752 896refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082520190816
27032030046 0 048318 776 928refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
27068023948 0 040318 776 928refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019082520190816
27173229973 0 048102 776 928refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019082520190816
27286424876 0 040118 776 928refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082520190816
27298820915 0 032721 752 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082520190816
27355625238 0 041253 768 928refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019082520190816
27361223755 0 041753 760 1160refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082520190816
27384025564 0 040766 776 928refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082520190816
27470429973 0 048102 776 928refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019082520190816
27535622131 0 034965 768 928refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019082520190816
27537624876 0 040118 776 928refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082520190816
27555223948 0 040318 776 928refgcc_-funroll-loops_-O_-fomit-frame-pointer2019082520190816
27630423948 0 040318 776 928refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019082520190816
27632021738 0 034662 776 928refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082520190816
27684820879 0 032689 752 896refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
27762021733 0 034646 776 928refgcc_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
27768020879 0 032689 752 896refgcc_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
27816821001 0 032841 752 896refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
27938420880 0 032689 752 896refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082520190816
28038825201 0 040102 776 928refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
28096025201 0 040102 776 928refgcc_-march=nocona_-O3_-fomit-frame-pointer2019082520190816
28245220890 0 032705 752 896refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082520190816
28324423936 0 040094 776 928refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
28399223936 0 040094 776 928refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019082520190816
28406021738 0 034662 776 928refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019082520190816
28412424007 0 040246 776 928refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019082520190816
28413622163 0 035021 768 928refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082520190816
28420021738 0 034662 776 928refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019082520190816
28496452414 0 041918 776 928refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082520190816
28508025564 0 040766 776 928refgcc_-O3_-fomit-frame-pointer2019082520190816
28564024657 0 040389 768 928refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019082520190816
28626025564 0 040766 776 928refgcc_-m64_-O3_-fomit-frame-pointer2019082520190816
28749225553 0 040678 776 928refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082520190816
28790423531 0 040761 760 1160refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019082520190816
28903620880 0 032689 752 896refgcc_-Os_-fomit-frame-pointer2019082520190816
29153625531 0 040558 776 928refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019082520190816
29342425297 0 041501 768 928refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019082520190816
29762821001 0 032841 752 896refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019082520190816
29927622148 0 034981 768 928refgcc_-O2_-fomit-frame-pointer2019082520190816
31127621761 0 034694 776 928refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019082520190816
31129621746 0 034678 776 928refgcc_-O_-fomit-frame-pointer2019082520190816
31728020880 0 032689 752 896refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019082520190816
59749535618 0 050199 768 888refgcc_-funroll-loops2019082520190816
62353235618 0 050199 768 888refgcc2019082520190816
64736035618 0 050199 768 888refcc2019082520190816

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_aes128n12t8clocv3_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:37: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:142: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:37: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:142: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:37:
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:37:
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:37:
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:37: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:37: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:37: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:37: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:37: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:37: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