Implementation notes: amd64, par, crypto_aead/norx6461v2

Computer: par
Architecture: amd64
CPU ID: GenuineIntel-000406c3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_aead
Primitive: norx6461v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
81740refgcc -march=native -mcpu=native -O32016121420161026
82780refgcc -march=native -mcpu=native -O22016121420161026
83520refgcc -funroll-loops -march=native -mcpu=native -O22016121420161026
83520refgcc -funroll-loops -march=native -mcpu=native -O32016121420161026
96340refgcc -march=native -mcpu=native -Os2016121420161026
98080refgcc -funroll-loops -march=native -mcpu=native -Os2016121420161026
118660xmmgcc -march=native -mcpu=native -O32016121420161026
118800xmmgcc -funroll-loops -march=native -mcpu=native -O22016121420161026
119180xmmgcc -funroll-loops -march=native -mcpu=native -O32016121420161026
121420xmmgcc -march=native -mcpu=native -Os2016121420161026
122700xmmgcc -march=native -mcpu=native -O22016121420161026
122840xmmgcc -funroll-loops -march=native -mcpu=native -Os2016121420161026

Compiler output

Implementation: crypto_aead/norx6461v2/ymm
Compiler: gcc -funroll-loops -march=native -mcpu=native -O2
caesar.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
norx.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
norx.c: norx.c: In function 'norx_aead_encrypt':
norx.c: norx.c:289:7: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
norx.c: A = _mm256_blend_epi32(_mm256_set_epi64x(U3, U2, 0, 0), \
norx.c: ^
norx.c: norx.c:388:5: note: in expansion of macro 'INITIALISE'
norx.c: INITIALISE(A, B, C, D, nonce, key);
norx.c: ^~~~~~~~~~
norx.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
norx.c: from norx.c:25:
norx.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/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:294:7: 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:388:5: note: in expansion of macro 'INITIALISE'
norx.c: INITIALISE(A, B, C, D, nonce, key);
norx.c: ^~~~~~~~~~
norx.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:41:0,
norx.c: from norx.c:25:
norx.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/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:72:19: note: called from here
norx.c: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mcpu=native -O2 ymm
gcc -funroll-loops -march=native -mcpu=native -O3 ymm
gcc -funroll-loops -march=native -mcpu=native -Os ymm
gcc -march=native -mcpu=native -O2 ymm
gcc -march=native -mcpu=native -O3 ymm
gcc -march=native -mcpu=native -Os ymm

Compiler output

Implementation: crypto_aead/norx6461v2/ref
Compiler: gcc -funroll-loops -march=native -mcpu=native -O2
caesar.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
norx.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
try.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
try.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
measure.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mcpu=native -O2 ref xmm
gcc -funroll-loops -march=native -mcpu=native -O3 ref xmm
gcc -funroll-loops -march=native -mcpu=native -Os ref xmm
gcc -march=native -mcpu=native -O2 ref xmm
gcc -march=native -mcpu=native -O3 ref xmm
gcc -march=native -mcpu=native -Os ref xmm