Implementation notes: x86, h6sandy, crypto_kem/sntrup4591761

Computer: h6sandy
Architecture: x86
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20171218
Operation: crypto_kem
Primitive: sntrup4591761
TimeImplementationCompilerBenchmark dateSUPERCOP version
41829988refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2017122220171218
41831500refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2017122220171218
41831984refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017122220171218
41841848refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2017122220171218
41843336refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017122220171218
41844424refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2017122220171218
41856860refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017122220171218
41869072refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017122220171218
41869312refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017122220171218
41870164refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2017122220171218
41871956refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2017122220171218
41878076refgcc -m32 -O3 -fomit-frame-pointer2017122220171218
41882340refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017122220171218
41882772refgcc -m32 -O2 -fomit-frame-pointer2017122220171218
41883568refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017122220171218
41884772refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017122220171218
41904236refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017122220171218
41909276refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017122220171218
41913484refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017122220171218
41916700refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017122220171218
41917004refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017122220171218
41919152refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017122220171218
41921248refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017122220171218
41924268refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017122220171218
41989372refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2017122220171218
41996988refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017122220171218
42003356refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017122220171218
42051188refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017122220171218
42060476refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017122220171218
42078156refgcc -m32 -O -fomit-frame-pointer2017122220171218
42094104refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017122220171218
42121560refgcc -m32 -march=core2 -O -fomit-frame-pointer2017122220171218
42162324refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017122220171218
42186524refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017122220171218
42187384refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017122220171218
42191460refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017122220171218
42219672refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017122220171218
42256980refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017122220171218
42262916refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017122220171218
42411864refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2017122220171218
43317992refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017122220171218
43320964refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017122220171218
44067572refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017122220171218
44070452refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017122220171218
44080968refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017122220171218
44083772refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017122220171218
44160772refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017122220171218
44161792refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017122220171218
44161792refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017122220171218
44172248refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017122220171218
44173280refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017122220171218
44173716refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017122220171218
44271292refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017122220171218
44280308refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017122220171218
44280544refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017122220171218
44283020refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017122220171218
44283084refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017122220171218
44284296refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017122220171218
44289236refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017122220171218
44289628refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017122220171218
44298756refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017122220171218
44302200refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017122220171218
44315868refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017122220171218
44315968refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017122220171218
44321288refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017122220171218
44321684refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017122220171218
44350740refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017122220171218
44358200refgcc -m32 -Os -fomit-frame-pointer2017122220171218
44359912refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017122220171218
44369548refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017122220171218
44371248refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017122220171218
44384716refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017122220171218
44387852refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2017122220171218
44392748refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2017122220171218
44395572refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017122220171218
44395800refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017122220171218
44397692refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017122220171218
44400440refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017122220171218
44410556refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017122220171218
44414376refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017122220171218
44414548refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017122220171218
44415684refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017122220171218
44417152refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017122220171218
44419096refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017122220171218
44429980refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017122220171218
44466956refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017122220171218
44473844refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017122220171218
44506464refgcc -m32 -march=k8 -O -fomit-frame-pointer2017122220171218
44567888refgcc -m32 -march=k6 -O -fomit-frame-pointer2017122220171218
44597496refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017122220171218
44640236refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017122220171218
44657780refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017122220171218
44661560refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017122220171218
44693308refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017122220171218
44737812refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017122220171218
44747624refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017122220171218
44755100refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017122220171218
44768528refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017122220171218
44835308refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017122220171218
44841536refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017122220171218
44851392refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017122220171218
45099268refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017122220171218
45100052refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017122220171218
45101684refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017122220171218
45107212refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017122220171218
45666124refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017122220171218
45668256refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017122220171218
45668544refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017122220171218
45670560refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017122220171218
45670784refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017122220171218
45673556refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017122220171218
45903532refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017122220171218
45906708refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017122220171218
45922160refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017122220171218
45928648refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017122220171218
46060772refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017122220171218
46422964refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017122220171218
46423236refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017122220171218
46426032refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017122220171218
46431392refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017122220171218
46439080refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017122220171218
46440176refgcc -m32 -march=athlon -O -fomit-frame-pointer2017122220171218
46452204refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017122220171218
46455016refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017122220171218
46658484refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017122220171218
46925316refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017122220171218
46985776refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017122220171218
47780888refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017122220171218
48558416refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017122220171218
48561220refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017122220171218
70126948refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017122220171218
70127652refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017122220171218
70146896refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017122220171218
70147824refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017122220171218
70286780refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017122220171218
70287456refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017122220171218
70318840refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017122220171218
70568984refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017122220171218
70862300refgcc -m32 -march=prescott -O -fomit-frame-pointer2017122220171218
70891492refgcc -m32 -march=nocona -O -fomit-frame-pointer2017122220171218
70973092refgcc -m32 -march=pentium -O -fomit-frame-pointer2017122220171218
70991860refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017122220171218
74008104refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017122220171218
74011904refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017122220171218
74021596refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017122220171218
74077172refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017122220171218
74443028refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017122220171218
74494496refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017122220171218
74497864refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017122220171218
74584324refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017122220171218
74589608refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017122220171218
74807704refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017122220171218
75383024refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017122220171218
75611220refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017122220171218
83193656refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017122220171218
83197896refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017122220171218
83198192refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017122220171218
83266328refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017122220171218
84413856refgcc -m32 -march=i386 -O -fomit-frame-pointer2017122220171218
84495808refgcc -m32 -march=i486 -O -fomit-frame-pointer2017122220171218
85339220refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017122220171218
85492132refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017122220171218
86742076refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017122220171218
86747084refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017122220171218
86748816refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017122220171218
86807568refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017122220171218
87606616refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017122220171218
87624108refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017122220171218
87708392refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017122220171218
87793112refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017122220171218
87942104refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017122220171218
87996212refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017122220171218

