Implementation notes: x86, samba, crypto_kem/ntruhps2048509

Computer: samba
Architecture: x86
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20190803
Operation: crypto_kem
Primitive: ntruhps2048509
TimeImplementationCompilerBenchmark dateSUPERCOP version
1542157refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2019081020190803
1562665refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2019081020190803
1582233refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2019081020190803
1582492refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2019081020190803
1595539refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2019081020190803
1601760refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2019081020190803
1605268refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2019081020190803
1606708refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2019081020190803
1609240refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2019081020190803
1610365refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2019081020190803
1629514refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2019081020190803
1645768refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2019081020190803
1649729refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2019081020190803
1656510refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2019081020190803
2218024refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019081020190803
2232260refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2019081020190803
2235383refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2019081020190803
2253962refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019081020190803
2255030refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019081020190803
2256071refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019081020190803
2257941refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019081020190803
2258177refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019081020190803
2258262refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019081020190803
2262180refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019081020190803
2267500refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019081020190803
2269064refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019081020190803
2275584refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2019081020190803
2277319refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2019081020190803
2282907refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019081020190803
2284514refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019081020190803
2286552refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2019081020190803
2288004refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019081020190803
2292970refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2019081020190803
2294459refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2019081020190803
2299287refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2019081020190803
2323623refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019081020190803
2419832refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2019081020190803
2495407refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2019081020190803
2499498refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2019081020190803
2511931refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2019081020190803
2528654refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2019081020190803
2535133refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2019081020190803
2548302refgcc -m32 -O2 -fomit-frame-pointer2019081020190803
2559132refgcc -m32 -O3 -fomit-frame-pointer2019081020190803
2571934refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2019081020190803
2577222refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019081020190803
2578276refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2019081020190803
2591114refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2019081020190803
2616281refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019081020190803
2642123refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2019081020190803
2648293refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2019081020190803
2649794refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2019081020190803
2928746refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2019081020190803
2945922refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2019081020190803
2951693refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019081020190803
2951801refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2019081020190803
2951960refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2019081020190803
2952659refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019081020190803
2958857refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2019081020190803
2984534refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2019081020190803
2995151refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2019081020190803
3007552refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2019081020190803
3014458refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2019081020190803
3023250refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2019081020190803
3130161refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2019081020190803
3147619refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2019081020190803
3149744refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2019081020190803
3155046refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2019081020190803
3155113refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2019081020190803
3188678refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2019081020190803
3191674refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2019081020190803
3194615refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2019081020190803
3522928refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019081020190803
3524535refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2019081020190803
3528367refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019081020190803
3533478refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2019081020190803
4512898refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2019081020190803
4516895refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2019081020190803
4532367refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2019081020190803
4545889refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2019081020190803
4669091refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2019081020190803
4679716refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2019081020190803
4681775refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2019081020190803
4684141refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019081020190803
4684292refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2019081020190803
4693389refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2019081020190803
4703917refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019081020190803
4735187refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2019081020190803
5196325refgcc -m32 -march=i486 -O -fomit-frame-pointer2019081020190803
5199962refgcc -m32 -march=k6 -O -fomit-frame-pointer2019081020190803
5201696refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2019081020190803
5201750refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2019081020190803
5202313refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2019081020190803
5203830refgcc -m32 -march=pentium -O -fomit-frame-pointer2019081020190803
5214814refgcc -m32 -march=i386 -O -fomit-frame-pointer2019081020190803
5317793refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2019081020190803
5319665refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2019081020190803
5321975refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2019081020190803
5346903refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2019081020190803
5398908refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2019081020190803
5399026refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2019081020190803
5401229refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2019081020190803
5402276refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019081020190803
5405941refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2019081020190803
5406609refgcc -m32 -O -fomit-frame-pointer2019081020190803
5411301refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2019081020190803
5414051refgcc -m32 -march=prescott -O -fomit-frame-pointer2019081020190803
5417321refgcc -m32 -march=corei7 -O -fomit-frame-pointer2019081020190803
5420026refgcc -m32 -march=barcelona -O -fomit-frame-pointer2019081020190803
5423155refgcc -m32 -march=athlon -O -fomit-frame-pointer2019081020190803
5429433refgcc -m32 -march=nocona -O -fomit-frame-pointer2019081020190803
5429441refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019081020190803
5440800refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2019081020190803
5441038refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019081020190803
5441439refgcc -m32 -march=core2 -O -fomit-frame-pointer2019081020190803
5444207refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019081020190803
5447037refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019081020190803
5447248refgcc -funroll-loops -m32 -O -fomit-frame-pointer2019081020190803
5447684refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2019081020190803
5450166refgcc -m32 -march=k8 -O -fomit-frame-pointer2019081020190803
5450436refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2019081020190803
5451043refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2019081020190803
5460485refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2019081020190803
5461252refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2019081020190803
5461950refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2019081020190803
5464414refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019081020190803
5469480refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2019081020190803
5469756refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2019081020190803
5488742refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2019081020190803
5498807refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2019081020190803
5501109refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2019081020190803
5512081refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2019081020190803
6058278refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2019081020190803
6061903refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2019081020190803
6062459refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2019081020190803
6087328refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2019081020190803
6102355refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019081020190803
6107589refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2019081020190803
6107844refgcc -m32 -march=pentium -Os -fomit-frame-pointer2019081020190803
6129804refgcc -m32 -march=i386 -Os -fomit-frame-pointer2019081020190803
6130560refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2019081020190803
6130613refgcc -m32 -march=i486 -Os -fomit-frame-pointer2019081020190803
6150087refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2019081020190803
6171238refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2019081020190803
6173627refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2019081020190803
6193548refgcc -m32 -march=athlon -Os -fomit-frame-pointer2019081020190803
6195435refgcc -m32 -march=prescott -Os -fomit-frame-pointer2019081020190803
6196427refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2019081020190803
6207038refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2019081020190803
6217379refgcc -m32 -march=nocona -Os -fomit-frame-pointer2019081020190803
6221208refgcc -m32 -march=core2 -Os -fomit-frame-pointer2019081020190803
6224172refgcc -m32 -march=k8 -Os -fomit-frame-pointer2019081020190803
6226838refgcc -m32 -Os -fomit-frame-pointer2019081020190803
6234676refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2019081020190803
6263356refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2019081020190803
6371599refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2019081020190803
6391784refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2019081020190803
6436010refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2019081020190803
6446188refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019081020190803
6446639refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2019081020190803
6493295refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2019081020190803
6499855refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2019081020190803
6508353refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2019081020190803
6510391refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2019081020190803
6555666refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2019081020190803
6556658refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2019081020190803
6563238refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2019081020190803
6563695refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2019081020190803
6578007refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2019081020190803
6618362refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2019081020190803
8192329refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2019081020190803
8194254refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2019081020190803
8222744refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2019081020190803
8229199refgcc -m32 -march=k6 -Os -fomit-frame-pointer2019081020190803
8233103refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2019081020190803
8259085refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2019081020190803

