Implementation notes: amd64, genji154, crypto_aead/aes128poetv1aes128

Computer: genji154
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
SUPERCOP version: 20170228
Operation: crypto_aead
Primitive: aes128poetv1aes128
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
21463? ? ?? ? ?niclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017041020170228
21502? ? ?? ? ?niclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017041020170228
21515? ? ?? ? ?niclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017041020170228
21684? ? ?? ? ?niclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017041020170228
31681? ? ?? ? ?niicc_-xMIC-AVX512_-O3_-fomit-frame-pointer2017022620170105
31902? ? ?? ? ?niicc_-xMIC-AVX512_-O2_-fomit-frame-pointer2017022620170105
33423? ? ?? ? ?nigcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017022620170105
33657? ? ?? ? ?nigcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017022620170105
33670? ? ?? ? ?nigcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017022620170105
33696? ? ?? ? ?nigcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017022620170105
33917? ? ?? ? ?nigcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017022620170105
34047? ? ?? ? ?nigcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017022620170105
34281? ? ?? ? ?nigcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017022620170105
34281? ? ?? ? ?nigcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017022620170105
35321? ? ?? ? ?nigcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017022620170105
35386? ? ?? ? ?nigcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017022620170105
37752? ? ?? ? ?nigcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017022620170105
37778? ? ?? ? ?nigcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017022620170105
37856? ? ?? ? ?nigcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017022620170105
38454? ? ?? ? ?nigcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017022620170105
38493? ? ?? ? ?nigcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017022620170105
48100? ? ?? ? ?niicc_-no-vec2017022620170105
48113? ? ?? ? ?niicc2017022620170105
59865? ? ?? ? ?nigcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017022620170105
59969? ? ?? ? ?nigcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017022620170105
60567? ? ?? ? ?nigcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017022620170105
60788? ? ?? ? ?nigcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017022620170105
60840? ? ?? ? ?nigcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017022620170105
291135? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017022620170105
292903? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017022620170105
293553? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017022620170105
295074? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017022620170105
295932? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017022620170105
296309? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017022620170105
296374? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017022620170105
296439? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017022620170105
296673? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017022620170105
296738? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017022620170105
296894? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017022620170105
296946? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017022620170105
296972? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017022620170105
297011? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017022620170105
297089? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017022620170105
297206? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017022620170105
297232? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017022620170105
297349? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017022620170105
297440? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017022620170105
297609? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017022620170105
297856? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017022620170105
298272? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017022620170105
298337? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017022620170105
298467? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017022620170105
298597? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017022620170105
299260? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017022620170105
299364? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017022620170105
299715? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017022620170105
299793? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017022620170105
299858? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017022620170105
299962? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017022620170105
300079? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017022620170105
300209? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017022620170105
300326? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017022620170105
301223? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017022620170105
304031? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017022620170105
313040? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017022620170105
313365? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017022620170105
314158? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017022620170105
314301? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017022620170105
314730? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017022620170105
314821? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017022620170105
314860? ? ?? ? ?reficc_-xMIC-AVX512_-O2_-fomit-frame-pointer2017022620170105
315276? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017022620170105
315822? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017022620170105
316498? ? ?? ? ?reficc_-xMIC-AVX512_-O3_-fomit-frame-pointer2017022620170105
318227? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017022620170105
321113? ? ?? ? ?reficc2017022620170105
329056? ? ?? ? ?reficc_-no-vec2017022620170105
330096? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017022620170105
330148? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017022620170105
330200? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017022620170105
330460? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017022620170105
330642? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017022620170105
331409? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017022620170105
332982? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017022620170105
332995? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017022620170105
333736? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017022620170105
334958? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017022620170105
335205? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017022620170105
335439? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017022620170105
335829? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017022620170105
337025? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017022620170105
338949? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017022620170105
339443? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017022620170105
339677? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017022620170105
339976? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017022620170105
345527? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017022620170105
345592? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017022620170105
345592? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017022620170105
346112? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017022620170105
346450? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017022620170105
347204? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017022620170105
347321? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017022620170105
347984? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017022620170105
350090? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017022620170105
351520? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017022620170105
351650? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017022620170105
351884? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017022620170105
351910? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017022620170105
351936? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017022620170105
352092? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017022620170105
352339? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017022620170105
352482? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017022620170105
352742? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017022620170105
353210? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017022620170105
353743? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017022620170105
353834? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017022620170105
353886? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017022620170105
353925? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017022620170105
353951? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017022620170105
354198? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017022620170105
354328? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017022620170105
354536? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017022620170105
354757? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017022620170105
354874? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017022620170105
354939? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017022620170105
355082? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017022620170105
355459? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017022620170105
356083? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017022620170105
356096? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017022620170105
356421? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017022620170105
356564? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017022620170105
356603? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017022620170105
357110? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017022620170105
357552? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017022620170105
357643? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017022620170105
358176? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017022620170105
358488? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017022620170105
358514? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017022620170105
359567? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017022620170105
359593? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017022620170105
370136? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017041020170228
371215? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017041020170228
372008? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017041020170228
372073? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017041020170228
376233? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017041020170228
376272? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017041020170228
376974? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017041020170228
377676? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017041020170228
1749605? ? ?? ? ?refgcc2017022620170105
1753128? ? ?? ? ?refgcc_-funroll-loops2017022620170105
1759615? ? ?? ? ?refcc2017022620170105

