Implementation notes: x86, bolero, crypto_sign/mqdss48

Computer: bolero
Architecture: x86
CPU ID: GenuineIntel-000406f1-bfebfbff
SUPERCOP version: 20190110
Operation: crypto_sign
Primitive: mqdss48
TimeImplementationCompilerBenchmark dateSUPERCOP version
20200620avx2gcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082920180818
20303700avx2gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082920180818
24302544avx2gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082920180818
24345544avx2gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082920180818
25060216avx2gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082920180818
25113116avx2gcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082920180818
25150984avx2gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082920180818
25299856avx2gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082920180818
68939212refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082920180818
68966372refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082920180818
78702340refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2018082920180818
78812336refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2018082920180818
79597180refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2018082920180818
79706228refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018082920180818
80667808refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2018082920180818
96883584refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2018082920180818
97205300refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2018082920180818
98980228refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082920180818
99009196refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082920180818
99476460refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082920180818
100307308refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2018082920180818
100331028refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2018082920180818
100568084refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2018082920180818
100711288refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2018082920180818
101348396refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2018082920180818
102081904refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082920180818
102128544refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2018082920180818
102135564refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082920180818
102168840refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082920180818
102174384refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082920180818
102288728refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2018082920180818
102466164refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2018082920180818
102498360refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2018082920180818
102682776refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082920180818
102772860refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2018082920180818
102782540refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2018082920180818
102884372refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2018082920180818
103444844refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2018082920180818
103967304refgcc -funroll-loops -m32 -O -fomit-frame-pointer2018082920180818
104002112refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2018082920180818
104064944refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2018082920180818
104357772refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2018082920180818
104542992refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2018082920180818
104690816refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2018082920180818
104916848refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2018082920180818
105484068refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2018082920180818
106620760refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2018082920180818
107016920refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2018082920180818
107948400refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082920180818
108035420refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2018082920180818
108068532refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2018082920180818
108432676refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2018082920180818
108451484refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2018082920180818
108479124refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082920180818
108616848refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2018082920180818
108693992refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2018082920180818
109130548refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082920180818
109171476refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2018082920180818
109188516refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082920180818
109253380refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2018082920180818
109494860refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2018082920180818
111372800refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082920180818
111432376refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082920180818
111502188refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082920180818
111525632refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082920180818
111536908refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2018082920180818
112699784refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2018082920180818
112739956refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2018082920180818
112979552refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082920180818
112984348refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082920180818
113089676refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082920180818
113515208refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2018082920180818
113728304refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2018082920180818
114349184refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2018082920180818
115936412refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082920180818
116371216refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2018082920180818
116453076refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2018082920180818
116729244refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082920180818
125527908refgcc -m32 -march=k8 -O -fomit-frame-pointer2018082920180818
129264624refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2018082920180818
130376056refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082920180818
130377880refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082920180818
130462964refgcc -m32 -O3 -fomit-frame-pointer2018082920180818
130858248refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082920180818
131150436refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2018082920180818
131669228refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2018082920180818
131678408refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2018082920180818
131743272refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2018082920180818
131817248refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2018082920180818
132361412refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2018082920180818
133141980refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082920180818
133226028refgcc -m32 -march=athlon -O -fomit-frame-pointer2018082920180818
133270704refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2018082920180818
133544184refgcc -m32 -march=corei7 -O -fomit-frame-pointer2018082920180818
133610296refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082920180818
133845440refgcc -m32 -march=i386 -Os -fomit-frame-pointer2018082920180818
133858636refgcc -m32 -march=i486 -Os -fomit-frame-pointer2018082920180818
133977156refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082920180818
134050424refgcc -m32 -march=core2 -O -fomit-frame-pointer2018082920180818
134119792refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082920180818
134177236refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082920180818
134197492refgcc -m32 -march=pentium -Os -fomit-frame-pointer2018082920180818
134208704refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082920180818
134296860refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082920180818
134327576refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082920180818
134407412refgcc -m32 -march=nocona -Os -fomit-frame-pointer2018082920180818
134511168refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2018082920180818
134526088refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082920180818
134551028refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082920180818
134568856refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2018082920180818
134762872refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2018082920180818
134790832refgcc -m32 -march=k8 -Os -fomit-frame-pointer2018082920180818
134821404refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2018082920180818
134880412refgcc -m32 -march=nocona -O -fomit-frame-pointer2018082920180818
134958828refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2018082920180818
135015148refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2018082920180818
135034440refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018082920180818
135036464refgcc -m32 -march=core2 -Os -fomit-frame-pointer2018082920180818
135081244refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082920180818
135098116refgcc -m32 -march=prescott -O -fomit-frame-pointer2018082920180818
135110776refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082920180818
135112280refgcc -m32 -Os -fomit-frame-pointer2018082920180818
135131556refgcc -m32 -march=prescott -Os -fomit-frame-pointer2018082920180818
135214252refgcc -m32 -march=athlon -Os -fomit-frame-pointer2018082920180818
135243108refgcc -m32 -O -fomit-frame-pointer2018082920180818
135290164refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2018082920180818
135400872refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2018082920180818
135414380refgcc -m32 -march=barcelona -O -fomit-frame-pointer2018082920180818
135417688refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2018082920180818
135508664refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2018082920180818
135510132refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082920180818
135544724refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2018082920180818
135578700refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2018082920180818
135596168refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2018082920180818
135678776refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2018082920180818
135815804refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2018082920180818
135832028refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2018082920180818
136051456refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2018082920180818
136140104refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2018082920180818
136165328refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2018082920180818
136177340refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2018082920180818
136377064refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2018082920180818
136378940refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2018082920180818
136391152refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082920180818
136849152refgcc -m32 -O2 -fomit-frame-pointer2018082920180818
136859692refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2018082920180818
136898180refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2018082920180818
136920952refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018082920180818
136967356refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2018082920180818
137069968refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2018082920180818
137109284refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2018082920180818
137120464refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2018082920180818
137197244refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2018082920180818
137696304refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2018082920180818
138394860refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082920180818
138436476refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2018082920180818
138496660refgcc -m32 -march=k6 -O -fomit-frame-pointer2018082920180818
138520628refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2018082920180818
138548964refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2018082920180818
138607160refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2018082920180818
139334824refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2018082920180818
139352868refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082920180818
140517976refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2018082920180818
143713236refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2018082920180818
144073940refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2018082920180818
144179880refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2018082920180818
145020132refgcc -m32 -march=k6 -Os -fomit-frame-pointer2018082920180818
145130404refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2018082920180818
146029236refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2018082920180818
146179864refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2018082920180818
146242324refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2018082920180818
146329088refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082920180818
146624956refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2018082920180818
147344156refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2018082920180818
147508736refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2018082920180818
147753888refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2018082920180818
147980648refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2018082920180818
148010224refgcc -m32 -march=i386 -O -fomit-frame-pointer2018082920180818
148234936refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082920180818
148333028refgcc -m32 -march=i486 -O -fomit-frame-pointer2018082920180818
148990388refgcc -m32 -march=pentium -O -fomit-frame-pointer2018082920180818
149853880refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082920180818
150408076refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2018082920180818
151361220refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082920180818

