Implementation notes: amd64, h5nano, crypto_aead/aesjambuv1

Computer: h5nano
Architecture: amd64
CPU ID: CentaurHauls-000006f8-afc9fbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: aesjambuv1
TimeImplementationCompilerBenchmark dateSUPERCOP version
249430refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014072820140622
249435refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014072820140622
249435refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014072820140622
249440refgcc -funroll-loops -O2 -fomit-frame-pointer2014072820140622
249440refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014072820140622
249440refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014072820140622
249440refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014072820140622
249445refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014072820140622
249495refgcc -funroll-loops -O3 -fomit-frame-pointer2014072820140622
249495refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014072820140622
251130refgcc -march=barcelona -O2 -fomit-frame-pointer2014072820140622
251170refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014072820140622
251500refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014072820140622
251500refgcc -march=barcelona -O3 -fomit-frame-pointer2014072820140622
252285refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014072820140622
252285refgcc -m64 -O2 -fomit-frame-pointer2014072820140622
252290refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014072820140622
252290refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014072820140622
252290refgcc -march=k8 -O2 -fomit-frame-pointer2014072820140622
252295refgcc -O2 -fomit-frame-pointer2014072820140622
252295refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014072820140622
252320refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014072820140622
252335refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014072820140622
253015refgcc -O3 -fomit-frame-pointer2014072820140622
253015refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014072820140622
253030refgcc -m64 -O3 -fomit-frame-pointer2014072820140622
253035refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014072820140622
253035refgcc -march=k8 -O3 -fomit-frame-pointer2014072820140622
253255refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014072820140622
253255refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014072820140622
253255refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014072820140622
253255refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014072820140622
253290refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014072820140622
254065refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014072820140622
254065refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014072820140622
254065refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014072820140622
254080refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014072820140622
254080refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014072820140622
255185refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014072820140622
256170refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014072820140622
256175refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014072820140622
258620refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014072820140622
258620refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014072820140622
258635refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014072820140622
258645refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014072820140622
258650refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014072820140622
258650refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014072820140622
258660refgcc -funroll-loops -Os -fomit-frame-pointer2014072820140622
258670refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014072820140622
258710refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014072820140622
259600refgcc -Os -fomit-frame-pointer2014072820140622
259600refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014072820140622
259600refgcc -march=k8 -Os -fomit-frame-pointer2014072820140622
259665refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014072820140622
259665refgcc -m64 -Os -fomit-frame-pointer2014072820140622
259980refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014072820140622
259980refgcc -march=barcelona -Os -fomit-frame-pointer2014072820140622
263260refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014072820140622
263295refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014072820140622
265360refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014072820140622
265365refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014072820140622
269765refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014072820140622
269990refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014072820140622
270220refgcc -march=nocona -O2 -fomit-frame-pointer2014072820140622
270235refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014072820140622
270935refgcc -march=nocona -O3 -fomit-frame-pointer2014072820140622
270970refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014072820140622
278935refgcc -march=nocona -Os -fomit-frame-pointer2014072820140622
279615refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014072820140622
280305refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101620141014
280305refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101620141014
280305refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014072820140622
280335refclang -O3 -fomit-frame-pointer2014072820140622
280365refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014072820140622
281070refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014072820140622
281070refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014072820140622
281070refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014072820140622
281070refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014072820140622
281100refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014072820140622
281100refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014072820140622
281170refgcc -funroll-loops -O -fomit-frame-pointer2014072820140622
281470refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014072820140622
281470refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014072820140622
286375refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014072820140622
286375refgcc -m64 -march=k8 -O -fomit-frame-pointer2014072820140622
286375refgcc -march=k8 -O -fomit-frame-pointer2014072820140622
286380refgcc -march=nocona -O -fomit-frame-pointer2014072820140622
286385refgcc -march=barcelona -O -fomit-frame-pointer2014072820140622
286390refgcc -m64 -march=nocona -O -fomit-frame-pointer2014072820140622
289615refgcc -fno-schedule-insns -O -fomit-frame-pointer2014072820140622
289615refgcc -m64 -O -fomit-frame-pointer2014072820140622
289620refgcc -O -fomit-frame-pointer2014072820140622
289620refgcc -m64 -march=core2 -O -fomit-frame-pointer2014072820140622
289620refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014072820140622
289625refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014072820140622
289625refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014072820140622
289630refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014072820140622
540455refcc2014072820140622
540475refgcc2014072820140622
540475refgcc -funroll-loops2014072820140622

Compiler output

Implementation: crypto_aead/aesjambuv1/aesni
Compiler: cc
encrypt.c: encrypt.c: In function 'aes_enc_128':
encrypt.c: encrypt.c:38:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:41:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:43:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:45:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:47:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:49:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:51:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:53:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:55:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:57:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c: In function 'crypto_aead_aesjambuv1_aesni_encrypt':
encrypt.c: encrypt.c:277:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:278:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:279:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:280:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:281:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:282:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:283:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 91, namely:
CompilerImplementations
cc aesni
gcc aesni
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 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=native -mtune=native -O2 -fomit-frame-pointer aesni
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer aesni
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer aesni
gcc -m64 -march=native -mtune=native -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/aesjambuv1/aesni
Compiler: clang -O3 -fomit-frame-pointer
encrypt.c: encrypt.c:38:11: warning: implicit declaration of function '_mm_aesenc_si128' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: *state = _mm_aesenc_si128(*state, key[1]);
encrypt.c: ^
encrypt.c: encrypt.c:38:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[1]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:41:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[2]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:43:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[3]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:45:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[4]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:47:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[5]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:49:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[6]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:51:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[7]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:53:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer aesni

Compiler output

Implementation: crypto_aead/aesjambuv1/ref
Compiler: clang -O3 -fomit-frame-pointer
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aesjambuv1/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
aes.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
aes.c: clang: warning: argument unused during compilation: '-mavx2'
aes.c: clang: warning: argument unused during compilation: '-mpclmul'
encrypt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-mpclmul'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aesjambuv1/aesni
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-mpclmul'
encrypt.c: In file included from encrypt.c:3:
encrypt.c: In file included from /usr/include/clang/3.0/include/immintrin.h:52:
encrypt.c: In file included from /usr/include/clang/3.0/include/wmmintrin.h:31:
encrypt.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
encrypt.c: #error "SSE4.1 instruction set not enabled"
encrypt.c: ^
encrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer aesni

Compiler output

Implementation: crypto_aead/aesjambuv1/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
aes.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
aes.c: clang: warning: argument unused during compilation: '-mavx2'
aes.c: clang: warning: argument unused during compilation: '-mpclmul'
aes.c: clang: warning: argument unused during compilation: '-fpolly'
aes.c: clang: warning: argument unused during compilation: '-fvectorize'
aes.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
aes.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
encrypt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-mpclmul'
encrypt.c: clang: warning: argument unused during compilation: '-fpolly'
encrypt.c: clang: warning: argument unused during compilation: '-fvectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aesjambuv1/aesni
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-mpclmul'
encrypt.c: clang: warning: argument unused during compilation: '-fpolly'
encrypt.c: clang: warning: argument unused during compilation: '-fvectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
encrypt.c: In file included from encrypt.c:3:
encrypt.c: In file included from /usr/include/clang/3.0/include/immintrin.h:52:
encrypt.c: In file included from /usr/include/clang/3.0/include/wmmintrin.h:31:
encrypt.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
encrypt.c: #error "SSE4.1 instruction set not enabled"
encrypt.c: ^
encrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer aesni

Compiler output

Implementation: crypto_aead/aesjambuv1/ref
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
aes.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aesjambuv1/aesni
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: encrypt.c:38:11: warning: implicit declaration of function '_mm_aesenc_si128' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: *state = _mm_aesenc_si128(*state, key[1]);
encrypt.c: ^
encrypt.c: encrypt.c:38:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[1]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:41:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[2]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:43:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[3]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:45:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[4]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:47:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[5]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:49:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[6]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:51:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[7]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer aesni

Compiler output

Implementation: crypto_aead/aesjambuv1/ref
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
aes.c: clang: warning: argument unused during compilation: '-mavx2'
aes.c: clang: warning: argument unused during compilation: '-fpolly'
aes.c: clang: warning: argument unused during compilation: '-fvectorize'
aes.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
aes.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-fpolly'
encrypt.c: clang: warning: argument unused during compilation: '-fvectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aesjambuv1/aesni
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-fpolly'
encrypt.c: clang: warning: argument unused during compilation: '-fvectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
encrypt.c: encrypt.c:38:11: warning: implicit declaration of function '_mm_aesenc_si128' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: *state = _mm_aesenc_si128(*state, key[1]);
encrypt.c: ^
encrypt.c: encrypt.c:38:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[1]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:41:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[2]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:43:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[3]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:45:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[4]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:47:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[5]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:49:9: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: *state = _mm_aesenc_si128(*state, key[6]);
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer aesni

Compiler output

Implementation: crypto_aead/aesjambuv1/aesni
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: encrypt.c: In function 'aes_enc_128':
encrypt.c: encrypt.c:38:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:41:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:43:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:45:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:47:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:49:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:51:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:53:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:55:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:57:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c: In function 'crypto_aead_aesjambuv1_aesni_encrypt':
encrypt.c: encrypt.c:277:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:278:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:279:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:280:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:281:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:282:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:283:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: ...
encrypt.c: encrypt.c: In function 'aes_enc_128':
encrypt.c: encrypt.c:38:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:41:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:43:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:45:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:47:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:49:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:51:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:53:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:55:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:57:9: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c: In function 'crypto_aead_aesjambuv1_aesni_encrypt':
encrypt.c: encrypt.c:277:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:278:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:279:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:280:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:281:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:282:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
encrypt.c: encrypt.c:23:9: note: expected '__m128i' but argument is of type 'int'
encrypt.c: encrypt.c:283:2: error: incompatible type for argument 2 of 'aes128_keyexpand'
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