Test failure

Implementation: crypto_aead/aes128poetv1aes128/ref
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
error 111

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: cc
encrypt.c: In file included from poet.h:5:0,
encrypt.c: from encrypt.c:34:
encrypt.c: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/smmintrin.h:31:3: error: #error "SSE4.1 instruction set not enabled"
encrypt.c: # error "SSE4.1 instruction set not enabled"
encrypt.c: ^
encrypt.c: In file included from poet.h:6:0,
encrypt.c: from encrypt.c:34:
encrypt.c: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
encrypt.c: # error "AES/PCLMUL instructions not enabled"
encrypt.c: ^

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc ni

Compiler output

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

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

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments
poet.c: poet.c:81:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
poet.c: temp2 = _mm_aeskeygenassist_si128(temp1, 0x1);
poet.c: ^
poet.c: /usr/local/llvm-3.9.0/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/local/llvm-3.9.0/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/local/llvm-3.9.0/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/local/llvm-3.9.0/bin/../lib/clang/3.9.0/include/__wmmintrin_aes.h:147:12: note: expanded from macro '_mm_aeskeygenassist_si128'
poet.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
poet.c: ^
poet.c: poet.c:97:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
poet.c: ...

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

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: gcc
poet.c: In file included from poet.c:31:0:
poet.c: poet.c: In function 'aes_encrypt':
poet.c: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '_mm_aesenclast_si128': target specific option mismatch
poet.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
poet.c: ^~~~~~~~~~~~~~~~~~~~
poet.c: poet.c:136:12: note: called from here
poet.c: return _mm_aesenclast_si128(x, k[10]);
poet.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
poet.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:135:7: note: called from here
poet.c: x = _mm_aesenc_si128(x, k[9]);
poet.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
poet.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
poet.c: ^~~~~~~~~~~~~~~~
poet.c: poet.c:134:7: note: called from here
poet.c: x = _mm_aesenc_si128(x, k[8]);
poet.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
poet.c: In file included from poet.c:31:0:
poet.c: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: 2, namely:
CompilerImplementations
gcc ni
gcc -funroll-loops ni

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: gcc -O2 -fomit-frame-pointer
poet.c: In file included from poet.c:31:0:
poet.c: poet.c: In function 'aes_revert_key':
poet.c: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
poet.c: _mm_aesimc_si128 (__m128i __X)
poet.c: ...

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

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
poet.c: In file included from poet.c:31:0:
poet.c: poet.c: In function 'aes_revert_key':
poet.c: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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: /home_nfs/bdolbeaur/gcc-6.3.0-full-bin/lib/gcc/x86_64-pc-linux-gnu/6.3.0/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