Implementation notes: amd64, h5nano, crypto_aead/aes128poetv1aes128

Computer: h5nano
Architecture: amd64
CPU ID: CentaurHauls-000006f8-afc9fbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: aes128poetv1aes128
TimeImplementationCompilerBenchmark dateSUPERCOP version
14223180refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014071220140622
14228910refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014071220140622
14339905refgcc -funroll-loops -O3 -fomit-frame-pointer2014071220140622
14465675refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014071220140622
14465840refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014071220140622
14760310refgcc -m64 -O3 -fomit-frame-pointer2014071220140622
14761900refgcc -O3 -fomit-frame-pointer2014071220140622
14762175refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014071220140622
14807775refgcc -march=nocona -O3 -fomit-frame-pointer2014071220140622
14807950refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014071220140622
14881570refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014071220140622
14884260refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014071220140622
14884270refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014071220140622
14884365refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014071220140622
15096460refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014071220140622
16454315refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014071220140622
16454355refgcc -march=barcelona -O3 -fomit-frame-pointer2014071220140622
16546225refgcc -march=k8 -O3 -fomit-frame-pointer2014071220140622
16546270refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014071220140622
17075810refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014071220140622
17084120refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014071220140622
17087550refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014071220140622
17627880refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014071220140622
26623450refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014071220140622
26631385refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014071220140622
26631705refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014071220140622
26631995refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014071220140622
26632780refgcc -funroll-loops -O2 -fomit-frame-pointer2014071220140622
28245000refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014071220140622
28254590refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014071220140622
29092100refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014071220140622
29092185refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014071220140622
29092800refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101620141014
29095940refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101620141014
29142530refclang -O3 -fomit-frame-pointer2014071220140622
29235930refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014071220140622
29237945refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014071220140622
29627275refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014071220140622
29633165refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014071220140622
30465345refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014071220140622
30469805refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014071220140622
30469830refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014071220140622
30480685refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014071220140622
30493155refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014071220140622
30494205refgcc -funroll-loops -O -fomit-frame-pointer2014071220140622
30502265refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014071220140622
35353325refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014071220140622
35353675refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014071220140622
35353695refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014071220140622
35353785refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014071220140622
35353885refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014071220140622
35416670refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014071220140622
35416775refgcc -march=barcelona -O2 -fomit-frame-pointer2014071220140622
35420275refgcc -O2 -fomit-frame-pointer2014071220140622
35420560refgcc -m64 -O2 -fomit-frame-pointer2014071220140622
35420720refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014071220140622
35424715refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014071220140622
35424730refgcc -march=k8 -O2 -fomit-frame-pointer2014071220140622
35454600refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014071220140622
35454750refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014071220140622
35455375refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014071220140622
35456120refgcc -march=barcelona -Os -fomit-frame-pointer2014071220140622
35472405refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014071220140622
35472985refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014071220140622
35473010refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014071220140622
35473165refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014071220140622
35473425refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014071220140622
35499750refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014071220140622
35500210refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014071220140622
35502820refgcc -march=nocona -Os -fomit-frame-pointer2014071220140622
35503015refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014071220140622
35542935refgcc -march=nocona -O2 -fomit-frame-pointer2014071220140622
35542975refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014071220140622
35603610refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014071220140622
35603690refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014071220140622
35603730refgcc -funroll-loops -Os -fomit-frame-pointer2014071220140622
35603750refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014071220140622
35603850refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014071220140622
35604000refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014071220140622
35604035refgcc -march=k8 -Os -fomit-frame-pointer2014071220140622
35604165refgcc -Os -fomit-frame-pointer2014071220140622
35604205refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014071220140622
35604375refgcc -m64 -Os -fomit-frame-pointer2014071220140622
35992880refgcc -march=nocona -O -fomit-frame-pointer2014071220140622
35993515refgcc -m64 -march=nocona -O -fomit-frame-pointer2014071220140622
36106485refgcc -march=k8 -O -fomit-frame-pointer2014071220140622
36107345refgcc -m64 -march=k8 -O -fomit-frame-pointer2014071220140622
36111150refgcc -march=barcelona -O -fomit-frame-pointer2014071220140622
36111260refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014071220140622
36112435refgcc -m64 -march=core2 -O -fomit-frame-pointer2014071220140622
36112560refgcc -O -fomit-frame-pointer2014071220140622
36112670refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014071220140622
36112900refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014071220140622
36112950refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014071220140622
36113160refgcc -m64 -O -fomit-frame-pointer2014071220140622
36113205refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014071220140622
36114660refgcc -fno-schedule-insns -O -fomit-frame-pointer2014071220140622
109934770refgcc -funroll-loops2014071220140622
109935510refcc2014071220140622
109939735refgcc2014071220140622

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: cc
aes-ni.c: In file included from aes-ni.h:4:0,
aes-ni.c: from aes-ni.c:1:
aes-ni.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
aes-ni.c: In file included from aes-ni.h:6:0,
aes-ni.c: from aes-ni.c:1:
aes-ni.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
aes-ni.c: aes-ni.c: In function 'AES_Key_Dec':
aes-ni.c: aes-ni.c:6:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:7:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:8:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:9:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:10:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:11:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:12:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:13:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:14:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c: In function 'AESNI_Key_Expansion':
aes-ni.c: aes-ni.c:39:10: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:42:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:45:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:48:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:51:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:54:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:57:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:60:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: ...

