Implementation notes: amd64, slide, crypto_core/aes128encrypt

Computer: slide
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20160806
Operation: crypto_core
Primitive: aes128encrypt
TimeImplementationCompilerBenchmark dateSUPERCOP version
117dolbeau/aesenc-intgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016090620160806
136dolbeau/aesenc-intgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016090620160806
140dolbeau/aesenc-intgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016090620160806
140dolbeau/aesenc-intgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016090620160806
324dolbeau/std-4ftgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016090620160806
324dolbeau/std-4ftgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016090620160806
332dolbeau/std-4ftgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016090620160806
340dolbeau/std-2ftgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016090620160806
348dolbeau/std-2ftgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016090620160806
356dolbeau/std-1ftgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016090620160806
356dolbeau/std-2ftgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016090620160806
360dolbeau/std-4ftgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016090620160806
364dolbeau/std-1ftgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016090620160806
368dolbeau/std-1ftgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016090620160806
372dolbeau/std-2ftgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016090620160806
380dolbeau/std-1ftgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016090620160806
339168refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016090620160806
560592refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016090620160806
615728refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016090620160806
659576refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016090620160806

Compiler output

Implementation: crypto_core/aes128encrypt/dolbeau/aesenc-int
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
core.c: core.c: In function 'aes128ni_setkey_encrypt':
core.c: core.c:12:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type
core.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
core.c: ^
core.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/4.9/include/xmmintrin.h:1258:0,
core.c: from /usr/lib/gcc/x86_64-linux-gnu/4.9/include/immintrin.h:29,
core.c: from core.c:9:
core.c: /usr/lib/gcc/x86_64-linux-gnu/4.9/include/emmintrin.h:692:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
core.c: _mm_loadu_si128 (__m128i const *__P)
core.c: ^

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
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_core/aes128encrypt/openssl
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
core.c: core.c:1:25: fatal error: openssl/aes.h: No such file or directory
core.c: #include gt;
core.c: ^
core.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
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