Implementation notes: amd64, manny613, crypto_aead/minalpherv11

Computer: manny613
Architecture: amd64
CPU ID: GenuineIntel-000306e4-bfebfbff
SUPERCOP version: 20180818
Operation: crypto_aead
Primitive: minalpherv11
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3018208? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
3041384? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
3054820? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
3054868? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
3075580? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
3075916? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
3189136? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018082920180818
3194668? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018082920180818
3253228? ? ?? ? ?reficc_-xAVX_-O2_-fomit-frame-pointer2018082920180818
3259744? ? ?? ? ?reficc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2018082920180818
3301800? ? ?? ? ?reficc_-xSSE4.2_-O2_-fomit-frame-pointer2018082920180818
3364020? ? ?? ? ?reficc_-xAVX_-O3_-fomit-frame-pointer2018082920180818
3364488? ? ?? ? ?reficc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2018082920180818
3374316? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
3380272? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
3385748? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018082920180818
3392728? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018082920180818
3400472? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018082920180818
3403792? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018082920180818
3413988? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018082920180818
3414840? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018082920180818
3415596? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018082920180818
3415896? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018082920180818
3417436? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018082920180818
3418260? ? ?? ? ?reficc_-xSSE4.2_-O3_-fomit-frame-pointer2018082920180818
3426500? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018082920180818
3427448? ? ?? ? ?reficc_-xSSE4.1_-O3_-fomit-frame-pointer2018082920180818
3441544? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018082920180818
3496276? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018082920180818
3496496? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018082920180818
3525528? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018082920180818
3527836? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018082920180818
3533980? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018082920180818
3537196? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018082920180818
3552048? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
3555708? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
3582808? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018082920180818
3583220? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018082920180818
3637772? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018082920180818
3641316? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018082920180818
3642804? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018082920180818
3647304? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018082920180818
4073932? ? ?? ? ?reficc2018082920180818
4097852? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018082920180818
4111680? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018082920180818
4126608? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018082920180818
4128464? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018082920180818
4129452? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018082920180818
4147176? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
4147968? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
4300984? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
4309324? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
4347644? ? ?? ? ?reficc_-xSSE4.1_-O2_-fomit-frame-pointer2018082920180818
4484372? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018082920180818
4488444? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018082920180818
4498028? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018082920180818
4498788? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018082920180818
4499232? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018082920180818
4500192? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018082920180818
4505244? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018082920180818
4505680? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018082920180818
4507260? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018082920180818
4531716? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018082920180818
4573468? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
4604844? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018082920180818
4614652? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
4624064? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018082920180818
4641208? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
4643464? ? ?? ? ?reficc_-no-vec2018082920180818
4649088? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
4659192? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018082920180818
5192956? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018082920180818
5202876? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018082920180818
5213044? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018082920180818
5214880? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018082920180818
5218912? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018082920180818
5220308? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018082920180818
5220664? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018082920180818
5248364? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018082920180818
5253392? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018082920180818
5256980? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
5260952? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
5294112? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018082920180818
5294488? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018082920180818
5396740? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018082920180818
5399184? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018082920180818
5403860? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018082920180818
5421696? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018082920180818
5421820? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018082920180818
5437756? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
5444324? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
5454776? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018082920180818
5459256? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018082920180818
5466076? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018082920180818
5467124? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018082920180818
5478984? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018082920180818
5481528? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018082920180818
5490340? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018082920180818
5747696? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
5756404? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
5769588? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
5770948? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
5772180? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
5779924? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
5812764? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018082920180818
5813160? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018082920180818
5813632? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018082920180818
5814656? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018082920180818
5816920? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018082920180818
5821256? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018082920180818
5828876? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018082920180818
5881236? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018082920180818
5883456? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018082920180818
5888092? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018082920180818
21683980? ? ?? ? ?refcc2018082920180818
22296468? ? ?? ? ?refgcc2018082920180818
22349472? ? ?? ? ?refgcc_-funroll-loops2018082920180818

Test failure

Implementation: avx2
Security model: unknown
Compiler: g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer avx2
g++ -m64 -march=core-avx2 -O -fomit-frame-pointer avx2
g++ -m64 -march=core-avx2 -Os -fomit-frame-pointer avx2
icpc -xAVX -O2 -fomit-frame-pointer avx2
icpc -xAVX -O3 -fomit-frame-pointer avx2
icpc -xCORE-AVX-I -O2 -fomit-frame-pointer avx2
icpc -xCORE-AVX-I -O3 -fomit-frame-pointer avx2
icpc -xSSE4.1 -O2 -fomit-frame-pointer avx2
icpc -xSSE4.1 -O3 -fomit-frame-pointer avx2
icpc -xSSE4.2 -O2 -fomit-frame-pointer avx2
icpc -xSSE4.2 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref

Compiler output

Implementation: avx2
Security model: unknown
Compiler: g++
MinalpherCore.cpp: MinalpherCore.cpp: In function 'void minalpher_core_single_block(const __m256i&, __m256i&, __m256i&)':
MinalpherCore.cpp: MinalpherCore.cpp:85:138: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
MinalpherCore.cpp: const __m256i ymmMask = _mm256_set_epi32(0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F);
MinalpherCore.cpp: ^
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:41,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h:1257:1: error: inlining failed in call to always_inline '__m256i _mm256_set_epi32(int, int, int, int, int, int, int, int)': target specific option mismatch
MinalpherCore.cpp: _mm256_set_epi32 (int __A, int __B, int __C, int __D,
MinalpherCore.cpp: ^~~~~~~~~~~~~~~~
MinalpherCore.cpp: MinalpherCore.cpp:85:43: note: called from here
MinalpherCore.cpp: const __m256i ymmMask = _mm256_set_epi32(0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F);
MinalpherCore.cpp: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx2intrin.h:186:1: error: inlining failed in call to always_inline '__m256i _mm256_andnot_si256(__m256i, __m256i)': target specific option mismatch
MinalpherCore.cpp: _mm256_andnot_si256 (__m256i __A, __m256i __B)
MinalpherCore.cpp: ^~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: MinalpherCore.cpp:93:29: note: called from here
MinalpherCore.cpp: tmp1 = _mm256_andnot_si256(ymmMask, tmp);
MinalpherCore.cpp: ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
MinalpherCore.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: g++ -O2 -fomit-frame-pointer
MinalpherCore.cpp: MinalpherCore.cpp: In function 'void minalpher_core_single_block(const __m256i&, __m256i&, __m256i&)':
MinalpherCore.cpp: MinalpherCore.cpp:85:138: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
MinalpherCore.cpp: const __m256i ymmMask = _mm256_set_epi32(0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F);
MinalpherCore.cpp: ^
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:41,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h: In function 'void __static_initialization_and_destruction_0(int, int)':
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h:1277:1: error: inlining failed in call to always_inline '__m256i _mm256_set_epi8(char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char)': target specific option mismatch
MinalpherCore.cpp: _mm256_set_epi8 (char __q31, char __q30, char __q29, char __q28,
MinalpherCore.cpp: ^~~~~~~~~~~~~~~
MinalpherCore.cpp: MinalpherCore.cpp:705:55: note: called from here
MinalpherCore.cpp: const __m256i ShuffleQuadrupleBlock3 = _mm256_set_epi8(0xc, 0xd, 0x9, 0x8, 0xf, 0xe, 0xb, 0xa, 0x4, 0x5, 0x1, 0x0, 0x7, 0x6, 0x3, 0x2, 0xc, 0xd, 0x9, 0x8, 0xf, 0xe, 0xb, 0xa, 0x4, 0x5, 0x1, 0x0, 0x7, 0x6, 0x3, 0x2);
MinalpherCore.cpp: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:41,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h:1277:1: error: inlining failed in call to always_inline '__m256i _mm256_set_epi8(char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char)': target specific option mismatch
MinalpherCore.cpp: _mm256_set_epi8 (char __q31, char __q30, char __q29, char __q28,
MinalpherCore.cpp: ^~~~~~~~~~~~~~~
MinalpherCore.cpp: MinalpherCore.cpp:704:55: note: called from here
MinalpherCore.cpp: const __m256i ShuffleQuadrupleBlock2 = _mm256_set_epi8(0x9, 0x8, 0xf, 0xe, 0xd, 0xc, 0xa, 0xb, 0x1, 0x0, 0x7, 0x6, 0x5, 0x4, 0x2, 0x3, 0x9, 0x8, 0xf, 0xe, 0xd, 0xc, 0xa, 0xb, 0x1, 0x0, 0x7, 0x6, 0x5, 0x4, 0x2, 0x3);
MinalpherCore.cpp: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: ...

Number of similar (compiler,implementation) pairs: 52, namely:
CompilerImplementations
g++ -O2 -fomit-frame-pointer avx2
g++ -O3 -fomit-frame-pointer avx2
g++ -O -fomit-frame-pointer avx2
g++ -Os -fomit-frame-pointer avx2
g++ -fno-schedule-insns -O2 -fomit-frame-pointer avx2
g++ -fno-schedule-insns -O3 -fomit-frame-pointer avx2
g++ -fno-schedule-insns -O -fomit-frame-pointer avx2
g++ -fno-schedule-insns -Os -fomit-frame-pointer avx2
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx2
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx2
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx2
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx2
g++ -m64 -O2 -fomit-frame-pointer avx2
g++ -m64 -O3 -fomit-frame-pointer avx2
g++ -m64 -O -fomit-frame-pointer avx2
g++ -m64 -Os -fomit-frame-pointer avx2
g++ -m64 -march=core2 -O2 -fomit-frame-pointer avx2
g++ -m64 -march=core2 -O3 -fomit-frame-pointer avx2
g++ -m64 -march=core2 -O -fomit-frame-pointer avx2
g++ -m64 -march=core2 -Os -fomit-frame-pointer avx2
g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer avx2
g++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer avx2
g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer avx2
g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer avx2
g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer avx2
g++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer avx2
g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer avx2
g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer avx2
g++ -m64 -march=corei7 -O2 -fomit-frame-pointer avx2
g++ -m64 -march=corei7 -O3 -fomit-frame-pointer avx2
g++ -m64 -march=corei7 -O -fomit-frame-pointer avx2
g++ -m64 -march=corei7 -Os -fomit-frame-pointer avx2
g++ -m64 -march=k8 -O2 -fomit-frame-pointer avx2
g++ -m64 -march=k8 -O3 -fomit-frame-pointer avx2
g++ -m64 -march=k8 -O -fomit-frame-pointer avx2
g++ -m64 -march=k8 -Os -fomit-frame-pointer avx2
g++ -m64 -march=nocona -O2 -fomit-frame-pointer avx2
g++ -m64 -march=nocona -O3 -fomit-frame-pointer avx2
g++ -m64 -march=nocona -O -fomit-frame-pointer avx2
g++ -m64 -march=nocona -Os -fomit-frame-pointer avx2
g++ -march=barcelona -O2 -fomit-frame-pointer avx2
g++ -march=barcelona -O3 -fomit-frame-pointer avx2
g++ -march=barcelona -O -fomit-frame-pointer avx2
g++ -march=barcelona -Os -fomit-frame-pointer avx2
g++ -march=k8 -O2 -fomit-frame-pointer avx2
g++ -march=k8 -O3 -fomit-frame-pointer avx2
g++ -march=k8 -O -fomit-frame-pointer avx2
g++ -march=k8 -Os -fomit-frame-pointer avx2
g++ -march=nocona -O2 -fomit-frame-pointer avx2
g++ -march=nocona -O3 -fomit-frame-pointer avx2
g++ -march=nocona -O -fomit-frame-pointer avx2
g++ -march=nocona -Os -fomit-frame-pointer avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: g++ -m64 -march=barcelona -O2 -fomit-frame-pointer
MinalpherCore.cpp: MinalpherCore.cpp: In function 'void minalpher_core_single_block(const __m256i&, __m256i&, __m256i&)':
MinalpherCore.cpp: MinalpherCore.cpp:85:138: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
MinalpherCore.cpp: const __m256i ymmMask = _mm256_set_epi32(0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F);
MinalpherCore.cpp: ^
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:41,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h: In function 'void __static_initialization_and_destruction_0(int, int)':
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h:1277:1: error: inlining failed in call to always_inline '__m256i _mm256_set_epi8(char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char)': target specific option mismatch
MinalpherCore.cpp: _mm256_set_epi8 (char __q31, char __q30, char __q29, char __q28,
MinalpherCore.cpp: ^~~~~~~~~~~~~~~
MinalpherCore.cpp: MinalpherCore.cpp:705:55: note: called from here
MinalpherCore.cpp: const __m256i ShuffleQuadrupleBlock3 = _mm256_set_epi8(0xc, 0xd, 0x9, 0x8, 0xf, 0xe, 0xb, 0xa, 0x4, 0x5, 0x1, 0x0, 0x7, 0x6, 0x3, 0x2, 0xc, 0xd, 0x9, 0x8, 0xf, 0xe, 0xb, 0xa, 0x4, 0x5, 0x1, 0x0, 0x7, 0x6, 0x3, 0x2);
MinalpherCore.cpp: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:41,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h:1277:1: error: inlining failed in call to always_inline '__m256i _mm256_set_epi8(char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char)': target specific option mismatch
MinalpherCore.cpp: _mm256_set_epi8 (char __q31, char __q30, char __q29, char __q28,
MinalpherCore.cpp: ^~~~~~~~~~~~~~~
MinalpherCore.cpp: MinalpherCore.cpp:704:55: note: called from here
MinalpherCore.cpp: const __m256i ShuffleQuadrupleBlock2 = _mm256_set_epi8(0x9, 0x8, 0xf, 0xe, 0xd, 0xc, 0xa, 0xb, 0x1, 0x0, 0x7, 0x6, 0x5, 0x4, 0x2, 0x3, 0x9, 0x8, 0xf, 0xe, 0xd, 0xc, 0xa, 0xb, 0x1, 0x0, 0x7, 0x6, 0x5, 0x4, 0x2, 0x3);
MinalpherCore.cpp: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: ...
MinalpherCore.cpp: MinalpherCore.cpp: In function 'void minalpher_core_single_block(const __m256i&, __m256i&, __m256i&)':
MinalpherCore.cpp: MinalpherCore.cpp:85:138: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
MinalpherCore.cpp: const __m256i ymmMask = _mm256_set_epi32(0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F, 0x0F0F0F0F);
MinalpherCore.cpp: ^
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:41,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h: In function 'void __static_initialization_and_destruction_0(int, int)':
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h:1277:1: error: inlining failed in call to always_inline '__m256i _mm256_set_epi8(char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char)': target specific option mismatch
MinalpherCore.cpp: _mm256_set_epi8 (char __q31, char __q30, char __q29, char __q28,
MinalpherCore.cpp: ^~~~~~~~~~~~~~~
MinalpherCore.cpp: MinalpherCore.cpp:705:55: note: called from here
MinalpherCore.cpp: const __m256i ShuffleQuadrupleBlock3 = _mm256_set_epi8(0xc, 0xd, 0x9, 0x8, 0xf, 0xe, 0xb, 0xa, 0x4, 0x5, 0x1, 0x0, 0x7, 0x6, 0x3, 0x2, 0xc, 0xd, 0x9, 0x8, 0xf, 0xe, 0xb, 0xa, 0x4, 0x5, 0x1, 0x0, 0x7, 0x6, 0x3, 0x2);
MinalpherCore.cpp: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:41,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avxintrin.h:1277:1: error: inlining failed in call to always_inline '__m256i _mm256_set_epi8(char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char, char)': target specific option mismatch
MinalpherCore.cpp: _mm256_set_epi8 (char __q31, char __q30, char __q29, char __q28,
MinalpherCore.cpp: ^~~~~~~~~~~~~~~
MinalpherCore.cpp: MinalpherCore.cpp:704:55: note: called from here
MinalpherCore.cpp: const __m256i ShuffleQuadrupleBlock2 = _mm256_set_epi8(0x9, 0x8, 0xf, 0xe, 0xd, 0xc, 0xa, 0xb, 0x1, 0x0, 0x7, 0x6, 0x5, 0x4, 0x2, 0x3, 0x9, 0x8, 0xf, 0xe, 0xd, 0xc, 0xa, 0xb, 0x1, 0x0, 0x7, 0x6, 0x5, 0x4, 0x2, 0x3);
MinalpherCore.cpp: ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: ...

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

Compiler output

Implementation: avx2
Security model: unknown
Compiler: g++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx2intrin.h: In function 'void minalpher_core_single_block(const __m256i&, __m256i&, __m256i&)':
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx2intrin.h:588:1: error: inlining failed in call to always_inline '__m256i _mm256_shuffle_epi8(__m256i, __m256i)': target specific option mismatch
MinalpherCore.cpp: _mm256_shuffle_epi8 (__m256i __X, __m256i __Y)
MinalpherCore.cpp: ^~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: MinalpherCore.cpp:150:30: note: called from here
MinalpherCore.cpp: ymm1_ = _mm256_shuffle_epi8(ymm1, ShuffleSingleBlock1);
MinalpherCore.cpp: ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx2intrin.h:588:1: error: inlining failed in call to always_inline '__m256i _mm256_shuffle_epi8(__m256i, __m256i)': target specific option mismatch
MinalpherCore.cpp: _mm256_shuffle_epi8 (__m256i __X, __m256i __Y)
MinalpherCore.cpp: ^~~~~~~~~~~~~~~~~~~
MinalpherCore.cpp: MinalpherCore.cpp:149:30: note: called from here
MinalpherCore.cpp: ymm1 = _mm256_shuffle_epi8(ymmSbox, ymm1);
MinalpherCore.cpp: ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
MinalpherCore.cpp: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
MinalpherCore.cpp: from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/x86intrin.h:48,
MinalpherCore.cpp: from define.h:47,
MinalpherCore.cpp: from MinalpherCore.cpp:33:
MinalpherCore.cpp: ...

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
g++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer avx2
g++ -m64 -march=core-avx-i -O3 -fomit-frame-pointer avx2
g++ -m64 -march=core-avx-i -O -fomit-frame-pointer avx2
g++ -m64 -march=core-avx-i -Os -fomit-frame-pointer avx2
g++ -m64 -march=corei7-avx -O2 -fomit-frame-pointer avx2
g++ -m64 -march=corei7-avx -O3 -fomit-frame-pointer avx2
g++ -m64 -march=corei7-avx -O -fomit-frame-pointer avx2
g++ -m64 -march=corei7-avx -Os -fomit-frame-pointer avx2
g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx2
g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx2
g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer avx2
g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer avx2
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx2
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx2
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx2
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx2