Implementation notes: amd64, waldorf, crypto_aead/aes128cpfbv1

Computer: waldorf
Architecture: amd64
CPU ID: GenuineIntel-000106e5-bfebfbff
SUPERCOP version: 20160715
Operation: crypto_aead
Primitive: aes128cpfbv1
TimeImplementationCompilerBenchmark dateSUPERCOP version
213312gladmangcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016071820160715
218044gladmangcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016071820160715
221172gladmangcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016071820160715
225840gladmangcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016071820160715
237452aesrefgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016071820160715
242624aesrefgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016071820160715
252400aesrefgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016071820160715
258596aesrefgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016071820160715
294380gladmanclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016071820160715
341308refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016071820160715
345144aesrefclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016071820160715
354208refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016071820160715
379652refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016071820160715
401420refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016071820160715
409656refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016071820160715

Compiler output

Implementation: crypto_aead/aes128cpfbv1/aesni
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
cpfbkey.c: In file included from cpfbkey.c:15:
cpfbkey.c: /usr/include/clang/3.5.0/include/wmmintrin.h:30:3: error: "AES/PCLMUL instructions not enabled"
cpfbkey.c: # error "AES/PCLMUL instructions not enabled"
cpfbkey.c: ^
cpfbkey.c: cpfbkey.c:50:9: warning: implicit declaration of function '_mm_aeskeygenassist_si128' is invalid in C99 [-Wimplicit-function-declaration]
cpfbkey.c: temp2 = _mm_aeskeygenassist_si128 (temp1,0x1);
cpfbkey.c: ^
cpfbkey.c: cpfbkey.c:50:7: error: assigning to '__m128i' (vector of 2 'long long' values) from incompatible type 'int'
cpfbkey.c: temp2 = _mm_aeskeygenassist_si128 (temp1,0x1);
cpfbkey.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cpfbkey.c: cpfbkey.c:52:6: warning: implicit declaration of function '_mm_aesenc_si128' is invalid in C99 [-Wimplicit-function-declaration]
cpfbkey.c: k1 = _mm_aesenc_si128(k1,temp1);
cpfbkey.c: ^
cpfbkey.c: cpfbkey.c:52:4: error: assigning to '__m128i' (vector of 2 'long long' values) from incompatible type 'int'
cpfbkey.c: k1 = _mm_aesenc_si128(k1,temp1);
cpfbkey.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
cpfbkey.c: cpfbkey.c:53:4: error: assigning to '__m128i' (vector of 2 'long long' values) from incompatible type 'int'
cpfbkey.c: k2 = _mm_aesenc_si128(k2,temp1);
cpfbkey.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
cpfbkey.c: cpfbkey.c:54:7: error: assigning to '__m128i' (vector of 2 'long long' values) from incompatible type 'int'
cpfbkey.c: temp2 = _mm_aeskeygenassist_si128 (temp1,0x2);
cpfbkey.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cpfbkey.c: cpfbkey.c:56:4: error: assigning to '__m128i' (vector of 2 'long long' values) from incompatible type 'int'
cpfbkey.c: k1 = _mm_aesenc_si128(k1,temp1);
cpfbkey.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
cpfbkey.c: ...

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

Compiler output

Implementation: crypto_aead/aes128cpfbv1/evp
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
encrypt.c: encrypt.c:22:10: fatal error: 'openssl/evp.h' file not found
encrypt.c: #include gt;
encrypt.c: ^
encrypt.c: 1 error generated.

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

Compiler output

Implementation: crypto_aead/aes128cpfbv1/aesni
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
cpfbkey.c: In file included from cpfbkey.c:15:0:
cpfbkey.c: cpfbkey.c: In function 'AES_128_Key_Expansion_and_encryption':
cpfbkey.c: /usr/lib/gcc/x86_64-linux-gnu/4.9/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
cpfbkey.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
cpfbkey.c: ^
cpfbkey.c: cpfbkey.c:50:9: error: called from here
cpfbkey.c: temp2 = _mm_aeskeygenassist_si128 (temp1,0x1);
cpfbkey.c: ^
cpfbkey.c: In file included from cpfbkey.c:15:0:
cpfbkey.c: /usr/lib/gcc/x86_64-linux-gnu/4.9/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
cpfbkey.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
cpfbkey.c: ^
cpfbkey.c: cpfbkey.c:52:4: error: called from here
cpfbkey.c: k1 = _mm_aesenc_si128(k1,temp1);
cpfbkey.c: ^
cpfbkey.c: In file included from cpfbkey.c:15:0:
cpfbkey.c: /usr/lib/gcc/x86_64-linux-gnu/4.9/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
cpfbkey.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
cpfbkey.c: ^
cpfbkey.c: cpfbkey.c:53:4: error: called from here
cpfbkey.c: k2 = _mm_aesenc_si128(k2,temp1);
cpfbkey.c: ^
cpfbkey.c: In file included from cpfbkey.c:15:0:
cpfbkey.c: /usr/lib/gcc/x86_64-linux-gnu/4.9/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
cpfbkey.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
cpfbkey.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv aesni
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv aesni
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv aesni
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv aesni

Compiler output

Implementation: crypto_aead/aes128cpfbv1/evp
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
encrypt.c: encrypt.c:22:25: fatal error: openssl/evp.h: No such file or directory
encrypt.c: #include gt;
encrypt.c: ^
encrypt.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv evp
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv evp
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv evp
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv evp