Implementation notes: x86, hydra1, crypto_aead/norx6444v3

Computer: hydra1
Architecture: x86
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20161220
Operation: crypto_aead
Primitive: norx6444v3
TimeImplementationCompilerBenchmark dateSUPERCOP version
197934refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2016122720161220
197962refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2016122720161220
198014refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2016122720161220
198067refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2016122720161220
198968refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2016122720161220
198976refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2016122720161220
200379refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2016122720161220
200430refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2016122720161220
200926refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2016122720161220
200941refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2016122720161220
200952refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2016122720161220
201042refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2016122720161220
201066refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2016122720161220
201365refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2016122720161220
201392refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2016122720161220
201394refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016122720161220
201456refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2016122720161220
201467refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2016122720161220
201475refgcc -m32 -march=k6 -Os -fomit-frame-pointer2016122720161220
201477refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2016122720161220
201528refgcc -m32 -march=core2 -Os -fomit-frame-pointer2016122720161220
201573refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2016122720161220
201743refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2016122720161220
201800refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2016122720161220
201807refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2016122720161220
201838refgcc -m32 -march=pentium -Os -fomit-frame-pointer2016122720161220
204600refgcc -m32 -march=athlon -Os -fomit-frame-pointer2016122720161220
204608refgcc -m32 -march=k8 -Os -fomit-frame-pointer2016122720161220
204618refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2016122720161220
204640refgcc -m32 -Os -fomit-frame-pointer2016122720161220
204658refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2016122720161220
206274refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2016122720161220
206299refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2016122720161220
206309refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2016122720161220
206314refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2016122720161220
206319refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2016122720161220
213368refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2016122720161220
213389refgcc -m32 -march=prescott -Os -fomit-frame-pointer2016122720161220
213434refgcc -m32 -march=nocona -Os -fomit-frame-pointer2016122720161220
213508refgcc -m32 -march=i486 -Os -fomit-frame-pointer2016122720161220
213541refgcc -m32 -march=i386 -Os -fomit-frame-pointer2016122720161220
273606refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2016122720161220
276663refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2016122720161220
278414refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2016122720161220
279883refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2016122720161220
280037refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2016122720161220
281048refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2016122720161220
282019refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2016122720161220
282197refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2016122720161220
283507refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2016122720161220
283618refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2016122720161220
283637refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2016122720161220
283805refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2016122720161220
283952refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2016122720161220
285901refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2016122720161220
286053refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2016122720161220
286434refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2016122720161220
286874refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2016122720161220
286968refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2016122720161220
287391refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2016122720161220
287822refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2016122720161220
288258refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2016122720161220
288317refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2016122720161220
288320refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2016122720161220
288339refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2016122720161220
288370refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016122720161220
288372refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2016122720161220
288672refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2016122720161220
288831refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2016122720161220
289696refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2016122720161220
289703refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2016122720161220
290024refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2016122720161220
290299refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2016122720161220
290319refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2016122720161220
290376refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2016122720161220
290384refgcc -m32 -march=i386 -O -fomit-frame-pointer2016122720161220
290523refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2016122720161220
290752refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2016122720161220
290819refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2016122720161220
290888refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2016122720161220
290932refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2016122720161220
290989refgcc -m32 -O3 -fomit-frame-pointer2016122720161220
291013refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2016122720161220
291064refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2016122720161220
291092refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2016122720161220
291139refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2016122720161220
291359refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2016122720161220
291360refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2016122720161220
291382refgcc -funroll-loops -m32 -O -fomit-frame-pointer2016122720161220
291384refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2016122720161220
291466refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2016122720161220
292088refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2016122720161220
292184refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2016122720161220
292217refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2016122720161220
292410refgcc -m32 -march=i486 -O -fomit-frame-pointer2016122720161220
292657refgcc -m32 -O2 -fomit-frame-pointer2016122720161220
292744refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2016122720161220
292749refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2016122720161220
292900refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2016122720161220
293338refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2016122720161220
293367refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2016122720161220
293472refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2016122720161220
293911refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2016122720161220
293964refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2016122720161220
293972refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2016122720161220
294011refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2016122720161220
294115refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2016122720161220
294201refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2016122720161220
294259refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2016122720161220
294567refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2016122720161220
294723refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2016122720161220
295137refgcc -m32 -march=athlon -O -fomit-frame-pointer2016122720161220
296318refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2016122720161220
296322refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2016122720161220
296351refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2016122720161220
296490refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2016122720161220
296608refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2016122720161220
296677refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2016122720161220
296835refgcc -m32 -march=k8 -O -fomit-frame-pointer2016122720161220
296866refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2016122720161220
296867refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2016122720161220
297480refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2016122720161220
297483refgcc -m32 -march=core2 -O -fomit-frame-pointer2016122720161220
297642refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2016122720161220
297674refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2016122720161220
297685refgcc -m32 -march=barcelona -O -fomit-frame-pointer2016122720161220
297731refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2016122720161220
298202refgcc -m32 -march=corei7 -O -fomit-frame-pointer2016122720161220
298665refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2016122720161220
298692refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2016122720161220
298731refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2016122720161220
298803refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2016122720161220
298864refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2016122720161220
298875refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2016122720161220
299013refgcc -m32 -march=nocona -O -fomit-frame-pointer2016122720161220
299015refgcc -m32 -march=prescott -O -fomit-frame-pointer2016122720161220
299292refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2016122720161220
299709refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2016122720161220
299754refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2016122720161220
300811refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2016122720161220
301217refgcc -m32 -O -fomit-frame-pointer2016122720161220
301312refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2016122720161220
301339refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2016122720161220
301351refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2016122720161220
301882refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2016122720161220
301884refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2016122720161220
301960refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2016122720161220
302596refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2016122720161220
302712refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2016122720161220
302992refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2016122720161220
303123refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2016122720161220
303148refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2016122720161220
303180refgcc -m32 -march=pentium -O -fomit-frame-pointer2016122720161220
304283refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2016122720161220
304349refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2016122720161220
305469refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2016122720161220
305690refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2016122720161220
307954refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2016122720161220
307962refgcc -m32 -march=k6 -O -fomit-frame-pointer2016122720161220
307998refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2016122720161220

Test failure

Implementation: crypto_aead/norx6444v3/ref
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
error 111

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

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/5/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/5/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: error: 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/5/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/5/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/5/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: error: 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/5/include/immintrin.h:41:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1270: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: error: 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: 69, 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 -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 -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 -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=native -mtune=native -O2 -fomit-frame-pointer ymm
gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer ymm
gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer ymm
gcc -m32 -march=native -mtune=native -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/5/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/5/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: error: 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/5/include/immintrin.h:41:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1270: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: error: 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/5/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/5/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: error: 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/5/include/immintrin.h:41:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1270: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: error: 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/5/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/5/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: error: 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/5/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: /usr/lib/gcc/x86_64-linux-gnu/5/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: error: 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/5/include/immintrin.h:43:0,
norx.c: from norx.c:19:
norx.c: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -m32 -march=core-avx-i -O2 -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 -O -fomit-frame-pointer ymm
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer ymm