Implementation notes: amd64, hydra1, crypto_aead/tiaoxinv1

Computer: hydra1
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20161220
Operation: crypto_aead
Primitive: tiaoxinv1
TimeImplementationCompilerBenchmark dateSUPERCOP version
50473tablegcc -funroll-loops -m64 -Os -fomit-frame-pointer2016102320161009
50504tablegcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016102320161009
50514tablegcc -funroll-loops -Os -fomit-frame-pointer2016102320161009
50521tablegcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016102320161009
50542tablegcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016102320161009
50566tablegcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016102320161009
50642tablegcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016102320161009
52051tablegcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016102320161009
52107tablegcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016102320161009
52109tablegcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016102320161009
52112tablegcc -funroll-loops -O2 -fomit-frame-pointer2016102320161009
52152tablegcc -funroll-loops -O3 -fomit-frame-pointer2016102320161009
52154tablegcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016102320161009
52180tablegcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016102320161009
52223tablegcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016102320161009
52265tablegcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016102320161009
52285tablegcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016102320161009
52285tablegcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016102320161009
52293tablegcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016102320161009
52318tablegcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016102320161009
52331tablegcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016102320161009
54698tablegcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016102320161009
54715tablegcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016102320161009
54744tablegcc -m64 -march=corei7 -Os -fomit-frame-pointer2016102320161009
54854tablegcc -march=barcelona -Os -fomit-frame-pointer2016102320161009
54864tablegcc -m64 -march=core2 -Os -fomit-frame-pointer2016102320161009
54873tablegcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016102320161009
54886tablegcc -Os -fomit-frame-pointer2016102320161009
55016tablegcc -fno-schedule-insns -Os -fomit-frame-pointer2016102320161009
55047tablegcc -m64 -march=barcelona -Os -fomit-frame-pointer2016102320161009
55048tablegcc -m64 -Os -fomit-frame-pointer2016102320161009
55067tablegcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016102320161009
55069tablegcc -march=k8 -Os -fomit-frame-pointer2016102320161009
55125tablegcc -m64 -march=k8 -Os -fomit-frame-pointer2016102320161009
55128tablegcc -march=nocona -Os -fomit-frame-pointer2016102320161009
55157tablegcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016102320161009
55243tablegcc -m64 -march=nocona -Os -fomit-frame-pointer2016102320161009
55590tablegcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016102320161009
55605tablegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016102320161009
55687tablegcc -m64 -march=barcelona -O -fomit-frame-pointer2016102320161009
55688tablegcc -m64 -O -fomit-frame-pointer2016102320161009
55696tablegcc -march=barcelona -O -fomit-frame-pointer2016102320161009
55718tablegcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016102320161009
55720tablegcc -march=nocona -O -fomit-frame-pointer2016102320161009
55729tablegcc -O3 -fomit-frame-pointer2016102320161009
55731tablegcc -m64 -march=nocona -O -fomit-frame-pointer2016102320161009
55747tablegcc -march=k8 -O -fomit-frame-pointer2016102320161009
55754tablegcc -fno-schedule-insns -O2 -fomit-frame-pointer2016102320161009
55759tablegcc -O2 -fomit-frame-pointer2016102320161009
55765tablegcc -march=barcelona -O3 -fomit-frame-pointer2016102320161009
55789tablegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016102320161009
55795tablegcc -m64 -march=k8 -O -fomit-frame-pointer2016102320161009
55816tablegcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016102320161009
55835tablegcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016102320161009
55848tablegcc -m64 -march=k8 -O3 -fomit-frame-pointer2016102320161009
55857tablegcc -march=k8 -O3 -fomit-frame-pointer2016102320161009
55858tablegcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016102320161009
55880tablegcc -m64 -O3 -fomit-frame-pointer2016102320161009
55891tablegcc -fno-schedule-insns -O -fomit-frame-pointer2016102320161009
55894tablegcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016102320161009
55899tablegcc -m64 -march=core2 -O -fomit-frame-pointer2016102320161009
55907tablegcc -O -fomit-frame-pointer2016102320161009
55939tablegcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016102320161009
55941tablegcc -m64 -march=corei7 -O -fomit-frame-pointer2016102320161009
55962tablegcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016102320161009
55982tablegcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016102320161009
55987tablegcc -m64 -O2 -fomit-frame-pointer2016102320161009
55998tablegcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016102320161009
56008tablegcc -funroll-loops -O -fomit-frame-pointer2016102320161009
56011tablegcc -m64 -march=core2 -O2 -fomit-frame-pointer2016102320161009
56014tablegcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016102320161009
56024tablegcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016102320161009
56046tablegcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016102320161009
56090tablegcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016102320161009
56104tablegcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016102320161009
56115tablegcc -fno-schedule-insns -O3 -fomit-frame-pointer2016102320161009
56123tablegcc -funroll-loops -m64 -O -fomit-frame-pointer2016102320161009
56123tablegcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016102320161009
56131tablegcc -march=k8 -O2 -fomit-frame-pointer2016102320161009
56186tablegcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016102320161009
56218tablegcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016102320161009
56288tablegcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016102320161009
56307tablegcc -march=nocona -O3 -fomit-frame-pointer2016102320161009
56309tablegcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016102320161009
56314tablegcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016102320161009
56341tablegcc -march=barcelona -O2 -fomit-frame-pointer2016102320161009
56376tablegcc -m64 -march=nocona -O3 -fomit-frame-pointer2016102320161009
56427tablegcc -m64 -march=k8 -O2 -fomit-frame-pointer2016102320161009
56544tablegcc -march=nocona -O2 -fomit-frame-pointer2016102320161009
56565tablegcc -m64 -march=nocona -O2 -fomit-frame-pointer2016102320161009
57149tablegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016102320161009
57400tablegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016102320161009
87129tableclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016102320161009
87140tableclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102320161009
87694tableclang -O3 -fomit-frame-pointer -Qunused-arguments2016102320161009
88424tableclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102320161009
88532tableclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102320161009
88666tableclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102320161009
113565tablecc2016102320161009
113587tablegcc -funroll-loops2016102320161009
113733tablegcc2016102320161009
2504144refgcc -m64 -O3 -fomit-frame-pointer2016102320161009
2508526refgcc -O3 -fomit-frame-pointer2016102320161009
2523421refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016102320161009
2546645refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016102320161009
2546646refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016102320161009
2547737refgcc -march=barcelona -O3 -fomit-frame-pointer2016102320161009
2548543refgcc -march=k8 -O3 -fomit-frame-pointer2016102320161009
2552005refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016102320161009
2552768refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016102320161009
2575314refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016102320161009
2578023refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016102320161009
2606655refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016102320161009
2612421refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016102320161009
2614503refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016102320161009
2643119refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016102320161009
2652188refgcc -march=nocona -O3 -fomit-frame-pointer2016102320161009
2661131refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016102320161009
2668064refgcc -funroll-loops -O2 -fomit-frame-pointer2016102320161009
2668064refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016102320161009
2680589refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016102320161009
2697666refgcc -funroll-loops -O3 -fomit-frame-pointer2016102320161009
2719583refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016102320161009
2725615refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016102320161009
2726272refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016102320161009
2726939refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016102320161009
2738605refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016102320161009
2739565refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016102320161009
2753573refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016102320161009
2755138refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016102320161009
3527303refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016102320161009
3529635refgcc -funroll-loops -O -fomit-frame-pointer2016102320161009
3538173refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016102320161009
3636475refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016102320161009
3642147refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016102320161009
3709277refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016102320161009
3716619refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016102320161009
3768198refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016102320161009
3795355refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016102320161009
7145866refgcc -march=barcelona -O2 -fomit-frame-pointer2016102320161009
7179642refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016102320161009
7184338refgcc -O2 -fomit-frame-pointer2016102320161009
7210683refgcc -m64 -O2 -fomit-frame-pointer2016102320161009
7211570refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016102320161009
7218477refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016102320161009
7255958refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016102320161009
7286624refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016102320161009
7289385refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016102320161009
7290120refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016102320161009
7313459refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016102320161009
7314056refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016102320161009
7314071refgcc -march=nocona -O2 -fomit-frame-pointer2016102320161009
7752635refgcc -march=k8 -O2 -fomit-frame-pointer2016102320161009
7772784refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016102320161009
8363499refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016102320161009
8471366refgcc -fno-schedule-insns -O -fomit-frame-pointer2016102320161009
8521040refgcc -march=nocona -O -fomit-frame-pointer2016102320161009
8521256refgcc -m64 -march=nocona -O -fomit-frame-pointer2016102320161009
8525273refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016102320161009
8526120refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016102320161009
8543578refgcc -m64 -march=core2 -O -fomit-frame-pointer2016102320161009
8584692refgcc -march=k8 -O -fomit-frame-pointer2016102320161009
8613784refgcc -m64 -march=k8 -O -fomit-frame-pointer2016102320161009
8622904refgcc -march=barcelona -O -fomit-frame-pointer2016102320161009
8623538refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016102320161009
8624609refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016102320161009
8625680refgcc -m64 -O -fomit-frame-pointer2016102320161009
8634137refgcc -O -fomit-frame-pointer2016102320161009
8708943refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016102320161009
10880154refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016102320161009
10941541refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016102320161009
10947467refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016102320161009
11015176refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016102320161009
11024997refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016102320161009
11039798refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016102320161009
11048381refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016102320161009
11058274refgcc -funroll-loops -Os -fomit-frame-pointer2016102320161009
11067044refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016102320161009
11571056refgcc -march=barcelona -Os -fomit-frame-pointer2016102320161009
11572792refgcc -Os -fomit-frame-pointer2016102320161009
11595614refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016102320161009
11597739refgcc -march=nocona -Os -fomit-frame-pointer2016102320161009
11630962refgcc -m64 -Os -fomit-frame-pointer2016102320161009
11642336refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016102320161009
11642555refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016102320161009
11642673refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016102320161009
11647082refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016102320161009
11652389refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016102320161009
11666509refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016102320161009
11669104refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016102320161009
11692248refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016102320161009
11746843refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016102320161009
11766592refgcc -march=k8 -Os -fomit-frame-pointer2016102320161009
27595991refgcc -funroll-loops2016102320161009
27601758refgcc2016102320161009
27617314refcc2016102320161009