Number of similar (compiler,implementation) pairs: 75, namely:
CompilerImplementations
cc ni
gcc ni
gcc -O2 -fomit-frame-pointer ni
gcc -O3 -fomit-frame-pointer ni
gcc -O -fomit-frame-pointer ni
gcc -Os -fomit-frame-pointer ni
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ni
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ni
gcc -fno-schedule-insns -O -fomit-frame-pointer ni
gcc -fno-schedule-insns -Os -fomit-frame-pointer ni
gcc -funroll-loops ni
gcc -funroll-loops -O2 -fomit-frame-pointer ni
gcc -funroll-loops -O3 -fomit-frame-pointer ni
gcc -funroll-loops -O -fomit-frame-pointer ni
gcc -funroll-loops -Os -fomit-frame-pointer ni
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ni
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ni
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ni
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ni
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -O -fomit-frame-pointer ni
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ni
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ni
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ni
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ni
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ni
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ni
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ni
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ni
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ni
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ni
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ni
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ni
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ni
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ni
gcc -m64 -O2 -fomit-frame-pointer ni
gcc -m64 -O3 -fomit-frame-pointer ni
gcc -m64 -O -fomit-frame-pointer ni
gcc -m64 -Os -fomit-frame-pointer ni
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ni
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ni
gcc -m64 -march=core2 -O -fomit-frame-pointer ni
gcc -m64 -march=core2 -Os -fomit-frame-pointer ni
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ni
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ni
gcc -m64 -march=k8 -O -fomit-frame-pointer ni
gcc -m64 -march=k8 -Os -fomit-frame-pointer ni
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ni
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ni
gcc -m64 -march=nocona -O -fomit-frame-pointer ni
gcc -m64 -march=nocona -Os -fomit-frame-pointer ni
gcc -march=barcelona -O2 -fomit-frame-pointer ni
gcc -march=barcelona -O3 -fomit-frame-pointer ni
gcc -march=barcelona -O -fomit-frame-pointer ni
gcc -march=barcelona -Os -fomit-frame-pointer ni
gcc -march=k8 -O2 -fomit-frame-pointer ni
gcc -march=k8 -O3 -fomit-frame-pointer ni
gcc -march=k8 -O -fomit-frame-pointer ni
gcc -march=k8 -Os -fomit-frame-pointer ni
gcc -march=nocona -O2 -fomit-frame-pointer ni
gcc -march=nocona -O3 -fomit-frame-pointer ni
gcc -march=nocona -O -fomit-frame-pointer ni
gcc -march=nocona -Os -fomit-frame-pointer ni

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: clang -O3 -fomit-frame-pointer
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:4:
aes-ni.c: /usr/include/clang/3.0/include/wmmintrin.h:28:3: error: #error "AES instructions not enabled"
aes-ni.c: # error "AES instructions not enabled"
aes-ni.c: ^
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:6:
aes-ni.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
aes-ni.c: #error "SSE4.1 instruction set not enabled"
aes-ni.c: ^
aes-ni.c: aes-ni.c:6:15: warning: implicit declaration of function '_mm_aesimc_si128' is invalid in C99 [-Wimplicit-function-declaration]
aes-ni.c: dec_key[9] = _mm_aesimc_si128(enc_key[1]);
aes-ni.c: ^
aes-ni.c: aes-ni.c:6:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.c: dec_key[9] = _mm_aesimc_si128(enc_key[1]);
aes-ni.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes-ni.c: aes-ni.c:7:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.c: dec_key[8] = _mm_aesimc_si128(enc_key[2]);
aes-ni.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes-ni.c: aes-ni.c:8:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.c: dec_key[7] = _mm_aesimc_si128(enc_key[3]);
aes-ni.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes-ni.c: aes-ni.c:9:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.c: dec_key[6] = _mm_aesimc_si128(enc_key[4]);
aes-ni.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes-ni.c: ...

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

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/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/aes128poetv1aes128/ni
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
aes-ni.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
aes-ni.c: clang: warning: argument unused during compilation: '-mavx2'
aes-ni.c: clang: warning: argument unused during compilation: '-mpclmul'
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:4:
aes-ni.c: In file included from /usr/include/clang/3.0/include/wmmintrin.h:31:
aes-ni.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
aes-ni.c: #error "SSE4.1 instruction set not enabled"
aes-ni.c: ^
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:4:
aes-ni.c: /usr/include/clang/3.0/include/wmmintrin.h:33:19: error: unknown type name '__m128i'
aes-ni.c: static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
aes-ni.c: ^
aes-ni.c: /usr/include/clang/3.0/include/wmmintrin.h:33:27: error: expected identifier or '('
aes-ni.c: static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
aes-ni.c: ^
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:5:
aes-ni.c: In file included from /usr/include/clang/3.0/include/emmintrin.h:31:
aes-ni.c: In file included from /usr/include/clang/3.0/include/xmmintrin.h:31:
aes-ni.c: /usr/include/clang/3.0/include/mmintrin.h:43:19: error: unknown type name '__m64'
aes-ni.c: static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
aes-ni.c: ^
aes-ni.c: /usr/include/clang/3.0/include/mmintrin.h:43:25: error: expected identifier or '('
aes-ni.c: ...

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

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/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'
poet.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
poet.c: clang: warning: argument unused during compilation: '-mavx2'
poet.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/aes128poetv1aes128/ni
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-ni.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
aes-ni.c: clang: warning: argument unused during compilation: '-mavx2'
aes-ni.c: clang: warning: argument unused during compilation: '-mpclmul'
aes-ni.c: clang: warning: argument unused during compilation: '-fpolly'
aes-ni.c: clang: warning: argument unused during compilation: '-fvectorize'
aes-ni.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
aes-ni.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:4:
aes-ni.c: In file included from /usr/include/clang/3.0/include/wmmintrin.h:31:
aes-ni.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
aes-ni.c: #error "SSE4.1 instruction set not enabled"
aes-ni.c: ^
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:4:
aes-ni.c: /usr/include/clang/3.0/include/wmmintrin.h:33:19: error: unknown type name '__m128i'
aes-ni.c: static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
aes-ni.c: ^
aes-ni.c: /usr/include/clang/3.0/include/wmmintrin.h:33:27: error: expected identifier or '('
aes-ni.c: static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
aes-ni.c: ^
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:5:
aes-ni.c: In file included from /usr/include/clang/3.0/include/emmintrin.h:31:
aes-ni.c: In file included from /usr/include/clang/3.0/include/xmmintrin.h:31:
aes-ni.c: ...

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 ni

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/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'
poet.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
poet.c: clang: warning: argument unused during compilation: '-mavx2'
poet.c: clang: warning: argument unused during compilation: '-mpclmul'
poet.c: clang: warning: argument unused during compilation: '-fpolly'
poet.c: clang: warning: argument unused during compilation: '-fvectorize'
poet.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
poet.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/aes128poetv1aes128/ni
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
aes-ni.c: clang: warning: argument unused during compilation: '-mavx2'
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:4:
aes-ni.c: /usr/include/clang/3.0/include/wmmintrin.h:28:3: error: #error "AES instructions not enabled"
aes-ni.c: # error "AES instructions not enabled"
aes-ni.c: ^
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:6:
aes-ni.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
aes-ni.c: #error "SSE4.1 instruction set not enabled"
aes-ni.c: ^
aes-ni.c: aes-ni.c:6:15: warning: implicit declaration of function '_mm_aesimc_si128' is invalid in C99 [-Wimplicit-function-declaration]
aes-ni.c: dec_key[9] = _mm_aesimc_si128(enc_key[1]);
aes-ni.c: ^
aes-ni.c: aes-ni.c:6:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.c: dec_key[9] = _mm_aesimc_si128(enc_key[1]);
aes-ni.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes-ni.c: aes-ni.c:7:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.c: dec_key[8] = _mm_aesimc_si128(enc_key[2]);
aes-ni.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes-ni.c: aes-ni.c:8:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.c: dec_key[7] = _mm_aesimc_si128(enc_key[3]);
aes-ni.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes-ni.c: aes-ni.c:9:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.c: dec_key[6] = _mm_aesimc_si128(enc_key[4]);
aes-ni.c: ...

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

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/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'
poet.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/aes128poetv1aes128/ni
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
aes-ni.c: clang: warning: argument unused during compilation: '-mavx2'
aes-ni.c: clang: warning: argument unused during compilation: '-fpolly'
aes-ni.c: clang: warning: argument unused during compilation: '-fvectorize'
aes-ni.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
aes-ni.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:4:
aes-ni.c: /usr/include/clang/3.0/include/wmmintrin.h:28:3: error: #error "AES instructions not enabled"
aes-ni.c: # error "AES instructions not enabled"
aes-ni.c: ^
aes-ni.c: In file included from aes-ni.c:1:
aes-ni.c: In file included from ./aes-ni.h:6:
aes-ni.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
aes-ni.c: #error "SSE4.1 instruction set not enabled"
aes-ni.c: ^
aes-ni.c: aes-ni.c:6:15: warning: implicit declaration of function '_mm_aesimc_si128' is invalid in C99 [-Wimplicit-function-declaration]
aes-ni.c: dec_key[9] = _mm_aesimc_si128(enc_key[1]);
aes-ni.c: ^
aes-ni.c: aes-ni.c:6:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.c: dec_key[9] = _mm_aesimc_si128(enc_key[1]);
aes-ni.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes-ni.c: aes-ni.c:7:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.c: dec_key[8] = _mm_aesimc_si128(enc_key[2]);
aes-ni.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes-ni.c: aes-ni.c:8:13: error: assigning to '__m128i' from incompatible type 'int';
aes-ni.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 ni

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/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'
poet.c: clang: warning: argument unused during compilation: '-mavx2'
poet.c: clang: warning: argument unused during compilation: '-fpolly'
poet.c: clang: warning: argument unused during compilation: '-fvectorize'
poet.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
poet.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/aes128poetv1aes128/ni
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
aes-ni.c: In file included from aes-ni.h:4:0,
aes-ni.c: from aes-ni.c:1:
aes-ni.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
aes-ni.c: In file included from aes-ni.h:6:0,
aes-ni.c: from aes-ni.c:1:
aes-ni.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
aes-ni.c: aes-ni.c: In function 'AES_Key_Dec':
aes-ni.c: aes-ni.c:6:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:7:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:8:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:9:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:10:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:11:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:12:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:13:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:14:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c: In function 'AESNI_Key_Expansion':
aes-ni.c: aes-ni.c:39:10: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:42:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:45:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:48:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:51:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:54:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:57:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:60:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: ...
aes-ni.c: In file included from aes-ni.h:4:0,
aes-ni.c: from aes-ni.c:1:
aes-ni.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
aes-ni.c: In file included from aes-ni.h:6:0,
aes-ni.c: from aes-ni.c:1:
aes-ni.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
aes-ni.c: aes-ni.c: In function 'AES_Key_Dec':
aes-ni.c: aes-ni.c:6:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:7:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:8:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:9:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:10:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:11:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:12:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:13:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:14:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c: In function 'AESNI_Key_Expansion':
aes-ni.c: aes-ni.c:39:10: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:42:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:45:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:48:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:51:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:54:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:57:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:60:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: ...

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

Compiler output

Implementation: crypto_aead/aes128poetv1aes128/ni
Compiler: gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer
aes-ni.c: In file included from aes-ni.h:4:0,
aes-ni.c: from aes-ni.c:1:
aes-ni.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
aes-ni.c: aes-ni.c: In function 'AES_Key_Dec':
aes-ni.c: aes-ni.c:6:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:7:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:8:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:9:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:10:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:11:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:12:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:13:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:14:13: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c: In function 'AESNI_Key_Expansion':
aes-ni.c: aes-ni.c:39:10: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:42:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:45:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:48:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:51:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:54:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:57:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:60:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:63:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c:66:11: error: incompatible types when assigning to type '__m128i' from type 'int'
aes-ni.c: aes-ni.c: In function 'AESNI_encrypt':
aes-ni.c: ...

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ni
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ni
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ni
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ni
gcc -m64 -march=corei7 -O -fomit-frame-pointer ni
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ni
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ni
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ni
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ni
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ni