Compiler output

Implementation: crypto_kem/ntruhps2048509/avx2
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_tobytes':
poly_r2_inv.c: poly_r2_inv.c:21:14: warning: implicit declaration of function '_pext_u64'; did you mean '_pext_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: out[i] = _pext_u64(coeff_pointer[2*i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pext_u32
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_frombytes':
poly_r2_inv.c: poly_r2_inv.c:39:26: warning: implicit declaration of function '_pdep_u64'; did you mean '_pdep_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: coeff_pointer[2*i] = _pdep_u64(in[i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pdep_u32
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_divx_1':
poly_s3_inv.c: poly_s3_inv.c:246:29: warning: implicit declaration of function '_mm_cvtsi128_si64'; did you mean '_mm_cvtsi128_si32'? [-Wimplicit-function-declaration]
poly_s3_inv.c: unsigned long long low0 = _mm_cvtsi128_si64(_mm256_castsi256_si128(f0));
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~
poly_s3_inv.c: _mm_cvtsi128_si32
poly_s3_inv.c: poly_s3_inv.c: In function '__poly_S3_inv':
poly_s3_inv.c: poly_s3_inv.c:325:9: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
poly_s3_inv.c: F0[0] = _mm256_set_epi32(4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295);
poly_s3_inv.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_timesx_1':
poly_s3_inv.c: poly_s3_inv.c:277:29: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
poly_s3_inv.c: unsigned long long low0 = _mm_cvtsi128_si64(_mm256_castsi256_si128(f0));
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_frombits':
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:597:1: error: inlining failed in call to always_inline '_mm256_shuffle_epi32': target specific option mismatch
poly_s3_inv.c: _mm256_shuffle_epi32 (__m256i __A, const int __mask)
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: poly_s3_inv.c:78:7: note: called from here
poly_s3_inv.c: h = _mm256_shuffle_epi32(h,0xd8);
poly_s3_inv.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
poly_s3_inv.c: ...

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

