Implementation notes: x86, kizomba, crypto_aead/norx6444v3

Computer: kizomba
Architecture: x86
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_aead
Primitive: norx6444v3
TimeImplementationCompilerBenchmark dateSUPERCOP version
13998ymmgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082420180818
14131ymmgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082420180818
14553ymmgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082420180818
14562ymmgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082420180818
14936ymmgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082420180818
14955ymmgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082420180818
15147ymmgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082420180818
15260ymmgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082420180818
93552refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2018082420180818
94579refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082420180818
96030refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2018082420180818
96674refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2018082420180818
96849refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2018082420180818
97182refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2018082420180818
97772refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2018082420180818
98089refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2018082420180818
100042refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082420180818
100388refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2018082420180818
100706refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2018082420180818
100810refgcc -m32 -march=k8 -O -fomit-frame-pointer2018082420180818
100861refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082420180818
101198refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2018082420180818
101585refgcc -m32 -march=barcelona -O -fomit-frame-pointer2018082420180818
101772refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082420180818
101929refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2018082420180818
101989refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2018082420180818
102033refgcc -m32 -march=corei7 -O -fomit-frame-pointer2018082420180818
102147refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2018082420180818
102292refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2018082420180818
102522refgcc -m32 -march=core2 -O -fomit-frame-pointer2018082420180818
102597refgcc -m32 -march=prescott -O -fomit-frame-pointer2018082420180818
102708refgcc -m32 -march=nocona -O -fomit-frame-pointer2018082420180818
102881refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082420180818
103032refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2018082420180818
106029refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082420180818
107518refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2018082420180818
109004refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2018082420180818
110230refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2018082420180818
110436refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082420180818
110539refgcc -m32 -march=pentium -Os -fomit-frame-pointer2018082420180818
110662refgcc -m32 -march=k6 -Os -fomit-frame-pointer2018082420180818
110720refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2018082420180818
110758refgcc -m32 -march=athlon -Os -fomit-frame-pointer2018082420180818
110825refgcc -m32 -Os -fomit-frame-pointer2018082420180818
110859refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2018082420180818
110895refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2018082420180818
110939refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2018082420180818
111081refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2018082420180818
111141refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2018082420180818
111175refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2018082420180818
111186refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2018082420180818
111288refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082420180818
111565refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2018082420180818
111645refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2018082420180818
111710refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2018082420180818
111768refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082420180818
111887refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2018082420180818
112129refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2018082420180818
112302refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082420180818
112391refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2018082420180818
112659refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2018082420180818
113083refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082420180818
113387refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2018082420180818
113742refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2018082420180818
113913refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2018082420180818
114024refgcc -m32 -march=i386 -Os -fomit-frame-pointer2018082420180818
114327refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2018082420180818
114415refgcc -m32 -march=i486 -Os -fomit-frame-pointer2018082420180818
114551refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2018082420180818
115385refgcc -m32 -march=core2 -Os -fomit-frame-pointer2018082420180818
116510refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2018082420180818
116523refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2018082420180818
117291refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2018082420180818
117329refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2018082420180818
117410refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2018082420180818
117528refgcc -m32 -march=prescott -Os -fomit-frame-pointer2018082420180818
117574refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018082420180818
117924refgcc -m32 -march=nocona -Os -fomit-frame-pointer2018082420180818
117945refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2018082420180818
137901refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082420180818
138839refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2018082420180818
138956refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2018082420180818
148605refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2018082420180818
148621refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2018082420180818
149150refgcc -funroll-loops -m32 -O -fomit-frame-pointer2018082420180818
149836refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2018082420180818
150246refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2018082420180818
150491refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082420180818
150651refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2018082420180818
150899refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2018082420180818
151075refgcc -m32 -march=athlon -O -fomit-frame-pointer2018082420180818
151089refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2018082420180818
151158refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2018082420180818
151274refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2018082420180818
151356refgcc -m32 -O -fomit-frame-pointer2018082420180818
151565refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082420180818
151692refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082420180818
151742refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2018082420180818
151958refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2018082420180818
151961refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2018082420180818
152044refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2018082420180818
152208refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2018082420180818
152514refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082420180818
152702refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082420180818
152704refgcc -m32 -O2 -fomit-frame-pointer2018082420180818
152721refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2018082420180818
152786refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2018082420180818
152937refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2018082420180818
153105refgcc -m32 -O3 -fomit-frame-pointer2018082420180818
153171refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2018082420180818
153264refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2018082420180818
153799refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2018082420180818
153877refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082420180818
155308refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082420180818
155316refgcc -m32 -march=pentium -O -fomit-frame-pointer2018082420180818
155354refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082420180818
155355refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082420180818
155407refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2018082420180818
155514refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082420180818
155617refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082420180818
155715refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082420180818
155759refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2018082420180818
156431refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082420180818
156552refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2018082420180818
156552refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082420180818
156734refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082420180818
156800refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082420180818
157212refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2018082420180818
157351refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082420180818
157538refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2018082420180818
157633refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2018082420180818
157728refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082420180818
157772refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2018082420180818
157944refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2018082420180818
158000refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2018082420180818
158052refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082420180818
158455refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082420180818
158486refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2018082420180818
158552refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2018082420180818
158792refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082420180818
159111refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082420180818
159147refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082420180818
160058refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2018082420180818
160162refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082420180818
160340refgcc -m32 -march=i486 -O -fomit-frame-pointer2018082420180818
160504refgcc -m32 -march=i386 -O -fomit-frame-pointer2018082420180818
160672refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082420180818
160966refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2018082420180818
161712refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2018082420180818
161873refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2018082420180818
162321refgcc -m32 -march=k6 -O -fomit-frame-pointer2018082420180818
163602refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082420180818
163782refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2018082420180818
164296refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2018082420180818
164443refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018082420180818
165339refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2018082420180818
166340refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2018082420180818
166787refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082420180818
166905refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2018082420180818
170418refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2018082420180818
170849refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082420180818
171825refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2018082420180818
172562refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2018082420180818
173532refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082420180818
173726refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082420180818
177075refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018082420180818
185766refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2018082420180818
186609refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082420180818
186875refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2018082420180818
221808refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082420180818
292652refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2018082420180818
293903refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082420180818
294385refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2018082420180818
325277refgcc -m32 -march=k8 -Os -fomit-frame-pointer2018082420180818
326534refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2018082420180818
332000refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2018082420180818
336190refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2018082420180818
337492refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082420180818
338216refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2018082420180818
352229refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2018082420180818
363113refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2018082420180818
365833refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2018082420180818
379327refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2018082420180818
385506refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2018082420180818

