Implementation notes: amd64, glyme, crypto_aead/aegis128

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_aead
Primitive: aegis128
TimeImplementationCompilerBenchmark dateSUPERCOP version
6772aesniclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020220170105
6772aesniclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
6908aesnigcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020220170105
6912aesnigcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020220170105
7200aesnigcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020220170105
7200aesnigcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020220170105
7336aesnigcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020220170105
7336aesnigcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020220170105
9908aesnigcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020220170105
9908aesnigcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020220170105
82760refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
82772refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
82780refclang -O3 -fomit-frame-pointer -Qunused-arguments2017020220170105
82988refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020220170105
82992refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
83052refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
83544refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020220170105
83552refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020220170105
83556refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020220170105
83840refgcc -march=barcelona -O3 -fomit-frame-pointer2017020220170105
83936refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020220170105
83944refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020220170105
83960refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020220170105
83968refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020220170105
83968refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020220170105
83972refgcc -funroll-loops -O3 -fomit-frame-pointer2017020220170105
83972refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020220170105
83980refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020220170105
83980refgcc -march=k8 -O3 -fomit-frame-pointer2017020220170105
83984refgcc -O3 -fomit-frame-pointer2017020220170105
83984refgcc -m64 -O3 -fomit-frame-pointer2017020220170105
83988refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020220170105
84004refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020220170105
84004refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020220170105
84060refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020220170105
84064refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020220170105
84064refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020220170105
84076refgcc -march=nocona -O3 -fomit-frame-pointer2017020220170105
84092refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020220170105
84184refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020220170105
85552refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020220170105
85560refgcc -march=barcelona -O -fomit-frame-pointer2017020220170105
85672refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020220170105
85744refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020220170105
85800refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020220170105
85856refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020220170105
85880refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020220170105
85892refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020220170105
85892refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020220170105
85908refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020220170105
85928refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020220170105
85928refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020220170105
85956refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020220170105
85960refgcc -O -fomit-frame-pointer2017020220170105
85964refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020220170105
85964refgcc -m64 -O -fomit-frame-pointer2017020220170105
85964refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020220170105
85968refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020220170105
85968refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020220170105
85968refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020220170105
85968refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020220170105
85976refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020220170105
85980refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020220170105
85980refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020220170105
85984refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020220170105
85984refgcc -march=nocona -O -fomit-frame-pointer2017020220170105
85988refgcc -O2 -fomit-frame-pointer2017020220170105
85988refgcc -march=k8 -O -fomit-frame-pointer2017020220170105
86048refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020220170105
86048refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020220170105
86048refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020220170105
86056refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020220170105
86056refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020220170105
86064refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020220170105
86064refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020220170105
86068refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020220170105
86080refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020220170105
86096refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020220170105
86096refgcc -march=k8 -O2 -fomit-frame-pointer2017020220170105
86104refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020220170105
86136refgcc -funroll-loops -Os -fomit-frame-pointer2017020220170105
86136refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020220170105
86140refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020220170105
86180refgcc -funroll-loops -O2 -fomit-frame-pointer2017020220170105
86204refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020220170105
86224refgcc -m64 -O2 -fomit-frame-pointer2017020220170105
86280refgcc -march=nocona -O2 -fomit-frame-pointer2017020220170105
86296refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020220170105
86304refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020220170105
86344refgcc -march=barcelona -O2 -fomit-frame-pointer2017020220170105
86468refgcc -march=nocona -Os -fomit-frame-pointer2017020220170105
86476refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020220170105
86652refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020220170105
86652refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020220170105
86672refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020220170105
86676refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020220170105
86676refgcc -march=k8 -Os -fomit-frame-pointer2017020220170105
86680refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020220170105
86680refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020220170105
86680refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020220170105
86704refgcc -Os -fomit-frame-pointer2017020220170105
86704refgcc -m64 -Os -fomit-frame-pointer2017020220170105
86708refgcc -funroll-loops -O -fomit-frame-pointer2017020220170105
86712refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020220170105
86716refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020220170105
86716refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020220170105
86716refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020220170105
86724refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020220170105
86748refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020220170105
86784refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020220170105
86832refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020220170105
86848refgcc -march=barcelona -Os -fomit-frame-pointer2017020220170105

Compiler output