Test failure

Implementation: crypto_kem/sntrup4591761/ref
Compiler: gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

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

Compiler output

Implementation: crypto_kem/sntrup4591761/avx
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
int32_sort.c: int32_sort.c: In function 'minmax8':
int32_sort.c: int32_sort.c:329:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
int32_sort.c: __m256i a = _mm256_loadu_si256((__m256i *) x);
int32_sort.c: ^
int32_sort.c: int32_sort.c: In function 'minmax4':
int32_sort.c: int32_sort.c:361:11: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
int32_sort.c: __m128i a = _mm_loadu_si128((__m128i *) x);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: int32_sort.c: In function 'minmax02through1315':
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
int32_sort.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
int32_sort.c: ^
int32_sort.c: int32_sort.c:24:3: error: called from here
int32_sort.c: _mm256_storeu_si256((__m256i *) (x + 8),b);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
int32_sort.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
int32_sort.c: ^
int32_sort.c: int32_sort.c:23:3: error: called from here
int32_sort.c: _mm256_storeu_si256((__m256i *) x,a);
int32_sort.c: ^
int32_sort.c: ...

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

Compiler output

Implementation: crypto_kem/sntrup4591761/avx
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
int32_sort.c: int32_sort.c: In function 'minmax8':
int32_sort.c: int32_sort.c:329:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
int32_sort.c: __m256i a = _mm256_loadu_si256((__m256i *) x);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: int32_sort.c: In function 'minmax02through1315':
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
int32_sort.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
int32_sort.c: ^
int32_sort.c: int32_sort.c:24:3: error: called from here
int32_sort.c: _mm256_storeu_si256((__m256i *) (x + 8),b);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
int32_sort.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
int32_sort.c: ^
int32_sort.c: int32_sort.c:23:3: error: called from here
int32_sort.c: _mm256_storeu_si256((__m256i *) x,a);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:878:1: error: inlining failed in call to always_inline '_mm256_unpackhi_epi64': target specific option mismatch
int32_sort.c: _mm256_unpackhi_epi64 (__m256i __A, __m256i __B)
int32_sort.c: ...

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

Compiler output

