Implementation notes: amd64, glyme, crypto_aead/aeadaes128ocbtaglen128v1

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_aead
Primitive: aeadaes128ocbtaglen128v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
9576optgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020220170105
9708optgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020220170105
10768dolbeau/aesenc-intgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020220170105
10972optclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020220170105
10972optclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
11768dolbeau/aesenc-intgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020220170105
11792dolbeau/aesenc-intgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020220170105
12216dolbeau/aesenc-intgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020220170105
12216dolbeau/aesenc-intgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020220170105
12568dolbeau/aesenc-intgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020220170105
12568dolbeau/aesenc-intgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020220170105
12892dolbeau/aesenc-intclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020220170105
12892dolbeau/aesenc-intclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
15568optgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020220170105
15572optgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020220170105
16024optgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020220170105
16160optgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020220170105
17972optgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020220170105
18016optgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020220170105
214632optgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020220170105
214856optgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020220170105
215180optgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020220170105
215208optgcc -march=barcelona -O2 -fomit-frame-pointer2017020220170105
215264optgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020220170105
215264optgcc -march=k8 -O3 -fomit-frame-pointer2017020220170105
215288optgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020220170105
215360optgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020220170105
215364optgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020220170105
215432optgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020220170105
215492optgcc -funroll-loops -O3 -fomit-frame-pointer2017020220170105
215524optclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
215544optgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020220170105
215548optgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020220170105
215556optgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020220170105
215768optgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020220170105
215792optgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020220170105
215820optgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020220170105
215872optgcc -march=nocona -O3 -fomit-frame-pointer2017020220170105
215932optgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020220170105
215932optgcc -march=barcelona -O3 -fomit-frame-pointer2017020220170105
215936optgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020220170105
215936optgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020220170105
215980optgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020220170105
215988optclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
216044optgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020220170105
216048optgcc -funroll-loops -O2 -fomit-frame-pointer2017020220170105
216056optgcc -m64 -march=k8 -O -fomit-frame-pointer2017020220170105
216132optgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020220170105
216224optgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020220170105
216260optgcc -march=nocona -O2 -fomit-frame-pointer2017020220170105
216312optgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020220170105
216332optgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020220170105
216356optgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020220170105
216500optgcc -funroll-loops -O -fomit-frame-pointer2017020220170105
216516optgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020220170105
216536optgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020220170105
216780optgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020220170105
216788optgcc -O -fomit-frame-pointer2017020220170105
216952optgcc -m64 -O3 -fomit-frame-pointer2017020220170105
217000optclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
217100optgcc -m64 -march=nocona -O -fomit-frame-pointer2017020220170105
217156optgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020220170105
217160optgcc -march=k8 -O -fomit-frame-pointer2017020220170105
217324optgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020220170105
217336optgcc -m64 -O -fomit-frame-pointer2017020220170105
217436optgcc -O2 -fomit-frame-pointer2017020220170105
217444optgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020220170105
217452optgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020220170105
217464optgcc -march=barcelona -O -fomit-frame-pointer2017020220170105
217476optgcc -m64 -O2 -fomit-frame-pointer2017020220170105
217536optgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020220170105
217580optclang -O3 -fomit-frame-pointer -Qunused-arguments2017020220170105
217632optgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020220170105
217676optgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020220170105
217804optgcc -funroll-loops -Os -fomit-frame-pointer2017020220170105
217828optgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020220170105
217844optgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020220170105
217944optgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020220170105
217956optgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020220170105
218024optgcc -march=k8 -Os -fomit-frame-pointer2017020220170105
218076optgcc -O3 -fomit-frame-pointer2017020220170105
218080optgcc -march=k8 -O2 -fomit-frame-pointer2017020220170105
218104optgcc -Os -fomit-frame-pointer2017020220170105
218116optgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020220170105
218132optgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020220170105
218188optgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020220170105
218328optgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020220170105
218332optgcc -m64 -march=core2 -O -fomit-frame-pointer2017020220170105
218560optgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020220170105
218560optgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020220170105
218580optgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020220170105
218812optgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020220170105
218972optgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020220170105
219144optgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020220170105
219208optgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020220170105
219328optgcc -fno-schedule-insns -O -fomit-frame-pointer2017020220170105
219536optgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020220170105
219684optgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020220170105
219720optgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020220170105
219868optgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020220170105
219936optgcc -march=nocona -O -fomit-frame-pointer2017020220170105
220088optgcc -m64 -Os -fomit-frame-pointer2017020220170105
220208optgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020220170105
220220optgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020220170105
220276optgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020220170105
220348optgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020220170105
220560optgcc -march=nocona -Os -fomit-frame-pointer2017020220170105
220748optgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020220170105
220876optgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020220170105
221668optgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020220170105
221992optgcc -march=barcelona -Os -fomit-frame-pointer2017020220170105
233368optgcc -funroll-loops2017020220170105
235524optgcc2017020220170105
239176optcc2017020220170105
281188refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020220170105
282236refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
282316refclang -O3 -fomit-frame-pointer -Qunused-arguments2017020220170105
283464refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
283988refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
284696refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020220170105
284912refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020220170105
284940refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020220170105
285380refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020220170105
285396refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020220170105
285900refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020220170105
289896refgcc -m64 -O3 -fomit-frame-pointer2017020220170105
290380refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020220170105
290756refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020220170105
291732refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020220170105
291788refgcc -O3 -fomit-frame-pointer2017020220170105
291792refgcc -march=nocona -O3 -fomit-frame-pointer2017020220170105
292024refgcc -funroll-loops -O3 -fomit-frame-pointer2017020220170105
292132refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020220170105
292500refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020220170105
292684refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020220170105
294064refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020220170105
295748refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020220170105
296128refgcc -march=k8 -O3 -fomit-frame-pointer2017020220170105
296696refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020220170105
297152refgcc -march=barcelona -O3 -fomit-frame-pointer2017020220170105
297156refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020220170105
297580refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020220170105
298364refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020220170105
301396refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020220170105
315860refgcc -funroll-loops -O -fomit-frame-pointer2017020220170105
316696refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020220170105
316824refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020220170105
316980refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020220170105
317180refgcc -funroll-loops -O2 -fomit-frame-pointer2017020220170105
317340refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020220170105
317340refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020220170105
318072refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020220170105
318116refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020220170105
318192refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020220170105
318216refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020220170105
318476refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020220170105
318784refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020220170105
319580refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020220170105
319680refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020220170105
319788refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020220170105
320528refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020220170105
320848refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020220170105
331924refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020220170105
332144refgcc -march=k8 -O2 -fomit-frame-pointer2017020220170105
333164refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020220170105
333212refgcc -march=barcelona -O2 -fomit-frame-pointer2017020220170105
338808refgcc -march=barcelona -O -fomit-frame-pointer2017020220170105
340556refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020220170105
340724refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020220170105
340912refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020220170105
342020refgcc -m64 -O -fomit-frame-pointer2017020220170105
342040refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020220170105
342056refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020220170105
342404refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020220170105
342972refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020220170105
343060refgcc -O -fomit-frame-pointer2017020220170105
343232refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020220170105
345432refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020220170105
347604refgcc -march=nocona -O2 -fomit-frame-pointer2017020220170105
348252refgcc -m64 -O2 -fomit-frame-pointer2017020220170105
349352refgcc -O2 -fomit-frame-pointer2017020220170105
349488refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020220170105
349516refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020220170105
349572refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020220170105
352104refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020220170105
352356refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020220170105
352420refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020220170105
353396refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020220170105
358280refgcc -march=k8 -O -fomit-frame-pointer2017020220170105
358560refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020220170105
362592refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020220170105
363072refgcc -march=nocona -O -fomit-frame-pointer2017020220170105
366460refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020220170105
366552refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020220170105
366636refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020220170105
367128refgcc -Os -fomit-frame-pointer2017020220170105
367320refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020220170105
367564refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020220170105
368156refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020220170105
368184refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020220170105
368216refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020220170105
368268refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020220170105
368412refgcc -march=nocona -Os -fomit-frame-pointer2017020220170105
368516refgcc -march=barcelona -Os -fomit-frame-pointer2017020220170105
368664refgcc -funroll-loops -Os -fomit-frame-pointer2017020220170105
368820refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020220170105
369076refgcc -m64 -Os -fomit-frame-pointer2017020220170105
369160refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020220170105
369216refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020220170105
369376refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020220170105
369748refgcc -march=k8 -Os -fomit-frame-pointer2017020220170105
369912refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020220170105
370152refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020220170105
370196refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020220170105
370532refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020220170105
370716refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020220170105
743540refgcc2017020220170105
748856refcc2017020220170105
751996refgcc -funroll-loops2017020220170105

