Implementation notes: amd64, h4e350, crypto_aead/aes128poetv1aes4

Computer: h4e350
Architecture: amd64
CPU ID: AuthenticAMD-00500f10-178bfbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: aes128poetv1aes4
TimeImplementationCompilerBenchmark dateSUPERCOP version
17537685refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014061420140525
17692092refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014061420140525
18204444refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014061420140525
18205008refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014061420140525
18210768refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014061420140525
18211377refgcc -funroll-loops -O3 -fomit-frame-pointer2014061420140525
18211704refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014061420140525
18287106refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014061420140525
18287439refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014061420140525
18295443refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014061420140525
18295737refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014061420140525
18855015refgcc -march=k8 -O3 -fomit-frame-pointer2014061420140525
18909927refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014061420140525
18912417refgcc -march=barcelona -O3 -fomit-frame-pointer2014061420140525
18912912refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014061420140525
19468326refgcc -march=nocona -O3 -fomit-frame-pointer2014061420140525
19468623refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014061420140525
19540404refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014061420140525
19540536refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014061420140525
19577661refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014061420140525
19577718refgcc -O3 -fomit-frame-pointer2014061420140525
19577727refgcc -m64 -O3 -fomit-frame-pointer2014061420140525
20999535refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014061420140525
21000255refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014061420140525
21020082refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014061420140525
21021012refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014061420140525
21021060refgcc -funroll-loops -O2 -fomit-frame-pointer2014061420140525
22665852refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014061420140525
22666062refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014061420140525
22860363refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014061420140525
22861335refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014061420140525
23193771refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014061420140525
23194038refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014061420140525
23252784refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014061420140525
23252940refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014061420140525
24058986refgcc -funroll-loops -O -fomit-frame-pointer2014061420140525
24059178refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014061420140525
24059427refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014061420140525
25658103refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014072020140622
25658346refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014072020140622
25661127refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101620141014
25661235refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101620141014
25683372refclang -O3 -fomit-frame-pointer2014072020140622
28640202refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014061420140525
28640256refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014061420140525
28644048refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014061420140525
28645296refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014061420140525
28647525refgcc -march=barcelona -O2 -fomit-frame-pointer2014061420140525
28648341refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014061420140525
28690746refgcc -O2 -fomit-frame-pointer2014061420140525
28691232refgcc -m64 -O2 -fomit-frame-pointer2014061420140525
28691493refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014061420140525
28693074refgcc -march=k8 -O2 -fomit-frame-pointer2014061420140525
28693905refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014061420140525
28745871refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014061420140525
28844490refgcc -march=nocona -O2 -fomit-frame-pointer2014061420140525
28845225refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014061420140525
29159769refgcc -m64 -march=nocona -O -fomit-frame-pointer2014061420140525
29159820refgcc -march=nocona -O -fomit-frame-pointer2014061420140525
29360010refgcc -march=k8 -O -fomit-frame-pointer2014061420140525
29361717refgcc -m64 -march=k8 -O -fomit-frame-pointer2014061420140525
35944968refgcc -fno-schedule-insns -O -fomit-frame-pointer2014061420140525
35945070refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014061420140525
35945175refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014061420140525
35945703refgcc -m64 -O -fomit-frame-pointer2014061420140525
35945817refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014061420140525
35946378refgcc -m64 -march=core2 -O -fomit-frame-pointer2014061420140525
35946585refgcc -O -fomit-frame-pointer2014061420140525
41230314refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014061420140525
41235111refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014061420140525
41235861refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014061420140525
41236674refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014061420140525
41237118refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014061420140525
41239239refgcc -funroll-loops -Os -fomit-frame-pointer2014061420140525
41239776refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014061420140525
41240058refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014061420140525
41240856refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014061420140525
41435316refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014061420140525
41435985refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014061420140525
41436255refgcc -Os -fomit-frame-pointer2014061420140525
41436366refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014061420140525
41437401refgcc -march=k8 -Os -fomit-frame-pointer2014061420140525
41437977refgcc -m64 -Os -fomit-frame-pointer2014061420140525
41453028refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014061420140525
41459049refgcc -march=nocona -Os -fomit-frame-pointer2014061420140525
41460573refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014061420140525
41461551refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014061420140525
41462244refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014061420140525
41462253refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014061420140525
41462418refgcc -march=barcelona -Os -fomit-frame-pointer2014061420140525
41462499refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014061420140525
41765817refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014061420140525
41768610refgcc -march=barcelona -O -fomit-frame-pointer2014061420140525
41769195refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014061420140525
118530540refgcc2014061420140525
118532334refgcc -funroll-loops2014061420140525
118536303refcc2014061420140525

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: 79, 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=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
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: 9, namely:
CompilerImplementations
gcc -m64 -march=core2 -msse4.1 -O2 -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 -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 -O -fomit-frame-pointer ni
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ni