Implementation: crypto_kem/sntrup4591761/avx
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
int32_sort.c: int32_sort.c: In function 'minmax8':
int32_sort.c: int32_sort.c:329:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
int32_sort.c: __m256i a = _mm256_loadu_si256((__m256i *) x);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: int32_sort.c: In function 'minmax02through1315':
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
int32_sort.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
int32_sort.c: ^
int32_sort.c: int32_sort.c:24:3: error: called from here
int32_sort.c: _mm256_storeu_si256((__m256i *) (x + 8),b);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
int32_sort.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
int32_sort.c: ^
int32_sort.c: int32_sort.c:23:3: error: called from here
int32_sort.c: _mm256_storeu_si256((__m256i *) x,a);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:878:1: error: inlining failed in call to always_inline '_mm256_unpackhi_epi64': target specific option mismatch
int32_sort.c: _mm256_unpackhi_epi64 (__m256i __A, __m256i __B)
int32_sort.c: ...
int32_sort.c: int32_sort.c: In function 'minmax8':
int32_sort.c: int32_sort.c:329:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
int32_sort.c: __m256i a = _mm256_loadu_si256((__m256i *) x);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: int32_sort.c: In function 'minmax02through1315':
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
int32_sort.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
int32_sort.c: ^
int32_sort.c: int32_sort.c:24:3: error: called from here
int32_sort.c: _mm256_storeu_si256((__m256i *) (x + 8),b);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
int32_sort.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
int32_sort.c: ^
int32_sort.c: int32_sort.c:23:3: error: called from here
int32_sort.c: _mm256_storeu_si256((__m256i *) x,a);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:878:1: error: inlining failed in call to always_inline '_mm256_unpackhi_epi64': target specific option mismatch
int32_sort.c: _mm256_unpackhi_epi64 (__m256i __A, __m256i __B)
int32_sort.c: ...

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

Compiler output

Implementation: crypto_kem/sntrup4591761/avx
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: int32_sort.c: In function 'minmax02through1315':
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:878:1: error: inlining failed in call to always_inline '_mm256_unpackhi_epi64': target specific option mismatch
int32_sort.c: _mm256_unpackhi_epi64 (__m256i __A, __m256i __B)
int32_sort.c: ^
int32_sort.c: int32_sort.c:22:5: error: called from here
int32_sort.c: b = _mm256_unpackhi_epi64(g,h);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:906:1: error: inlining failed in call to always_inline '_mm256_unpacklo_epi64': target specific option mismatch
int32_sort.c: _mm256_unpacklo_epi64 (__m256i __A, __m256i __B)
int32_sort.c: ^
int32_sort.c: int32_sort.c:21:5: error: called from here
int32_sort.c: a = _mm256_unpacklo_epi64(g,h);
int32_sort.c: ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
int32_sort.c: from int32_sort.c:2:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:363:1: error: inlining failed in call to always_inline '_mm256_max_epi32': target specific option mismatch
int32_sort.c: _mm256_max_epi32 (__m256i __A, __m256i __B)
int32_sort.c: ^
int32_sort.c: int32_sort.c:20:11: error: called from here
int32_sort.c: __m256i h = _mm256_max_epi32(c,d);
int32_sort.c: ^
int32_sort.c: ...

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

Compiler output

Implementation: crypto_kem/sntrup4591761/avx
Compiler: gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer
mult.c: mult.c: In function 'mult24x8_float':
mult.c: mult.c:49:3: error: 'asm' operand has impossible constraints
mult.c: __asm__( \
mult.c: ^
mult.c: mult.c:149:3: note: in expansion of macro 'MULSTEP_fromzero'
mult.c: MULSTEP_fromzero(0,h0,h1,h2,h3,h4)
mult.c: ^
mult.c: mult.c:36:3: error: 'asm' operand has impossible constraints
mult.c: __asm__( \
mult.c: ^
mult.c: mult.c:151:5: note: in expansion of macro 'MULSTEP_noload'
mult.c: MULSTEP_noload(j + 1,h1,h2,h3,h4,h0)
mult.c: ^
mult.c: mult.c:36:3: error: 'asm' operand has impossible constraints
mult.c: __asm__( \
mult.c: ^
mult.c: mult.c:152:5: note: in expansion of macro 'MULSTEP_noload'
mult.c: MULSTEP_noload(j + 2,h2,h3,h4,h0,h1)
mult.c: ^
mult.c: mult.c:36:3: error: 'asm' operand has impossible constraints
mult.c: __asm__( \
mult.c: ^
mult.c: mult.c:153:5: note: in expansion of macro 'MULSTEP_noload'
mult.c: MULSTEP_noload(j + 3,h3,h4,h0,h1,h2)
mult.c: ^
mult.c: ...

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