Compiler output

Implementation: crypto_kem/ntruhps2048509/avx2
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_tobytes':
poly_r2_inv.c: poly_r2_inv.c:21:14: warning: implicit declaration of function '_pext_u64'; did you mean '_pext_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: out[i] = _pext_u64(coeff_pointer[2*i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pext_u32
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_frombytes':
poly_r2_inv.c: poly_r2_inv.c:39:26: warning: implicit declaration of function '_pdep_u64'; did you mean '_pdep_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: coeff_pointer[2*i] = _pdep_u64(in[i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pdep_u32
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_divx_1':
poly_s3_inv.c: poly_s3_inv.c:246:29: warning: implicit declaration of function '_mm_cvtsi128_si64'; did you mean '_mm_cvtsi128_si32'? [-Wimplicit-function-declaration]
poly_s3_inv.c: unsigned long long low0 = _mm_cvtsi128_si64(_mm256_castsi256_si128(f0));
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~
poly_s3_inv.c: _mm_cvtsi128_si32
poly_s3_inv.c: poly_s3_inv.c: In function '__poly_S3_inv':
poly_s3_inv.c: poly_s3_inv.c:325:9: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
poly_s3_inv.c: F0[0] = _mm256_set_epi32(4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295);
poly_s3_inv.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_frombits':
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:597:1: error: inlining failed in call to always_inline '_mm256_shuffle_epi32': target specific option mismatch
poly_s3_inv.c: _mm256_shuffle_epi32 (__m256i __A, const int __mask)
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: poly_s3_inv.c:78:7: note: called from here
poly_s3_inv.c: h = _mm256_shuffle_epi32(h,0xd8);
poly_s3_inv.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
poly_s3_inv.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: poly_s3_inv.c:77:7: note: called from here
poly_s3_inv.c: h = _mm256_permute4x64_epi64(h,0xd8);
poly_s3_inv.c: ...

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

Compiler output

