Implementation notes: amd64, utrecht, crypto_aead/aeadaes128ocbtaglen128v1

Computer: utrecht
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20160806
Operation: crypto_aead
Primitive: aeadaes128ocbtaglen128v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
217440optgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
217575optgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
218169optgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
219870optgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
318681refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
342135refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
351000refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
359640refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731

Compiler output

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/dolbeau/aesenc-int
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
encrypt.c: encrypt.c: In function 'aes128ni_setkey_encrypt':
encrypt.c: encrypt.c:74:3: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [enabled by default]
encrypt.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/4.8/include/xmmintrin.h:1246:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/4.8/include/immintrin.h:32,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/4.8/include/emmintrin.h:682:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
encrypt.c: _mm_loadu_si128 (__m128i const *__P)
encrypt.c: ^
encrypt.c: encrypt.c:82:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
encrypt.c: ^
encrypt.c: encrypt.c:91:3: note: in expansion of macro 'BLOCK1'
encrypt.c: BLOCK1(0x01);
encrypt.c: ^
encrypt.c: encrypt.c:82:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
encrypt.c: ^
encrypt.c: encrypt.c:92:3: note: in expansion of macro 'BLOCK1'
encrypt.c: BLOCK1(0x02);
encrypt.c: ^
encrypt.c: encrypt.c:82:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
encrypt.c: ^
encrypt.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