Implementation notes: x86, h4e450, crypto_aead/norx6444v3

Computer: h4e450
Architecture: x86
CPU ID: AuthenticAMD-00500f20-178bfbff
SUPERCOP version: 20171218
Operation: crypto_aead
Primitive: norx6444v3
TimeImplementationCompilerBenchmark dateSUPERCOP version
268769refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017100120170725
268807refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017100120170725
269815refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017100120170725
269862refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017100120170725
269880refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017100120170725
270845refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017100120170725
270859refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017100120170725
272735refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017100120170725
272859refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017100120170725
272883refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017100120170725
272930refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017100120170725
273933refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017100120170725
273957refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017100120170725
275225refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017100120170725
275405refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017100120170725
275609refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017100120170725
275728refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017100120170725
276155refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017100120170725
281238refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017100120170725
281433refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017100120170725
281879refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017100120170725
282074refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017100120170725
282079refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017100120170725
283827refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017100120170725
283889refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017100120170725
284259refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017100120170725
284767refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017100120170725
284820refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017100120170725
285618refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017100120170725
285627refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017100120170725
285703refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017100120170725
285722refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017100120170725
286064refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017100120170725
286116refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017100120170725
286169refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017100120170725
286358refgcc -m32 -Os -fomit-frame-pointer2017100120170725
288320refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017100120170725
290021refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017100120170725
290069refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017100120170725
290101refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017100120170725
290192refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017100120170725
414337refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017100120170725
414367refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017100120170725
420503refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017100120170725
421135refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017100120170725
423211refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017100120170725
424541refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017100120170725
425795refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017100120170725
426242refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017100120170725
427681refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017100120170725
427718refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017100120170725
427747refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017100120170725
428374refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017100120170725
429457refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017100120170725
429651refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017100120170725
429955refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017100120170725
430587refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017100120170725
430645refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017100120170725
431286refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017100120170725
431799refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017100120170725
431965refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017100120170725
431979refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017100120170725
432412refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017100120170725
432421refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017100120170725
432844refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017100120170725
432868refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017100120170725
432892refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017100120170725
433361refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017100120170725
433376refgcc -m32 -O2 -fomit-frame-pointer2017100120170725
434601refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017100120170725
434606refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017100120170725
434649refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017100120170725
434792refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017100120170725
434796refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017100120170725
434796refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017100120170725
435200refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017100120170725
435242refgcc -m32 -march=core2 -O -fomit-frame-pointer2017100120170725
435413refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017100120170725
435751refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017100120170725
435756refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017100120170725
436140refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017100120170725
436173refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017100120170725
436416refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017100120170725
436643refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017100120170725
436995refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017100120170725
437290refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017100120170725
437437refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017100120170725
437485refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017100120170725
437679refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017100120170725
437822refgcc -m32 -O3 -fomit-frame-pointer2017100120170725
438986refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017100120170725
439099refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017100120170725
439698refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017100120170725
439888refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017100120170725
439926refgcc -m32 -O -fomit-frame-pointer2017100120170725
440411refgcc -m32 -march=k8 -O -fomit-frame-pointer2017100120170725
440634refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017100120170725
440810refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017100120170725
440833refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017100120170725
440876refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017100120170725
440962refgcc -m32 -march=prescott -O -fomit-frame-pointer2017100120170725
440967refgcc -m32 -march=nocona -O -fomit-frame-pointer2017100120170725
440975refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017100120170725
441204refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017100120170725
441209refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017100120170725
441280refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017100120170725
441936refgcc -m32 -march=athlon -O -fomit-frame-pointer2017100120170725
443061refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017100120170725
443109refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017100120170725
443930refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017100120170725
444134refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017100120170725
444443refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017100120170725
444605refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017100120170725
444742refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017100120170725
444813refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017100120170725
444861refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017100120170725
444889refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017100120170725
444961refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017100120170725
445056refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017100120170725
445079refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017100120170725
445118refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017100120170725
445460refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017100120170725
445726refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017100120170725
445802refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017100120170725
445859refgcc -m32 -march=pentium -O -fomit-frame-pointer2017100120170725
446068refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017100120170725
446391refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017100120170725
446490refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017100120170725
446504refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017100120170725
446827refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017100120170725
447027refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017100120170725
447236refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017100120170725
448005refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017100120170725
448205refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017100120170725
448305refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017100120170725
448396refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017100120170725
448457refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017100120170725
448528refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017100120170725
448656refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017100120170725
449112refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017100120170725
449141refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017100120170725
449972refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017100120170725
451254refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017100120170725
451469refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017100120170725
451735refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017100120170725
451801refgcc -m32 -march=k6 -O -fomit-frame-pointer2017100120170725
451986refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017100120170725
452000refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017100120170725
452000refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017100120170725
452076refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017100120170725
452243refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017100120170725
452532refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017100120170725
452713refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017100120170725
452903refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017100120170725
454162refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017100120170725
454309refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017100120170725
454779refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017100120170725
454789refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017100120170725
454836refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017100120170725
456314refgcc -m32 -march=i486 -O -fomit-frame-pointer2017100120170725
456732refgcc -m32 -march=i386 -O -fomit-frame-pointer2017100120170725

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: 12, 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=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