Implementation: crypto_kem/ntruhps2048509/avx2
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_tobytes':
poly_r2_inv.c: poly_r2_inv.c:21:14: warning: implicit declaration of function '_pext_u64'; did you mean '_pext_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: out[i] = _pext_u64(coeff_pointer[2*i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pext_u32
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_frombytes':
poly_r2_inv.c: poly_r2_inv.c:39:26: warning: implicit declaration of function '_pdep_u64'; did you mean '_pdep_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: coeff_pointer[2*i] = _pdep_u64(in[i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pdep_u32
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_divx_1':
poly_s3_inv.c: poly_s3_inv.c:246:29: warning: implicit declaration of function '_mm_cvtsi128_si64'; did you mean '_mm_cvtsi128_si32'? [-Wimplicit-function-declaration]
poly_s3_inv.c: unsigned long long low0 = _mm_cvtsi128_si64(_mm256_castsi256_si128(f0));
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~
poly_s3_inv.c: _mm_cvtsi128_si32
poly_s3_inv.c: poly_s3_inv.c: In function '__poly_S3_inv':
poly_s3_inv.c: poly_s3_inv.c:325:9: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
poly_s3_inv.c: F0[0] = _mm256_set_epi32(4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295);
poly_s3_inv.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_frombits':
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:597:1: error: inlining failed in call to always_inline '_mm256_shuffle_epi32': target specific option mismatch
poly_s3_inv.c: _mm256_shuffle_epi32 (__m256i __A, const int __mask)
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: poly_s3_inv.c:78:7: note: called from here
poly_s3_inv.c: h = _mm256_shuffle_epi32(h,0xd8);
poly_s3_inv.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
poly_s3_inv.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: poly_s3_inv.c:77:7: note: called from here
poly_s3_inv.c: h = _mm256_permute4x64_epi64(h,0xd8);
poly_s3_inv.c: ...
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_tobytes':
poly_r2_inv.c: poly_r2_inv.c:21:14: warning: implicit declaration of function '_pext_u64'; did you mean '_pext_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: out[i] = _pext_u64(coeff_pointer[2*i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pext_u32
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_frombytes':
poly_r2_inv.c: poly_r2_inv.c:39:26: warning: implicit declaration of function '_pdep_u64'; did you mean '_pdep_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: coeff_pointer[2*i] = _pdep_u64(in[i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pdep_u32
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_divx_1':
poly_s3_inv.c: poly_s3_inv.c:246:29: warning: implicit declaration of function '_mm_cvtsi128_si64'; did you mean '_mm_cvtsi128_si32'? [-Wimplicit-function-declaration]
poly_s3_inv.c: unsigned long long low0 = _mm_cvtsi128_si64(_mm256_castsi256_si128(f0));
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~
poly_s3_inv.c: _mm_cvtsi128_si32
poly_s3_inv.c: poly_s3_inv.c: In function '__poly_S3_inv':
poly_s3_inv.c: poly_s3_inv.c:325:9: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
poly_s3_inv.c: F0[0] = _mm256_set_epi32(4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295,4294967295);
poly_s3_inv.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_frombits':
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:597:1: error: inlining failed in call to always_inline '_mm256_shuffle_epi32': target specific option mismatch
poly_s3_inv.c: _mm256_shuffle_epi32 (__m256i __A, const int __mask)
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: poly_s3_inv.c:78:7: note: called from here
poly_s3_inv.c: h = _mm256_shuffle_epi32(h,0xd8);
poly_s3_inv.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
poly_s3_inv.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: poly_s3_inv.c:77:7: note: called from here
poly_s3_inv.c: h = _mm256_permute4x64_epi64(h,0xd8);
poly_s3_inv.c: ...

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

Compiler output

Implementation: crypto_kem/ntruhps2048509/avx2
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_tobytes':
poly_r2_inv.c: poly_r2_inv.c:21:14: warning: implicit declaration of function '_pext_u64'; did you mean '_pext_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: out[i] = _pext_u64(coeff_pointer[2*i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pext_u32
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_frombytes':
poly_r2_inv.c: poly_r2_inv.c:39:26: warning: implicit declaration of function '_pdep_u64'; did you mean '_pdep_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: coeff_pointer[2*i] = _pdep_u64(in[i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pdep_u32
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_divx_1':
poly_s3_inv.c: poly_s3_inv.c:246:29: warning: implicit declaration of function '_mm_cvtsi128_si64'; did you mean '_mm_cvtsi128_si32'? [-Wimplicit-function-declaration]
poly_s3_inv.c: unsigned long long low0 = _mm_cvtsi128_si64(_mm256_castsi256_si128(f0));
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~
poly_s3_inv.c: _mm_cvtsi128_si32
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_frombits':
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:597:1: error: inlining failed in call to always_inline '_mm256_shuffle_epi32': target specific option mismatch
poly_s3_inv.c: _mm256_shuffle_epi32 (__m256i __A, const int __mask)
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: poly_s3_inv.c:78:7: note: called from here
poly_s3_inv.c: h = _mm256_shuffle_epi32(h,0xd8);
poly_s3_inv.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
poly_s3_inv.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: poly_s3_inv.c:77:7: note: called from here
poly_s3_inv.c: h = _mm256_permute4x64_epi64(h,0xd8);
poly_s3_inv.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly_s3_inv.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
poly_s3_inv.c: from poly_s3_inv.c:12:
poly_s3_inv.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:588:1: error: inlining failed in call to always_inline '_mm256_shuffle_epi8': target specific option mismatch
poly_s3_inv.c: ...

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