Compiler output

Implementation: crypto_aead/norx6444v3/ymm
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
norx.c: norx.c: In function 'norx_aead_encrypt':
norx.c: norx.c:653:17: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
norx.c: const __m256i K = LOADU(key);
norx.c: ^
norx.c: norx.c:542:11: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
norx.c: S[ 0] = _mm256_broadcastq_epi64(_mm256_castsi256_si128(A)); \
norx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
norx.c: norx.c:584:5: note: in expansion of macro 'BRANCH_V4'
norx.c: BRANCH_V4(S, A, B, C, D); \
norx.c: ^~~~~~~~~
norx.c: norx.c:659:3: note: in expansion of macro 'ENCRYPT_DATA_V4'
norx.c: ENCRYPT_DATA_V4(A, B, C, D, c, m, mlen);
norx.c: ^~~~~~~~~~~~~~~
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
norx.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
norx.c: ^~~~~~~~~~~~~~~~
norx.c: norx.c:258:5: note: called from here
norx.c: D = XOR(D, _mm256_set_epi64x(NORX_T, NORX_P, NORX_L, NORX_W)); \
norx.c: ^
norx.c: norx.c:657:3: note: in expansion of macro 'INITIALISE'
norx.c: INITIALISE(A, B, C, D, nonce, K);
norx.c: ^~~~~~~~~~
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
norx.c: ...

