Implementation notes: amd64, ryzen, crypto_aead/aes128gcmv1

Computer: ryzen
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20170904
Operation: crypto_aead
Primitive: aes128gcmv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
5550? ? ?? ? ?dolbeau/aesenc-inticc_-no-vec2017091120170904
5580? ? ?? ? ?dolbeau/aesenc-inticc2017091120170904
6720? ? ?? ? ?dolbeau/aesenc-intclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017091120170904
6720? ? ?? ? ?dolbeau/aesenc-intclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091120170904
6840? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017091120170904
6840? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017091120170904
6870? ? ?? ? ?dolbeau/aesenc-intclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091120170904
6870? ? ?? ? ?dolbeau/aesenc-intclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091120170904
6870? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017091120170904
6930? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017091120170904
6930? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017091120170904
6930? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017091120170904
7140? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017091120170904
7170? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017091120170904
7200? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017091120170904
7500? ? ?? ? ?dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017091120170904
7530? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017091120170904
7530? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017091120170904
7530? ? ?? ? ?dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017091120170904
7830? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017091120170904
7830? ? ?? ? ?dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017091120170904
8010? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017091120170904
8040? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017091120170904
8040? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017091120170904
8610? ? ?? ? ?dolbeau/aesenc-intgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017091120170904
8640? ? ?? ? ?dolbeau/aesenc-intgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017091120170904
2109600? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091120170904
2117460? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017091120170904
2162040? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017091120170904
2169330? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017091120170904
2189580? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017091120170904
2192700? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017091120170904
2193510? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017091120170904
2196870? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017091120170904
2200950? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017091120170904
2208060? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091120170904
2210460? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017091120170904
2285970? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091120170904
2287110? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017091120170904
2292360? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017091120170904
2320560? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091120170904
2320680? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017091120170904
2322900? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017091120170904
2383980? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017091120170904
2386140? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091120170904
2389530? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017091120170904
2390430? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091120170904
2393610? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091120170904
2429520? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091120170904
2430450? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017091120170904
2431350? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017091120170904
2431380? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017091120170904
2434710? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017091120170904
2438040? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017091120170904
2449020? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091120170904
2486460? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017091120170904
2661480? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017091120170904
2673720? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017091120170904
2674830? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017091120170904
2675040? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091120170904
2678640? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017091120170904
3252870? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017091120170904
6950940? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017091120170904
6983010? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091120170904
6988380? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017091120170904
6989400? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017091120170904
7002900? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017091120170904
7020900? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091120170904
7039920? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091120170904
7067160? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017091120170904
7103430? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017091120170904
7541760? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017091120170904
10389660? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017091120170904
10393290? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017091120170904
10507050? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017091120170904
10538280? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091120170904
10542810? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017091120170904
10547790? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017091120170904
10547940? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017091120170904
10555980? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017091120170904
10556790? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017091120170904
10558170? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017091120170904
10590780? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017091120170904
10631100? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017091120170904
10633770? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017091120170904
10638600? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017091120170904
10648050? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017091120170904
10651650? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091120170904
10652070? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017091120170904
10657470? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017091120170904
10658790? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017091120170904
10667610? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091120170904
10670220? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017091120170904
10678230? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017091120170904
10690080? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017091120170904
10712490? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017091120170904
14697000? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017091120170904
14873340? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017091120170904
14911920? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091120170904
15312660? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017091120170904
15328650? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017091120170904
15354240? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091120170904
15419490? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017091120170904
15459090? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017091120170904
15472200? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017091120170904
15489630? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017091120170904
15490440? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017091120170904
15495540? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017091120170904
15496650? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017091120170904
15676980? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017091120170904
15975240? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017091120170904
16203150? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017091120170904
16208610? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017091120170904
16212030? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017091120170904
16212600? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017091120170904
16217340? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017091120170904
16227960? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017091120170904
64694820? ? ?? ? ?refgcc_-funroll-loops2017091120170904
64861830? ? ?? ? ?refcc2017091120170904
68247180? ? ?? ? ?refgcc2017091120170904

Test failure

Implementation: crypto_aead/aes128gcmv1/ref
Compiler: gcc -Os -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 28, namely:
CompilerImplementations
gcc -Os -fomit-frame-pointer ref
gcc -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -Os -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc -m64 -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -march=barcelona -Os -fomit-frame-pointer ref
gcc -march=k8 -Os -fomit-frame-pointer ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -Os -fomit-frame-pointer ref
icc ref
icc -no-vec ref

Test failure