Implementation: crypto_aead/aegis128/aesni
Compiler: cc
encrypt.c: encrypt.c:34:25: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aegis128_initialization' that is compiled without support for 'aes'
encrypt.c: state[4] = _mm_aesenc_si128(state[3], state[4]);
encrypt.c: ^
encrypt.c: encrypt.c:35:25: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aegis128_initialization' that is compiled without support for 'aes'
encrypt.c: state[3] = _mm_aesenc_si128(state[2], state[3]);
encrypt.c: ^
encrypt.c: encrypt.c:36:25: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aegis128_initialization' that is compiled without support for 'aes'
encrypt.c: state[2] = _mm_aesenc_si128(state[1], state[2]);
encrypt.c: ^
encrypt.c: encrypt.c:37:25: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aegis128_initialization' that is compiled without support for 'aes'
encrypt.c: state[1] = _mm_aesenc_si128(state[0], state[1]);
encrypt.c: ^
encrypt.c: encrypt.c:38:25: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aegis128_initialization' that is compiled without support for 'aes'
encrypt.c: state[0] = _mm_aesenc_si128(tmp, state[0]);
encrypt.c: ^
encrypt.c: 5 errors generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
cc aesni
clang -O3 -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: crypto_aead/aegis128/ref
Compiler: cc
try.c: crypto_aead_aegis128.a(encrypt.o): In function `crypto_aead_aegis128_ref_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_enc_aut_step'
try.c: crypto_aead_aegis128.a(encrypt.o): In function `crypto_aead_aegis128_ref_decrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_enc_aut_step'
try.c: crypto_aead_aegis128.a(encrypt.o):encrypt.c:(.text+0x...): more undefined references to `aegis128_enc_aut_step' follow
try.c: crypto_aead_aegis128.a(encrypt.o): In function `crypto_aead_aegis128_ref_decrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_dec_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_dec_aut_step'
try.c: cc: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: crypto_aead/aegis128/aesni
Compiler: gcc
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: encrypt.c: In function 'aegis128_initialization':
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:38:25: note: called from here
encrypt.c: state[0] = _mm_aesenc_si128(tmp, state[0]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:37:25: note: called from here
encrypt.c: state[1] = _mm_aesenc_si128(state[0], state[1]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:36:25: note: called from here
encrypt.c: state[2] = _mm_aesenc_si128(state[1], state[2]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...

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

Compiler output

Implementation: crypto_aead/aegis128/ref
Compiler: gcc
try.c: crypto_aead_aegis128.a(encrypt.o): In function `crypto_aead_aegis128_ref_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_enc_aut_step'
try.c: crypto_aead_aegis128.a(encrypt.o): In function `crypto_aead_aegis128_ref_decrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_enc_aut_step'
try.c: crypto_aead_aegis128.a(encrypt.o):encrypt.c:(.text+0x...): more undefined references to `aegis128_enc_aut_step' follow
try.c: crypto_aead_aegis128.a(encrypt.o): In function `crypto_aead_aegis128_ref_decrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_dec_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis128_dec_aut_step'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc ref
gcc -funroll-loops ref

Compiler output

Implementation: crypto_aead/aegis128/aesni
Compiler: gcc -O2 -fomit-frame-pointer
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: encrypt.c: In function 'aegis128_enc_aut_step':
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:108:20: note: called from here
encrypt.c: state[0] = _mm_aesenc_si128(tmp,state[0]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:107:20: note: called from here
encrypt.c: state[1] = _mm_aesenc_si128(state[0],state[1]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:106:20: note: called from here
encrypt.c: state[2] = _mm_aesenc_si128(state[1],state[2]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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: crypto_aead/aegis128/aesni
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: encrypt.c: In function 'aegis128_enc_aut_step':
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:108:20: note: called from here
encrypt.c: state[0] = _mm_aesenc_si128(tmp,state[0]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:107:20: note: called from here
encrypt.c: state[1] = _mm_aesenc_si128(state[0],state[1]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:106:20: note: called from here
encrypt.c: state[2] = _mm_aesenc_si128(state[1],state[2]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: encrypt.c: In function 'aegis128_enc_aut_step':
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:108:20: note: called from here
encrypt.c: state[0] = _mm_aesenc_si128(tmp,state[0]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:107:20: note: called from here
encrypt.c: state[1] = _mm_aesenc_si128(state[0],state[1]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:4:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/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: encrypt.c:106:20: note: called from here
encrypt.c: state[2] = _mm_aesenc_si128(state[1],state[2]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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