Test failure

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/dolbeau/aesenc-int
Compiler: gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/dolbeau/aesenc-int
Compiler: cc
encrypt.c: encrypt.c:74:34: warning: incompatible pointer types passing 'const unsigned int *' to parameter of type 'const __m128i *' [-Wincompatible-pointer-types]
encrypt.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: /usr/bin/../lib/clang/3.8.0/include/emmintrin.h:1112:32: note: passing argument to parameter '__p' here
encrypt.c: _mm_loadu_si128(__m128i const *__p)
encrypt.c: ^
encrypt.c: encrypt.c:91:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: BLOCK1(0x01);
encrypt.c: ^
encrypt.c: encrypt.c:82:11: note: expanded from macro 'BLOCK1'
encrypt.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
encrypt.c: ^
encrypt.c: /usr/bin/../lib/clang/3.8.0/include/__wmmintrin_aes.h:62:12: note: expanded from macro '_mm_aeskeygenassist_si128'
encrypt.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
encrypt.c: ^
encrypt.c: encrypt.c:92:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: BLOCK1(0x02);
encrypt.c: ^
encrypt.c: encrypt.c:82:11: note: expanded from macro 'BLOCK1'
encrypt.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
encrypt.c: ^
encrypt.c: /usr/bin/../lib/clang/3.8.0/include/__wmmintrin_aes.h:62:12: note: expanded from macro '_mm_aeskeygenassist_si128'
encrypt.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
encrypt.c: ^
encrypt.c: encrypt.c:93:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
cc dolbeau/aesenc-int
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/aesenc-int
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/aesenc-int
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/aesenc-int
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/dolbeau/aesenc-int
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:74:34: warning: incompatible pointer types passing 'const unsigned int *' to parameter of type 'const __m128i *' [-Wincompatible-pointer-types]
encrypt.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: /usr/bin/../lib/clang/3.8.0/include/emmintrin.h:1112:32: note: passing argument to parameter '__p' here
encrypt.c: _mm_loadu_si128(__m128i const *__p)
encrypt.c: ^
encrypt.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments dolbeau/aesenc-int
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/dolbeau/aesenc-int
Compiler: gcc
encrypt.c: encrypt.c: In function 'aes128ni_setkey_encrypt':
encrypt.c: encrypt.c:74:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
encrypt.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
encrypt.c: ^
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/xmmintrin.h:1249:0,
encrypt.c: from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:29,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/emmintrin.h:696:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
encrypt.c: _mm_loadu_si128 (__m128i const *__P)
encrypt.c: ^~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:45:
encrypt.c: encrypt.c: In function 'aes128ni_setkey_e2d':
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/wmmintrin.h:77:1: error: inlining failed in call to always_inline '_mm_aesimc_si128': target specific option mismatch
encrypt.c: _mm_aesimc_si128 (__m128i __X)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:120:16: note: called from here
encrypt.c: dkeys[i] = _mm_aesimc_si128(ekeys[10-i]);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc dolbeau/aesenc-int
gcc -funroll-loops dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/dolbeau/aesenc-int
Compiler: gcc -O2 -fomit-frame-pointer
encrypt.c: encrypt.c: In function 'aes128ni_setkey_encrypt':
encrypt.c: encrypt.c:74:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
encrypt.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
encrypt.c: ^
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/xmmintrin.h:1249:0,
encrypt.c: from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:29,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/emmintrin.h:696:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
encrypt.c: _mm_loadu_si128 (__m128i const *__P)
encrypt.c: ^~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:82:9: note: called from here
encrypt.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:100:3: note: in expansion of macro 'BLOCK1'
encrypt.c: BLOCK1(0x36);
encrypt.c: ^~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 84, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/dolbeau/aesenc-int
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: encrypt.c: In function 'aes128ni_setkey_encrypt':
encrypt.c: encrypt.c:74:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
encrypt.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
encrypt.c: ^
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/xmmintrin.h:1249:0,
encrypt.c: from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:29,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/emmintrin.h:696:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
encrypt.c: _mm_loadu_si128 (__m128i const *__P)
encrypt.c: ^~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:82:9: note: called from here
encrypt.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:100:3: note: in expansion of macro 'BLOCK1'
encrypt.c: BLOCK1(0x36);
encrypt.c: ^~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ...
encrypt.c: encrypt.c: In function 'aes128ni_setkey_encrypt':
encrypt.c: encrypt.c:74:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
encrypt.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
encrypt.c: ^
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/xmmintrin.h:1249:0,
encrypt.c: from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:29,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/emmintrin.h:696:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
encrypt.c: _mm_loadu_si128 (__m128i const *__P)
encrypt.c: ^~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:82:9: note: called from here
encrypt.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:100:3: note: in expansion of macro 'BLOCK1'
encrypt.c: BLOCK1(0x36);
encrypt.c: ^~~~~~
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:39:0,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
encrypt.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
encrypt.c: ...

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

Compiler output

Implementation: crypto_aead/aeadaes128ocbtaglen128v1/dolbeau/aesenc-int
Compiler: gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer
encrypt.c: encrypt.c: In function 'aes128ni_setkey_encrypt':
encrypt.c: encrypt.c:74:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
encrypt.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
encrypt.c: ^
encrypt.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/xmmintrin.h:1249:0,
encrypt.c: from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/immintrin.h:29,
encrypt.c: from encrypt.c:45:
encrypt.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/emmintrin.h:696:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
encrypt.c: _mm_loadu_si128 (__m128i const *__P)
encrypt.c: ^~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/aesenc-int
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/aesenc-int
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/aesenc-int
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/aesenc-int