Implementation: crypto_aead/aes128gcmv1/ref
Compiler: gcc -m64 -march=barcelona -Os -fomit-frame-pointer
error 111
error 111

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

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: cc
aesenc-int.c: aesenc-int.c: In function 'aesni_key128_expand':
aesenc-int.c: aesenc-int.c:42:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/xmmintrin.h:1252:0,
aesenc-int.c: from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:29,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/emmintrin.h:700:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
aesenc-int.c: _mm_loadu_si128 (__m128i_u const *__P)
aesenc-int.c: ^~~~~~~~~~~~~~~
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: aesenc-int.c: In function 'aesni_encrypt1':
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
aesenc-int.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aesenc-int.c: ^~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:80:10: note: called from here
aesenc-int.c: temp = _mm_aesenc_si128(temp, rkeys[i]);
aesenc-int.c: ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '_mm_aesenclast_si128': target specific option mismatch
aesenc-int.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:82:8: note: called from here
aesenc-int.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc dolbeau/aesenc-int
gcc dolbeau/aesenc-int
gcc -funroll-loops dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: cc
decrypt.c: decrypt.c: In function 'crypto_aead_aes128gcmv1_openssl_decrypt':
decrypt.c: decrypt.c:13:18: error: storage size of 'x' isn't known
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^

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

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
aesenc-int.c: aesenc-int.c:42:34: warning: incompatible pointer types passing 'const unsigned int *' to parameter of type 'const __m128i *' [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: /usr/bin/../lib/clang/4.0.1/include/emmintrin.h:3414:32: note: passing argument to parameter '__p' here
aesenc-int.c: _mm_loadu_si128(__m128i const *__p)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:645:16: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'crypto_aead_aes128gcmv1_dolbeau_aesenc_int_encrypt' that is compiled without support for 'ssse3'
aesenc-int.c: __m128i Hv = _mm_shuffle_epi8(_mm_load_si128((const __m128i*)H), rev);
aesenc-int.c: ^
aesenc-int.c: 1 warning and 1 error generated.

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

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
decrypt.c: decrypt.c:13:18: error: variable has incomplete type 'EVP_CIPHER_CTX' (aka 'struct evp_cipher_ctx_st')
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c: /usr/include/openssl/ossl_typ.h:90:16: note: forward declaration of 'struct evp_cipher_ctx_st'
decrypt.c: typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
decrypt.c: ^
decrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments openssl
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments openssl
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments openssl
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments openssl
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments openssl
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments openssl
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments openssl
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments openssl
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments openssl
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments openssl

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
aesenc-int.c: aesenc-int.c:42:34: warning: incompatible pointer types passing 'const unsigned int *' to parameter of type 'const __m128i *' [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: /usr/bin/../lib/clang/4.0.1/include/emmintrin.h:3414:32: note: passing argument to parameter '__p' here
aesenc-int.c: _mm_loadu_si128(__m128i const *__p)
aesenc-int.c: ^
aesenc-int.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments dolbeau/aesenc-int
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments dolbeau/aesenc-int
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments dolbeau/aesenc-int
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments
aesenc-int.c: aesenc-int.c:42:34: warning: incompatible pointer types passing 'const unsigned int *' to parameter of type 'const __m128i *' [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: /usr/bin/../lib/clang/4.0.1/include/emmintrin.h:3414:32: note: passing argument to parameter '__p' here
aesenc-int.c: _mm_loadu_si128(__m128i const *__p)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:60:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aesenc-int.c: BLOCK1(0x01);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:50:11: note: expanded from macro 'BLOCK1'
aesenc-int.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
aesenc-int.c: ^
aesenc-int.c: /usr/bin/../lib/clang/4.0.1/include/__wmmintrin_aes.h:147:12: note: expanded from macro '_mm_aeskeygenassist_si128'
aesenc-int.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:61:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aesenc-int.c: BLOCK1(0x02);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:50:11: note: expanded from macro 'BLOCK1'
aesenc-int.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
aesenc-int.c: ^
aesenc-int.c: /usr/bin/../lib/clang/4.0.1/include/__wmmintrin_aes.h:147:12: note: expanded from macro '_mm_aeskeygenassist_si128'
aesenc-int.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:62:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aesenc-int.c: ...

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

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: gcc -O2 -fomit-frame-pointer
aesenc-int.c: aesenc-int.c: In function 'aesni_key128_expand':
aesenc-int.c: aesenc-int.c:42:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/xmmintrin.h:1252:0,
aesenc-int.c: from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:29,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/emmintrin.h:700:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
aesenc-int.c: _mm_loadu_si128 (__m128i_u const *__P)
aesenc-int.c: ^~~~~~~~~~~~~~~
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:50:9: note: called from here
aesenc-int.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
aesenc-int.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:69:3: note: in expansion of macro 'BLOCK1'
aesenc-int.c: BLOCK1(0x36);
aesenc-int.c: ^~~~~~
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ...

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

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
aesenc-int.c: aesenc-int.c: In function 'aesni_key128_expand':
aesenc-int.c: aesenc-int.c:42:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/xmmintrin.h:1252:0,
aesenc-int.c: from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:29,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/emmintrin.h:700:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
aesenc-int.c: _mm_loadu_si128 (__m128i_u const *__P)
aesenc-int.c: ^~~~~~~~~~~~~~~
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:50:9: note: called from here
aesenc-int.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
aesenc-int.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:69:3: note: in expansion of macro 'BLOCK1'
aesenc-int.c: BLOCK1(0x36);
aesenc-int.c: ^~~~~~
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ...
aesenc-int.c: aesenc-int.c: In function 'aesni_key128_expand':
aesenc-int.c: aesenc-int.c:42:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/xmmintrin.h:1252:0,
aesenc-int.c: from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:29,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/emmintrin.h:700:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
aesenc-int.c: _mm_loadu_si128 (__m128i_u const *__P)
aesenc-int.c: ^~~~~~~~~~~~~~~
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:50:9: note: called from here
aesenc-int.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
aesenc-int.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:69:3: note: in expansion of macro 'BLOCK1'
aesenc-int.c: BLOCK1(0x36);
aesenc-int.c: ^~~~~~
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ...

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

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
decrypt.c: decrypt.c: In function 'crypto_aead_aes128gcmv1_openssl_decrypt':
decrypt.c: decrypt.c:13:18: error: storage size of 'x' isn't known
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c: decrypt.c: In function 'crypto_aead_aes128gcmv1_openssl_decrypt':
decrypt.c: decrypt.c:13:18: error: storage size of 'x' isn't known
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^

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

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
aesenc-int.c: aesenc-int.c: In function 'aesni_key128_expand':
aesenc-int.c: aesenc-int.c:42:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/xmmintrin.h:1252:0,
aesenc-int.c: from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/immintrin.h:29,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/emmintrin.h:700:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
aesenc-int.c: _mm_loadu_si128 (__m128i_u const *__P)
aesenc-int.c: ^~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/aesenc-int
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/aesenc-int
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/aesenc-int
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: icc
aesenc-int.c: aesenc-int.c(42): warning #167: argument of type "const unsigned int *" is incompatible with parameter of type "const union __m128i *"
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c:

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
icc dolbeau/aesenc-int
icc -no-vec dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: icc
decrypt.c: decrypt.c(13): error: incomplete type is not allowed
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c:
decrypt.c: compilation aborted for decrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
icc openssl
icc -O1 -static openssl
icc -O1 -static -no-vec openssl
icc -O2 -static openssl
icc -O2 -static -no-vec openssl
icc -O3 -static openssl
icc -O3 -static -no-vec openssl
icc -Os -static openssl
icc -Os -static -no-vec openssl
icc -fast openssl
icc -m64 -O1 -static openssl
icc -m64 -O1 -static -no-vec openssl
icc -m64 -O2 -static openssl
icc -m64 -O2 -static -no-vec openssl
icc -m64 -O3 -static openssl
icc -m64 -O3 -static -no-vec openssl
icc -m64 -Os -static openssl
icc -m64 -Os -static -no-vec openssl
icc -no-vec openssl

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: icc -O1 -static
aesenc-int.c: aesenc-int.c(42): warning #167: argument of type "const unsigned int *" is incompatible with parameter of type "const union __m128i *"
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c:
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
icc -O1 -static dolbeau/aesenc-int
icc -O1 -static -no-vec dolbeau/aesenc-int
icc -O2 -static dolbeau/aesenc-int
icc -O2 -static -no-vec dolbeau/aesenc-int
icc -O3 -static dolbeau/aesenc-int
icc -O3 -static -no-vec dolbeau/aesenc-int
icc -Os -static dolbeau/aesenc-int
icc -Os -static -no-vec dolbeau/aesenc-int
icc -m64 -O1 -static dolbeau/aesenc-int
icc -m64 -O1 -static -no-vec dolbeau/aesenc-int
icc -m64 -O2 -static dolbeau/aesenc-int
icc -m64 -O2 -static -no-vec dolbeau/aesenc-int
icc -m64 -O3 -static dolbeau/aesenc-int
icc -m64 -O3 -static -no-vec dolbeau/aesenc-int
icc -m64 -Os -static dolbeau/aesenc-int
icc -m64 -Os -static -no-vec dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/ref
Compiler: icc -O1 -static
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
icc -O1 -static ref
icc -O1 -static -no-vec ref
icc -O2 -static ref
icc -O2 -static -no-vec ref
icc -O3 -static ref
icc -O3 -static -no-vec ref
icc -Os -static ref
icc -Os -static -no-vec ref
icc -m64 -O1 -static ref
icc -m64 -O1 -static -no-vec ref
icc -m64 -O2 -static ref
icc -m64 -O2 -static -no-vec ref
icc -m64 -O3 -static ref
icc -m64 -O3 -static -no-vec ref
icc -m64 -Os -static ref
icc -m64 -Os -static -no-vec ref

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: icc -O1 -xB -static
aesenc-int.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
aesenc-int.c: aesenc-int.c(42): warning #167: argument of type "const unsigned int *" is incompatible with parameter of type "const union __m128i *"
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c:
try.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xB -static dolbeau/aesenc-int
icc -O1 -xB -static -no-vec dolbeau/aesenc-int
icc -O2 -xB -static dolbeau/aesenc-int
icc -O2 -xB -static -no-vec dolbeau/aesenc-int
icc -O3 -xB -static dolbeau/aesenc-int
icc -O3 -xB -static -no-vec dolbeau/aesenc-int
icc -Os -xB -static dolbeau/aesenc-int
icc -Os -xB -static -no-vec dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: icc -O1 -xB -static
decrypt.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
decrypt.c: decrypt.c(13): error: incomplete type is not allowed
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c:
decrypt.c: compilation aborted for decrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xB -static openssl
icc -O1 -xB -static -no-vec openssl
icc -O2 -xB -static openssl
icc -O2 -xB -static -no-vec openssl
icc -O3 -xB -static openssl
icc -O3 -xB -static -no-vec openssl
icc -Os -xB -static openssl
icc -Os -xB -static -no-vec openssl

Compiler output

Implementation: crypto_aead/aes128gcmv1/ref
Compiler: icc -O1 -xB -static
encrypt.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xB -static ref
icc -O1 -xB -static -no-vec ref
icc -O2 -xB -static ref
icc -O2 -xB -static -no-vec ref
icc -O3 -xB -static ref
icc -O3 -xB -static -no-vec ref
icc -Os -xB -static ref
icc -Os -xB -static -no-vec ref

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: icc -O1 -xK -static
aesenc-int.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
aesenc-int.c: aesenc-int.c(42): warning #167: argument of type "const unsigned int *" is incompatible with parameter of type "const union __m128i *"
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c:
try.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xK -static dolbeau/aesenc-int
icc -O1 -xK -static -no-vec dolbeau/aesenc-int
icc -O2 -xK -static dolbeau/aesenc-int
icc -O2 -xK -static -no-vec dolbeau/aesenc-int
icc -O3 -xK -static dolbeau/aesenc-int
icc -O3 -xK -static -no-vec dolbeau/aesenc-int
icc -Os -xK -static dolbeau/aesenc-int
icc -Os -xK -static -no-vec dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: icc -O1 -xK -static
decrypt.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
decrypt.c: decrypt.c(13): error: incomplete type is not allowed
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c:
decrypt.c: compilation aborted for decrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xK -static openssl
icc -O1 -xK -static -no-vec openssl
icc -O2 -xK -static openssl
icc -O2 -xK -static -no-vec openssl
icc -O3 -xK -static openssl
icc -O3 -xK -static -no-vec openssl
icc -Os -xK -static openssl
icc -Os -xK -static -no-vec openssl

Compiler output

Implementation: crypto_aead/aes128gcmv1/ref
Compiler: icc -O1 -xK -static
encrypt.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xK -static ref
icc -O1 -xK -static -no-vec ref
icc -O2 -xK -static ref
icc -O2 -xK -static -no-vec ref
icc -O3 -xK -static ref
icc -O3 -xK -static -no-vec ref
icc -Os -xK -static ref
icc -Os -xK -static -no-vec ref

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: icc -O1 -xN -static
aesenc-int.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
aesenc-int.c: aesenc-int.c(42): warning #167: argument of type "const unsigned int *" is incompatible with parameter of type "const union __m128i *"
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c:
try.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xN -static dolbeau/aesenc-int
icc -O1 -xN -static -no-vec dolbeau/aesenc-int
icc -O2 -xN -static dolbeau/aesenc-int
icc -O2 -xN -static -no-vec dolbeau/aesenc-int
icc -O3 -xN -static dolbeau/aesenc-int
icc -O3 -xN -static -no-vec dolbeau/aesenc-int
icc -Os -xN -static dolbeau/aesenc-int
icc -Os -xN -static -no-vec dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: icc -O1 -xN -static
decrypt.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
decrypt.c: decrypt.c(13): error: incomplete type is not allowed
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c:
decrypt.c: compilation aborted for decrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xN -static openssl
icc -O1 -xN -static -no-vec openssl
icc -O2 -xN -static openssl
icc -O2 -xN -static -no-vec openssl
icc -O3 -xN -static openssl
icc -O3 -xN -static -no-vec openssl
icc -Os -xN -static openssl
icc -Os -xN -static -no-vec openssl

Compiler output

Implementation: crypto_aead/aes128gcmv1/ref
Compiler: icc -O1 -xN -static
encrypt.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xN -static ref
icc -O1 -xN -static -no-vec ref
icc -O2 -xN -static ref
icc -O2 -xN -static -no-vec ref
icc -O3 -xN -static ref
icc -O3 -xN -static -no-vec ref
icc -Os -xN -static ref
icc -Os -xN -static -no-vec ref

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: icc -O1 -xW -static
aesenc-int.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
aesenc-int.c: aesenc-int.c(42): warning #167: argument of type "const unsigned int *" is incompatible with parameter of type "const union __m128i *"
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c:
try.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xW -static dolbeau/aesenc-int
icc -O1 -xW -static -no-vec dolbeau/aesenc-int
icc -O2 -xW -static dolbeau/aesenc-int
icc -O2 -xW -static -no-vec dolbeau/aesenc-int
icc -O3 -xW -static dolbeau/aesenc-int
icc -O3 -xW -static -no-vec dolbeau/aesenc-int
icc -Os -xW -static dolbeau/aesenc-int
icc -Os -xW -static -no-vec dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: icc -O1 -xW -static
decrypt.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
decrypt.c: decrypt.c(13): error: incomplete type is not allowed
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c:
decrypt.c: compilation aborted for decrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xW -static openssl
icc -O1 -xW -static -no-vec openssl
icc -O2 -xW -static openssl
icc -O2 -xW -static -no-vec openssl
icc -O3 -xW -static openssl
icc -O3 -xW -static -no-vec openssl
icc -Os -xW -static openssl
icc -Os -xW -static -no-vec openssl

Compiler output

Implementation: crypto_aead/aes128gcmv1/ref
Compiler: icc -O1 -xW -static
encrypt.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xW -static ref
icc -O1 -xW -static -no-vec ref
icc -O2 -xW -static ref
icc -O2 -xW -static -no-vec ref
icc -O3 -xW -static ref
icc -O3 -xW -static -no-vec ref
icc -Os -xW -static ref
icc -Os -xW -static -no-vec ref

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: icc -fast
aesenc-int.c: aesenc-int.c(42): warning #167: argument of type "const unsigned int *" is incompatible with parameter of type "const union __m128i *"
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c:
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/kernelrandombytes.o; was the source file compiled with -ipo
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/cpucycles.o; was the source file compiled with -ipo
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -fast dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/ref
Compiler: icc -fast
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/kernelrandombytes.o; was the source file compiled with -ipo
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/cpucycles.o; was the source file compiled with -ipo
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -fast ref

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: icc -m64 -xHost -vec-report0 -static
aesenc-int.c: icc: command line remark #10148: option '-vec-report0' not supported
aesenc-int.c: aesenc-int.c(42): warning #167: argument of type "const unsigned int *" is incompatible with parameter of type "const union __m128i *"
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c:
try.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -m64 -xHost -vec-report0 -static dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: icc -m64 -xHost -vec-report0 -static
decrypt.c: icc: command line remark #10148: option '-vec-report0' not supported
decrypt.c: decrypt.c(13): error: incomplete type is not allowed
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c:
decrypt.c: compilation aborted for decrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -m64 -xHost -vec-report0 -static openssl

Compiler output

Implementation: crypto_aead/aes128gcmv1/ref
Compiler: icc -m64 -xHost -vec-report0 -static
encrypt.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -m64 -xHost -vec-report0 -static ref