Number of similar (compiler,implementation) pairs: 88, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer ymm
gcc -m32 -O2 -fomit-frame-pointer ymm
gcc -m32 -O3 -fomit-frame-pointer ymm
gcc -m32 -O -fomit-frame-pointer ymm
gcc -m32 -Os -fomit-frame-pointer ymm
gcc -m32 -march=athlon -O2 -fomit-frame-pointer ymm
gcc -m32 -march=athlon -O3 -fomit-frame-pointer ymm
gcc -m32 -march=athlon -O -fomit-frame-pointer ymm
gcc -m32 -march=athlon -Os -fomit-frame-pointer ymm
gcc -m32 -march=i386 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=i386 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=i386 -O -fomit-frame-pointer ymm
gcc -m32 -march=i386 -Os -fomit-frame-pointer ymm
gcc -m32 -march=i486 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=i486 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=i486 -O -fomit-frame-pointer ymm
gcc -m32 -march=i486 -Os -fomit-frame-pointer ymm
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=k6-2 -O -fomit-frame-pointer ymm
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer ymm
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=k6-3 -O -fomit-frame-pointer ymm
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer ymm
gcc -m32 -march=k6 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=k6 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=k6 -O -fomit-frame-pointer ymm
gcc -m32 -march=k6 -Os -fomit-frame-pointer ymm
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer ymm
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer ymm
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer ymm
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer ymm
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=pentium2 -O -fomit-frame-pointer ymm
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer ymm
gcc -m32 -march=pentium -O2 -fomit-frame-pointer ymm
gcc -m32 -march=pentium -O3 -fomit-frame-pointer ymm
gcc -m32 -march=pentium -O -fomit-frame-pointer ymm
gcc -m32 -march=pentium -Os -fomit-frame-pointer ymm
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer ymm
gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer ymm
gcc -m32 -march=pentiumpro -O -fomit-frame-pointer ymm
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer ymm

Compiler output