Test failure

Implementation: crypto_aead/tiaoxinv1/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
error 111
crypto_aead_encrypt is nondeterministic

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Test failure

Implementation: crypto_aead/tiaoxinv1/ref
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref table

Compiler output

Implementation: crypto_aead/tiaoxinv1/opt
Compiler: cc
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: tiaoxin-optimized.c: In function 'tiaoxin_optimized_encrypt':
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:29:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:41:130: note: in expansion of macro 'enc'
tiaoxin-optimized.c: #define RT6( T , M ) tmp = T[0];T[0] = enc(T[5],tmp);T[0] = xor(T[0], M);T[5] = T[4];T[4] = T[3];T[3] = T[2];T[2] = T[1];T[1] = enc(tmp,Z0);
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:49:1: note: in expansion of macro 'RT6'
tiaoxin-optimized.c: RT6( T6, M2 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:143:2: note: in expansion of macro 'UPDATE'
tiaoxin-optimized.c: UPDATE( T3 , T4 , T6, Z0 , Z1 , Z0 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:29:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:41:41: note: in expansion of macro 'enc'
tiaoxin-optimized.c: ...

Number of similar (compiler,implementation) pairs: 92, namely:
CompilerImplementations
cc opt
gcc opt
gcc -O2 -fomit-frame-pointer opt
gcc -O3 -fomit-frame-pointer opt
gcc -O -fomit-frame-pointer opt
gcc -Os -fomit-frame-pointer opt
gcc -fno-schedule-insns -O2 -fomit-frame-pointer opt
gcc -fno-schedule-insns -O3 -fomit-frame-pointer opt
gcc -fno-schedule-insns -O -fomit-frame-pointer opt
gcc -fno-schedule-insns -Os -fomit-frame-pointer opt
gcc -funroll-loops opt
gcc -funroll-loops -O2 -fomit-frame-pointer opt
gcc -funroll-loops -O3 -fomit-frame-pointer opt
gcc -funroll-loops -O -fomit-frame-pointer opt
gcc -funroll-loops -Os -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer opt
gcc -m64 -O2 -fomit-frame-pointer opt
gcc -m64 -O3 -fomit-frame-pointer opt
gcc -m64 -O -fomit-frame-pointer opt
gcc -m64 -Os -fomit-frame-pointer opt
gcc -m64 -march=core2 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core2 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -Os -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O -fomit-frame-pointer opt
gcc -m64 -march=corei7 -Os -fomit-frame-pointer opt
gcc -m64 -march=k8 -O2 -fomit-frame-pointer opt
gcc -m64 -march=k8 -O3 -fomit-frame-pointer opt
gcc -m64 -march=k8 -O -fomit-frame-pointer opt
gcc -m64 -march=k8 -Os -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer opt
gcc -m64 -march=nocona -O2 -fomit-frame-pointer opt
gcc -m64 -march=nocona -O3 -fomit-frame-pointer opt
gcc -m64 -march=nocona -O -fomit-frame-pointer opt
gcc -m64 -march=nocona -Os -fomit-frame-pointer opt
gcc -march=barcelona -O2 -fomit-frame-pointer opt
gcc -march=barcelona -O3 -fomit-frame-pointer opt
gcc -march=barcelona -O -fomit-frame-pointer opt
gcc -march=barcelona -Os -fomit-frame-pointer opt
gcc -march=k8 -O2 -fomit-frame-pointer opt
gcc -march=k8 -O3 -fomit-frame-pointer opt
gcc -march=k8 -O -fomit-frame-pointer opt
gcc -march=k8 -Os -fomit-frame-pointer opt
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv opt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv opt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv opt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv opt
gcc -march=nocona -O2 -fomit-frame-pointer opt
gcc -march=nocona -O3 -fomit-frame-pointer opt
gcc -march=nocona -O -fomit-frame-pointer opt
gcc -march=nocona -Os -fomit-frame-pointer opt

Compiler output

Implementation: crypto_aead/tiaoxinv1/aesnim
Compiler: cc
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: tiaoxin-optimized.c: In function 'tiaoxin_optimized_encrypt':
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:30:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:42:108: note: in expansion of macro 'enc'
tiaoxin-optimized.c: #define RT6( T , M ) tmp = T[0];T[0] = enc(T[5],M);T[5] = T[4];T[4] = T[3];T[3] = T[2];T[2] = T[1];T[1] = enc(tmp,Z0);T[0] = xor(T[0], tmp);
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:50:1: note: in expansion of macro 'RT6'
tiaoxin-optimized.c: RT6( T6, M2 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:151:2: note: in expansion of macro 'UPDATE'
tiaoxin-optimized.c: UPDATE( T3 , T4 , T6, Z0 , Z1 , Z0 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:30:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:42:41: note: in expansion of macro 'enc'
tiaoxin-optimized.c: ...

Number of similar (compiler,implementation) pairs: 92, namely:
CompilerImplementations
cc aesnim
gcc aesnim
gcc -O2 -fomit-frame-pointer aesnim
gcc -O3 -fomit-frame-pointer aesnim
gcc -O -fomit-frame-pointer aesnim
gcc -Os -fomit-frame-pointer aesnim
gcc -fno-schedule-insns -O2 -fomit-frame-pointer aesnim
gcc -fno-schedule-insns -O3 -fomit-frame-pointer aesnim
gcc -fno-schedule-insns -O -fomit-frame-pointer aesnim
gcc -fno-schedule-insns -Os -fomit-frame-pointer aesnim
gcc -funroll-loops aesnim
gcc -funroll-loops -O2 -fomit-frame-pointer aesnim
gcc -funroll-loops -O3 -fomit-frame-pointer aesnim
gcc -funroll-loops -O -fomit-frame-pointer aesnim
gcc -funroll-loops -Os -fomit-frame-pointer aesnim
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer aesnim
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer aesnim
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer aesnim
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -O -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -Os -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer aesnim
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer aesnim
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer aesnim
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer aesnim
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer aesnim
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer aesnim
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer aesnim
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer aesnim
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer aesnim
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer aesnim
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer aesnim
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer aesnim
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer aesnim
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer aesnim
gcc -m64 -O2 -fomit-frame-pointer aesnim
gcc -m64 -O3 -fomit-frame-pointer aesnim
gcc -m64 -O -fomit-frame-pointer aesnim
gcc -m64 -Os -fomit-frame-pointer aesnim
gcc -m64 -march=core2 -O2 -fomit-frame-pointer aesnim
gcc -m64 -march=core2 -O3 -fomit-frame-pointer aesnim
gcc -m64 -march=core2 -O -fomit-frame-pointer aesnim
gcc -m64 -march=core2 -Os -fomit-frame-pointer aesnim
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer aesnim
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer aesnim
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer aesnim
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer aesnim
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer aesnim
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer aesnim
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer aesnim
gcc -m64 -march=corei7 -O -fomit-frame-pointer aesnim
gcc -m64 -march=corei7 -Os -fomit-frame-pointer aesnim
gcc -m64 -march=k8 -O2 -fomit-frame-pointer aesnim
gcc -m64 -march=k8 -O3 -fomit-frame-pointer aesnim
gcc -m64 -march=k8 -O -fomit-frame-pointer aesnim
gcc -m64 -march=k8 -Os -fomit-frame-pointer aesnim
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer aesnim
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer aesnim
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer aesnim
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer aesnim
gcc -m64 -march=nocona -O2 -fomit-frame-pointer aesnim
gcc -m64 -march=nocona -O3 -fomit-frame-pointer aesnim
gcc -m64 -march=nocona -O -fomit-frame-pointer aesnim
gcc -m64 -march=nocona -Os -fomit-frame-pointer aesnim
gcc -march=barcelona -O2 -fomit-frame-pointer aesnim
gcc -march=barcelona -O3 -fomit-frame-pointer aesnim
gcc -march=barcelona -O -fomit-frame-pointer aesnim
gcc -march=barcelona -Os -fomit-frame-pointer aesnim
gcc -march=k8 -O2 -fomit-frame-pointer aesnim
gcc -march=k8 -O3 -fomit-frame-pointer aesnim
gcc -march=k8 -O -fomit-frame-pointer aesnim
gcc -march=k8 -Os -fomit-frame-pointer aesnim
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv aesnim
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv aesnim
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv aesnim
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv aesnim
gcc -march=nocona -O2 -fomit-frame-pointer aesnim
gcc -march=nocona -O3 -fomit-frame-pointer aesnim
gcc -march=nocona -O -fomit-frame-pointer aesnim
gcc -march=nocona -Os -fomit-frame-pointer aesnim

Compiler output

Implementation: crypto_aead/tiaoxinv1/aesnim
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
tiaoxin-optimized.c: tiaoxin-optimized.c:126:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'tiaoxin_optimized_encrypt' that is compiled without support for 'ssse3'
tiaoxin-optimized.c: W0 = _mm_shuffle_epi8( W0 , perm );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:127:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'tiaoxin_optimized_encrypt' that is compiled without support for 'ssse3'
tiaoxin-optimized.c: W1 = _mm_shuffle_epi8( W1 , perm );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:137:2: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'tiaoxin_optimized_encrypt' that is compiled without support for 'aes'
tiaoxin-optimized.c: UPDATE( T3 , T4 , T6, Z0 , Z1 , Z0 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:47:46: note: expanded from macro 'UPDATE'
tiaoxin-optimized.c: #define UPDATE( T3 , T4 , T6 , M0 , M1 , M2 )\
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:40:41: note: expanded from macro '\
tiaoxin-optimized.c: RT3'
tiaoxin-optimized.c: #define RT3( T , M ) tmp = T[0];T[0] = enc(T[2],M);T[2] = T[1];T[1] = enc(tmp,Z0);T[0] = xor(T[0], tmp);
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:30:19: note: expanded from macro 'enc'
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:137:2: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'tiaoxin_optimized_encrypt' that is compiled without support for 'aes'
tiaoxin-optimized.c: tiaoxin-optimized.c:47:46: note: expanded from macro 'UPDATE'
tiaoxin-optimized.c: #define UPDATE( T3 , T4 , T6 , M0 , M1 , M2 )\
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:40:72: note: expanded from macro '\
tiaoxin-optimized.c: RT3'
tiaoxin-optimized.c: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments aesnim
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments aesnim
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments aesnim
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments aesnim
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments aesnim
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments aesnim

Compiler output

Implementation: crypto_aead/tiaoxinv1/opt
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
tiaoxin-optimized.c: tiaoxin-optimized.c:129:2: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'tiaoxin_optimized_encrypt' that is compiled without support for 'aes'
tiaoxin-optimized.c: UPDATE( T3 , T4 , T6, Z0 , Z1 , Z0 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:46:46: note: expanded from macro 'UPDATE'
tiaoxin-optimized.c: #define UPDATE( T3 , T4 , T6 , M0 , M1 , M2 )\
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:39:41: note: expanded from macro '\
tiaoxin-optimized.c: RT3'
tiaoxin-optimized.c: #define RT3( T , M ) tmp = T[0];T[0] = enc(T[2],tmp);T[0] = xor(T[0], M);T[2] = T[1];T[1] = enc(tmp,Z0);
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:29:19: note: expanded from macro 'enc'
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:129:2: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'tiaoxin_optimized_encrypt' that is compiled without support for 'aes'
tiaoxin-optimized.c: tiaoxin-optimized.c:46:46: note: expanded from macro 'UPDATE'
tiaoxin-optimized.c: #define UPDATE( T3 , T4 , T6 , M0 , M1 , M2 )\
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:39:94: note: expanded from macro '\
tiaoxin-optimized.c: RT3'
tiaoxin-optimized.c: #define RT3( T , M ) tmp = T[0];T[0] = enc(T[2],tmp);T[0] = xor(T[0], M);T[2] = T[1];T[1] = enc(tmp,Z0);
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:29:19: note: expanded from macro 'enc'
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:129:2: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'tiaoxin_optimized_encrypt' that is compiled without support for 'aes'
tiaoxin-optimized.c: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments opt
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt

Compiler output

Implementation: crypto_aead/tiaoxinv1/table
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
tiaoxin-tablebased.c: tiaoxin-tablebased.c:256:12: warning: comparison of unsigned expression tiaoxin-tablebased.c: if( clen tiaoxin-tablebased.c: ~~~~ ^ ~
tiaoxin-tablebased.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments table
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments table
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments table
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments table
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments table
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments table

Compiler output

Implementation: crypto_aead/tiaoxinv1/opt
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: tiaoxin-optimized.c: In function 'tiaoxin_optimized_encrypt':
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:29:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:41:130: note: in expansion of macro 'enc'
tiaoxin-optimized.c: #define RT6( T , M ) tmp = T[0];T[0] = enc(T[5],tmp);T[0] = xor(T[0], M);T[5] = T[4];T[4] = T[3];T[3] = T[2];T[2] = T[1];T[1] = enc(tmp,Z0);
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:49:1: note: in expansion of macro 'RT6'
tiaoxin-optimized.c: RT6( T6, M2 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:143:2: note: in expansion of macro 'UPDATE'
tiaoxin-optimized.c: UPDATE( T3 , T4 , T6, Z0 , Z1 , Z0 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:29:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:41:41: note: in expansion of macro 'enc'
tiaoxin-optimized.c: ...
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: tiaoxin-optimized.c: In function 'tiaoxin_optimized_encrypt':
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:29:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:41:130: note: in expansion of macro 'enc'
tiaoxin-optimized.c: #define RT6( T , M ) tmp = T[0];T[0] = enc(T[5],tmp);T[0] = xor(T[0], M);T[5] = T[4];T[4] = T[3];T[3] = T[2];T[2] = T[1];T[1] = enc(tmp,Z0);
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:49:1: note: in expansion of macro 'RT6'
tiaoxin-optimized.c: RT6( T6, M2 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:143:2: note: in expansion of macro 'UPDATE'
tiaoxin-optimized.c: UPDATE( T3 , T4 , T6, Z0 , Z1 , Z0 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:29:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:41:41: note: in expansion of macro 'enc'
tiaoxin-optimized.c: ...

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

Compiler output

Implementation: crypto_aead/tiaoxinv1/aesnim
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: tiaoxin-optimized.c: In function 'tiaoxin_optimized_encrypt':
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:30:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:42:108: note: in expansion of macro 'enc'
tiaoxin-optimized.c: #define RT6( T , M ) tmp = T[0];T[0] = enc(T[5],M);T[5] = T[4];T[4] = T[3];T[3] = T[2];T[2] = T[1];T[1] = enc(tmp,Z0);T[0] = xor(T[0], tmp);
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:50:1: note: in expansion of macro 'RT6'
tiaoxin-optimized.c: RT6( T6, M2 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:151:2: note: in expansion of macro 'UPDATE'
tiaoxin-optimized.c: UPDATE( T3 , T4 , T6, Z0 , Z1 , Z0 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:30:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:42:41: note: in expansion of macro 'enc'
tiaoxin-optimized.c: ...
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: tiaoxin-optimized.c: In function 'tiaoxin_optimized_encrypt':
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:30:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:42:108: note: in expansion of macro 'enc'
tiaoxin-optimized.c: #define RT6( T , M ) tmp = T[0];T[0] = enc(T[5],M);T[5] = T[4];T[4] = T[3];T[3] = T[2];T[2] = T[1];T[1] = enc(tmp,Z0);T[0] = xor(T[0], tmp);
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:50:1: note: in expansion of macro 'RT6'
tiaoxin-optimized.c: RT6( T6, M2 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:151:2: note: in expansion of macro 'UPDATE'
tiaoxin-optimized.c: UPDATE( T3 , T4 , T6, Z0 , Z1 , Z0 );
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: In file included from tiaoxin-optimized.c:22:0:
tiaoxin-optimized.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
tiaoxin-optimized.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:30:19: error: called from here
tiaoxin-optimized.c: #define enc(a,b) _mm_aesenc_si128(a,b)
tiaoxin-optimized.c: ^
tiaoxin-optimized.c: tiaoxin-optimized.c:42:41: note: in expansion of macro 'enc'
tiaoxin-optimized.c: ...

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