Compiler output

Implementation: crypto_kem/ntruhps2048509/avx2
Compiler: gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_tobytes':
poly_r2_inv.c: poly_r2_inv.c:21:14: warning: implicit declaration of function '_pext_u64'; did you mean '_pext_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: out[i] = _pext_u64(coeff_pointer[2*i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pext_u32
poly_r2_inv.c: poly_r2_inv.c: In function 'poly_R2_frombytes':
poly_r2_inv.c: poly_r2_inv.c:39:26: warning: implicit declaration of function '_pdep_u64'; did you mean '_pdep_u32'? [-Wimplicit-function-declaration]
poly_r2_inv.c: coeff_pointer[2*i] = _pdep_u64(in[i], 0x1000100010001);
poly_r2_inv.c: ^~~~~~~~~
poly_r2_inv.c: _pdep_u32
poly_s3_inv.c: poly_s3_inv.c: In function 'vec256_divx_1':
poly_s3_inv.c: poly_s3_inv.c:246:29: warning: implicit declaration of function '_mm_cvtsi128_si64'; did you mean '_mm_cvtsi128_si32'? [-Wimplicit-function-declaration]
poly_s3_inv.c: unsigned long long low0 = _mm_cvtsi128_si64(_mm256_castsi256_si128(f0));
poly_s3_inv.c: ^~~~~~~~~~~~~~~~~
poly_s3_inv.c: _mm_cvtsi128_si32
poly_r2_mul.S: poly_r2_mul.S: Assembler messages:
poly_r2_mul.S: poly_r2_mul.S:111: Error: bad register name `%rsi)'
poly_r2_mul.S: poly_r2_mul.S:112: Error: bad register name `%rsi)'
poly_r2_mul.S: poly_r2_mul.S:113: Error: bad register name `%rdx)'
poly_r2_mul.S: poly_r2_mul.S:114: Error: bad register name `%rdx)'
poly_r2_mul.S: poly_r2_mul.S:117: Error: bad register name `%xmm11'
poly_r2_mul.S: poly_r2_mul.S:118: Error: bad register name `%xmm12'
poly_r2_mul.S: poly_r2_mul.S:119: Error: bad register name `%xmm11'
poly_r2_mul.S: poly_r2_mul.S:120: Error: bad register name `%xmm11'
poly_r2_mul.S: poly_r2_mul.S:121: Error: bad register name `%xmm11'
poly_r2_mul.S: poly_r2_mul.S:122: Error: bad register name `%xmm14'
poly_r2_mul.S: poly_r2_mul.S:123: Error: bad register name `%xmm11'
poly_r2_mul.S: poly_r2_mul.S:124: Error: bad register name `%ymm14'
poly_r2_mul.S: poly_r2_mul.S:125: Error: bad register name `%xmm15'
poly_r2_mul.S: poly_r2_mul.S:126: Error: bad register name `%rip)'
poly_r2_mul.S: poly_r2_mul.S:127: Error: bad register name `%rip)'
poly_r2_mul.S: poly_r2_mul.S:128: Error: bad register name `%rip)'
poly_r2_mul.S: poly_r2_mul.S:129: Error: bad register name `%ymm14'
poly_r2_mul.S: poly_r2_mul.S:130: Error: bad register name `%ymm14'
poly_r2_mul.S: poly_r2_mul.S:131: Error: bad register name `%xmm11'
poly_r2_mul.S: poly_r2_mul.S:132: Error: bad register name `%xmm12'
poly_r2_mul.S: poly_r2_mul.S:133: Error: bad register name `%xmm11'
poly_r2_mul.S: poly_r2_mul.S:134: Error: bad register name `%xmm11'
poly_r2_mul.S: poly_r2_mul.S:135: Error: bad register name `%xmm11'
poly_r2_mul.S: poly_r2_mul.S:136: Error: bad register name `%xmm13'
poly_r2_mul.S: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer avx2
gcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer avx2
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer avx2
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer avx2
gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer avx2
gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer avx2
gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer avx2
gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer avx2