Implementation: crypto_aead/norx6444v3/ymm
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
norx.c: norx.c: In function 'norx_aead_encrypt':
norx.c: norx.c:653:17: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
norx.c: const __m256i K = LOADU(key);
norx.c: ^
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
norx.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
norx.c: ^~~~~~~~~~~~~~~~
norx.c: norx.c:258:5: note: called from here
norx.c: D = XOR(D, _mm256_set_epi64x(NORX_T, NORX_P, NORX_L, NORX_W)); \
norx.c: ^
norx.c: norx.c:657:3: note: in expansion of macro 'INITIALISE'
norx.c: INITIALISE(A, B, C, D, nonce, K);
norx.c: ^~~~~~~~~~
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1295:1: error: inlining failed in call to always_inline '_mm256_set_epi64x': target specific option mismatch
norx.c: _mm256_set_epi64x (long long __A, long long __B, long long __C,
norx.c: ^~~~~~~~~~~~~~~~~
norx.c: norx.c:63:19: note: called from here
norx.c: #define XOR(A, B) _mm256_xor_si256((A), (B))
norx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~
norx.c: norx.c:258:7: note: in expansion of macro 'XOR'
norx.c: D = XOR(D, _mm256_set_epi64x(NORX_T, NORX_P, NORX_L, NORX_W)); \
norx.c: ...

Number of similar (compiler,implementation) pairs: 68, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer ymm
gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer ymm
gcc -m32 -march=core2 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=core2 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=core2 -O -fomit-frame-pointer ymm
gcc -m32 -march=core2 -Os -fomit-frame-pointer ymm
gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer ymm
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer ymm
gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer ymm
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer ymm
gcc -m32 -march=corei7 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=corei7 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=corei7 -O -fomit-frame-pointer ymm
gcc -m32 -march=corei7 -Os -fomit-frame-pointer ymm
gcc -m32 -march=k8 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=k8 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=k8 -O -fomit-frame-pointer ymm
gcc -m32 -march=k8 -Os -fomit-frame-pointer ymm
gcc -m32 -march=nocona -O2 -fomit-frame-pointer ymm
gcc -m32 -march=nocona -O3 -fomit-frame-pointer ymm
gcc -m32 -march=nocona -O -fomit-frame-pointer ymm
gcc -m32 -march=nocona -Os -fomit-frame-pointer ymm
gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer ymm
gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer ymm
gcc -m32 -march=pentium-m -O -fomit-frame-pointer ymm
gcc -m32 -march=pentium-m -Os -fomit-frame-pointer ymm
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=pentium3 -O -fomit-frame-pointer ymm
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer ymm
gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer ymm
gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer ymm
gcc -m32 -march=pentium4 -O -fomit-frame-pointer ymm
gcc -m32 -march=pentium4 -Os -fomit-frame-pointer ymm
gcc -m32 -march=prescott -O2 -fomit-frame-pointer ymm
gcc -m32 -march=prescott -O3 -fomit-frame-pointer ymm
gcc -m32 -march=prescott -O -fomit-frame-pointer ymm
gcc -m32 -march=prescott -Os -fomit-frame-pointer ymm

Compiler output

Implementation: crypto_aead/norx6444v3/ymm
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
norx.c: norx.c: In function 'norx_aead_encrypt':
norx.c: norx.c:653:17: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
norx.c: const __m256i K = LOADU(key);
norx.c: ^
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
norx.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
norx.c: ^~~~~~~~~~~~~~~~
norx.c: norx.c:258:5: note: called from here
norx.c: D = XOR(D, _mm256_set_epi64x(NORX_T, NORX_P, NORX_L, NORX_W)); \
norx.c: ^
norx.c: norx.c:657:3: note: in expansion of macro 'INITIALISE'
norx.c: INITIALISE(A, B, C, D, nonce, K);
norx.c: ^~~~~~~~~~
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1295:1: error: inlining failed in call to always_inline '_mm256_set_epi64x': target specific option mismatch
norx.c: _mm256_set_epi64x (long long __A, long long __B, long long __C,
norx.c: ^~~~~~~~~~~~~~~~~
norx.c: norx.c:63:19: note: called from here
norx.c: #define XOR(A, B) _mm256_xor_si256((A), (B))
norx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~
norx.c: norx.c:258:7: note: in expansion of macro 'XOR'
norx.c: D = XOR(D, _mm256_set_epi64x(NORX_T, NORX_P, NORX_L, NORX_W)); \
norx.c: ...
norx.c: norx.c: In function 'norx_aead_encrypt':
norx.c: norx.c:653:17: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
norx.c: const __m256i K = LOADU(key);
norx.c: ^
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
norx.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
norx.c: ^~~~~~~~~~~~~~~~
norx.c: norx.c:258:5: note: called from here
norx.c: D = XOR(D, _mm256_set_epi64x(NORX_T, NORX_P, NORX_L, NORX_W)); \
norx.c: ^
norx.c: norx.c:657:3: note: in expansion of macro 'INITIALISE'
norx.c: INITIALISE(A, B, C, D, nonce, K);
norx.c: ^~~~~~~~~~
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1295:1: error: inlining failed in call to always_inline '_mm256_set_epi64x': target specific option mismatch
norx.c: _mm256_set_epi64x (long long __A, long long __B, long long __C,
norx.c: ^~~~~~~~~~~~~~~~~
norx.c: norx.c:63:19: note: called from here
norx.c: #define XOR(A, B) _mm256_xor_si256((A), (B))
norx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~
norx.c: norx.c:258:7: note: in expansion of macro 'XOR'
norx.c: D = XOR(D, _mm256_set_epi64x(NORX_T, NORX_P, NORX_L, NORX_W)); \
norx.c: ...

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

Compiler output

Implementation: crypto_aead/norx6444v3/ymm
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: norx.c: In function 'norx_aead_encrypt':
norx.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
norx.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
norx.c: ^~~~~~~~~~~~~~~~
norx.c: norx.c:258:5: note: called from here
norx.c: D = XOR(D, _mm256_set_epi64x(NORX_T, NORX_P, NORX_L, NORX_W)); \
norx.c: ^
norx.c: norx.c:657:3: note: in expansion of macro 'INITIALISE'
norx.c: INITIALISE(A, B, C, D, nonce, K);
norx.c: ^~~~~~~~~~
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
norx.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
norx.c: ^~~~~~~~~~~~~~~~
norx.c: norx.c:258:5: note: called from here
norx.c: D = XOR(D, _mm256_set_epi64x(NORX_T, NORX_P, NORX_L, NORX_W)); \
norx.c: ^
norx.c: norx.c:657:3: note: in expansion of macro 'INITIALISE'
norx.c: INITIALISE(A, B, C, D, nonce, K);
norx.c: ^~~~~~~~~~
norx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer ymm
gcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer ymm
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer ymm
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer ymm
gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer ymm
gcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer ymm
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer ymm
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer ymm