Implementation notes: amd64, h5nano, crypto_aead/aes128poetv1aes4

Computer: h5nano
Architecture: amd64
CPU ID: CentaurHauls-000006f8-afc9fbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: aes128poetv1aes4
TimeImplementationCompilerBenchmark dateSUPERCOP version
14159895refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014071220140622
14159980refgcc -funroll-loops -O3 -fomit-frame-pointer2014071220140622
14280055refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014071220140622
14309675refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014071220140622
14398765refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014071220140622
14693975refgcc -O3 -fomit-frame-pointer2014071220140622
14694115refgcc -m64 -O3 -fomit-frame-pointer2014071220140622
14702430refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014071220140622
14736575refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014071220140622
14767040refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014071220140622
14808015refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014071220140622
14808230refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014071220140622
14810590refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014071220140622
14810745refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014071220140622
15349015refgcc -march=nocona -O3 -fomit-frame-pointer2014071220140622
16387870refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014071220140622
16463340refgcc -march=barcelona -O3 -fomit-frame-pointer2014071220140622
16479500refgcc -march=k8 -O3 -fomit-frame-pointer2014071220140622
17009120refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014071220140622
17010105refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014071220140622
17016665refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014071220140622
17022210refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014071220140622
17025595refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014071220140622
26558785refgcc -funroll-loops -O2 -fomit-frame-pointer2014071220140622
26559085refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014071220140622
26559100refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014071220140622
26567860refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014071220140622
26568210refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014071220140622
28190675refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014071220140622
28190945refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014071220140622
29017080refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101620141014
29017450refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014071220140622
29017765refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101620141014
29018335refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014071220140622
29067685refclang -O3 -fomit-frame-pointer2014071220140622
29167900refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014071220140622
29173770refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014071220140622
29551165refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014071220140622
29559420refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014071220140622
30390345refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014071220140622
30394545refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014071220140622
30394585refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014071220140622
30396010refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014071220140622
30420820refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014071220140622
30424880refgcc -funroll-loops -O -fomit-frame-pointer2014071220140622
30429165refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014071220140622
35277535refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014071220140622
35278560refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014071220140622
35278575refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014071220140622
35278650refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014071220140622
35279145refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014071220140622
35350500refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014071220140622
35350790refgcc -march=barcelona -O2 -fomit-frame-pointer2014071220140622
35355250refgcc -m64 -O2 -fomit-frame-pointer2014071220140622
35355735refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014071220140622
35355945refgcc -O2 -fomit-frame-pointer2014071220140622
35360605refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014071220140622
35360855refgcc -march=k8 -O2 -fomit-frame-pointer2014071220140622
35383475refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014071220140622
35383785refgcc -march=barcelona -Os -fomit-frame-pointer2014071220140622
35387350refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014071220140622
35387415refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014071220140622
35395945refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014071220140622
35396060refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014071220140622
35396145refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014071220140622
35396160refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014071220140622
35398640refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014071220140622
35425700refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014071220140622
35425800refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014071220140622
35430415refgcc -march=nocona -Os -fomit-frame-pointer2014071220140622
35430545refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014071220140622
35472580refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014071220140622
35472890refgcc -march=nocona -O2 -fomit-frame-pointer2014071220140622
35534435refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014071220140622
35534470refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014071220140622
35534530refgcc -m64 -Os -fomit-frame-pointer2014071220140622
35534605refgcc -Os -fomit-frame-pointer2014071220140622
35536130refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014071220140622
35536395refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014071220140622
35536530refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014071220140622
35536680refgcc -funroll-loops -Os -fomit-frame-pointer2014071220140622
35536755refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014071220140622
35541315refgcc -march=k8 -Os -fomit-frame-pointer2014071220140622
35916860refgcc -m64 -march=nocona -O -fomit-frame-pointer2014071220140622
35917115refgcc -march=nocona -O -fomit-frame-pointer2014071220140622
36030640refgcc -m64 -march=k8 -O -fomit-frame-pointer2014071220140622
36030830refgcc -march=k8 -O -fomit-frame-pointer2014071220140622
36034560refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014071220140622
36034945refgcc -march=barcelona -O -fomit-frame-pointer2014071220140622
36036375refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014071220140622
36036410refgcc -fno-schedule-insns -O -fomit-frame-pointer2014071220140622
36036555refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014071220140622
36036630refgcc -m64 -O -fomit-frame-pointer2014071220140622
36036730refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014071220140622
36037095refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014071220140622
36037220refgcc -O -fomit-frame-pointer2014071220140622
36038550refgcc -m64 -march=core2 -O -fomit-frame-pointer2014071220140622
109794745refcc2014071220140622
109796050refgcc -funroll-loops2014071220140622
109797775refgcc2014071220140622

Compiler output

Implementation: crypto_aead/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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/aes128poetv1aes4/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