Compiler output

Implementation: crypto_sign/mqdss48/avx2
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
gf31.c: gf31.c: In function 'vgf31_unique':
gf31.c: gf31.c:14:13: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
gf31.c: __m256i _w31 = _mm256_set1_epi16(31);
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1300:1: error: inlining failed in call to always_inline '_mm256_set1_epi16': target specific option mismatch
gf31.c: _mm256_set1_epi16 (short __A)
gf31.c: ^
gf31.c: gf31.c:14:13: error: called from here
gf31.c: __m256i _w31 = _mm256_set1_epi16(31);
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.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
gf31.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
gf31.c: ^
gf31.c: gf31.c:20:9: error: called from here
gf31.c: _mm256_storeu_si256((__m256i*)(out + i*16), x);
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
gf31.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
gf31.c: ^
gf31.c: ...

Number of similar (compiler,implementation) pairs: 156, 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=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=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=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=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=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=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 -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 -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=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=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=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=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=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=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
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_sign/mqdss48/avx2
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
gf31.c: gf31.c: In function 'vgf31_unique':
gf31.c: gf31.c:14:13: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
gf31.c: __m256i _w31 = _mm256_set1_epi16(31);
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1300:1: error: inlining failed in call to always_inline '_mm256_set1_epi16': target specific option mismatch
gf31.c: _mm256_set1_epi16 (short __A)
gf31.c: ^
gf31.c: gf31.c:14:13: error: called from here
gf31.c: __m256i _w31 = _mm256_set1_epi16(31);
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.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
gf31.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
gf31.c: ^
gf31.c: gf31.c:20:9: error: called from here
gf31.c: _mm256_storeu_si256((__m256i*)(out + i*16), x);
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
gf31.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
gf31.c: ^
gf31.c: ...
gf31.c: gf31.c: In function 'vgf31_unique':
gf31.c: gf31.c:14:13: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
gf31.c: __m256i _w31 = _mm256_set1_epi16(31);
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:1300:1: error: inlining failed in call to always_inline '_mm256_set1_epi16': target specific option mismatch
gf31.c: _mm256_set1_epi16 (short __A)
gf31.c: ^
gf31.c: gf31.c:14:13: error: called from here
gf31.c: __m256i _w31 = _mm256_set1_epi16(31);
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.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
gf31.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
gf31.c: ^
gf31.c: gf31.c:20:9: error: called from here
gf31.c: _mm256_storeu_si256((__m256i*)(out + i*16), x);
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
gf31.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
gf31.c: ^
gf31.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_sign/mqdss48/avx2
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: gf31.c: In function 'vgf31_unique':
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
gf31.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
gf31.c: ^
gf31.c: gf31.c:19:11: error: called from here
gf31.c: x = _mm256_xor_si256(x, _mm256_and_si256(_w31, _mm256_cmpeq_epi16(x, _w31)));
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:179:1: error: inlining failed in call to always_inline '_mm256_and_si256': target specific option mismatch
gf31.c: _mm256_and_si256 (__m256i __A, __m256i __B)
gf31.c: ^
gf31.c: gf31.c:19:13: error: called from here
gf31.c: x = _mm256_xor_si256(x, _mm256_and_si256(_w31, _mm256_cmpeq_epi16(x, _w31)));
gf31.c: ^
gf31.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:238:1: error: inlining failed in call to always_inline '_mm256_cmpeq_epi16': target specific option mismatch
gf31.c: _mm256_cmpeq_epi16 (__m256i __A, __m256i __B)
gf31.c: ^
gf31.c: gf31.c:19:13: error: called from here
gf31.c: x = _mm256_xor_si256(x, _mm256_and_si256(_w31, _mm256_cmpeq_epi16(x, _w31)));
gf31.c: ^
gf31.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