Implementation notes: x86, titan0, crypto_sign/mqdss48

Computer: titan0
Architecture: x86
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20190803
Operation: crypto_sign
Primitive: mqdss48
TimeImplementationCompilerBenchmark dateSUPERCOP version
18614924avx2gcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019080620190803
18702056avx2gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019080620190803
20722064avx2gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019080620190803
20782748avx2gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019080620190803
21295684avx2gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2019080620190803
21314288avx2gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2019080620190803
22742908avx2gcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019080620190803
22839980avx2gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019080620190803
70093932refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019080620190803
70096288refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019080620190803
80191816refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019080620190803
83299524refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019080620190803
83665008refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019080620190803
85008112refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019080620190803
85074020refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019080620190803
102949216refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2019080720190803
103935120refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2019080720190803
104491432refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2019080720190803
105706332refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019080720190803
105713108refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2019080720190803
105935428refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2019080720190803
105951772refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2019080720190803
106133148refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2019080720190803
106493508refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2019080720190803
106877576refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2019080720190803
107149268refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2019080720190803
108346796refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2019080720190803
108991808refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2019080720190803
109086836refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2019080720190803
109115820refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2019080720190803
109123228refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2019080720190803
109660404refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2019080720190803
109713648refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2019080720190803
109722688refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2019080720190803
109745312refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2019080720190803
109833672refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2019080720190803
109839948refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2019080720190803
109863868refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2019080720190803
110033408refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2019080720190803
110521836refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2019080720190803
110787184refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2019080720190803
111633264refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2019080720190803
111656136refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2019080720190803
112173788refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2019080620190803
112578124refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2019080720190803
112998284refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2019080720190803
113139652refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2019080720190803
113153840refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2019080720190803
113273528refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2019080720190803
113340640refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2019080720190803
113373448refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2019080720190803
113473200refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2019080720190803
113943708refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2019080720190803
114027200refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2019080720190803
114053912refgcc -funroll-loops -m32 -O -fomit-frame-pointer2019080720190803
114677564refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2019080720190803
114806064refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2019080720190803
114865768refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019080720190803
116321424refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019080720190803
116369192refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2019080720190803
116474528refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2019080720190803
116552356refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2019080720190803
117012720refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2019080720190803
117311352refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2019080720190803
117356968refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2019080720190803
117376612refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2019080720190803
119040644refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2019080720190803
120616480refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2019080720190803
124131416refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2019080720190803
125042388refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019080720190803
125266580refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2019080720190803
125605628refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2019080720190803
125831716refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2019080720190803
130501192refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2019080720190803
131603568refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2019080720190803
131822572refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019080620190803
131925420refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019080620190803
132339688refgcc -m32 -march=nocona -O -fomit-frame-pointer2019080720190803
132711784refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2019080720190803
132809968refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2019080720190803
133100388refgcc -m32 -march=prescott -O -fomit-frame-pointer2019080720190803
133100608refgcc -m32 -march=k8 -O -fomit-frame-pointer2019080720190803
133441212refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019080720190803
133556172refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019080620190803
133759436refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019080620190803
134089580refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2019080720190803
134107624refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2019080720190803
134168232refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2019080720190803
134276932refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2019080620190803
134416688refgcc -m32 -march=barcelona -O -fomit-frame-pointer2019080620190803
134421380refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2019080720190803
134476068refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019080620190803
134559236refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2019080720190803
134915680refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2019080720190803
134950232refgcc -m32 -O3 -fomit-frame-pointer2019080620190803
135041968refgcc -m32 -march=core2 -O -fomit-frame-pointer2019080620190803
135112404refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2019080620190803
135152656refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2019080720190803
135212848refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019080620190803
135348660refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2019080720190803
135397440refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019080620190803
135451616refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019080620190803
135574504refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019080620190803
135606960refgcc -m32 -march=corei7 -O -fomit-frame-pointer2019080620190803
135783892refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019080620190803
135842580refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019080620190803
135894260refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019080620190803
135899500refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2019080720190803
135919564refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2019080720190803
135944556refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2019080720190803
135970736refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019080620190803
136553392refgcc -m32 -O -fomit-frame-pointer2019080620190803
136947860refgcc -m32 -march=athlon -O -fomit-frame-pointer2019080720190803
137095292refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2019080620190803
137962348refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2019080720190803
137983944refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019080720190803
138284508refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2019080720190803
139068976refgcc -m32 -march=k6 -O -fomit-frame-pointer2019080720190803
139740080refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2019080720190803
139946136refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2019080720190803
140144520refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2019080720190803
141418488refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2019080720190803
141579136refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2019080720190803
141682544refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2019080720190803
141943956refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2019080720190803
142012024refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2019080720190803
142028232refgcc -m32 -O2 -fomit-frame-pointer2019080620190803
142043992refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2019080720190803
142085904refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2019080720190803
142503428refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019080720190803
142844148refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2019080720190803
142995280refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2019080720190803
143451364refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2019080720190803
143458828refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2019080720190803
143519740refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2019080620190803
143562412refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2019080720190803
143927456refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2019080720190803
144036908refgcc -m32 -march=pentium -O -fomit-frame-pointer2019080720190803
144088428refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2019080620190803
144167524refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2019080720190803
145394040refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2019080620190803
145467656refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2019080620190803
146583444refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2019080720190803
146591656refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2019080720190803
146967340refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2019080720190803
147032840refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2019080720190803
147365796refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2019080720190803
148084444refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2019080720190803
148161088refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2019080620190803
148178852refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2019080620190803
148628472refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019080720190803
148796700refgcc -m32 -march=core2 -Os -fomit-frame-pointer2019080620190803
148827848refgcc -m32 -march=nocona -Os -fomit-frame-pointer2019080720190803
148923844refgcc -m32 -march=prescott -Os -fomit-frame-pointer2019080720190803
148945448refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2019080620190803
149421652refgcc -m32 -march=athlon -Os -fomit-frame-pointer2019080720190803
149589044refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2019080720190803
149650980refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2019080720190803
149651780refgcc -m32 -march=pentium -Os -fomit-frame-pointer2019080720190803
149682636refgcc -m32 -march=i386 -O -fomit-frame-pointer2019080720190803
149717372refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2019080720190803
150135540refgcc -m32 -march=i486 -Os -fomit-frame-pointer2019080720190803
150269412refgcc -m32 -Os -fomit-frame-pointer2019080620190803
150423712refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2019080720190803
150471668refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2019080720190803
150516572refgcc -m32 -march=i486 -O -fomit-frame-pointer2019080720190803
150523344refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2019080720190803
150755284refgcc -m32 -march=i386 -Os -fomit-frame-pointer2019080720190803
150978652refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2019080720190803
150978824refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019080720190803
151020784refgcc -m32 -march=k6 -Os -fomit-frame-pointer2019080720190803
151814504refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2019080720190803
152042068refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2019080720190803
155680556refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2019080720190803
155704768refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019080720190803
157470496refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2019080720190803
157991736refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2019080720190803
158146692refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2019080720190803
163686260refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2019080620190803
164156296refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2019080720190803
164934828refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2019080620190803
166226436refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2019080720190803
171803100refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2019080620190803
173969760refgcc -m32 -march=k8 -Os -fomit-frame-pointer2019080620190803

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/7/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1325: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: note: 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/7/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:925:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
gf31.c: _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
gf31.c: ^~~~~~~~~~~~~~~~~~~
gf31.c: gf31.c:20:9: note: 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/7/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/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/7/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1325: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: note: 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/7/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:925:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
gf31.c: _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
gf31.c: ^~~~~~~~~~~~~~~~~~~
gf31.c: gf31.c:20:9: note: 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/7/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/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/7/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1325: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: note: 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/7/include/immintrin.h:41:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:925:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
gf31.c: _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
gf31.c: ^~~~~~~~~~~~~~~~~~~
gf31.c: gf31.c:20:9: note: 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/7/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/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/7/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/7/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: note: 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/7/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/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: note: 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/7/include/immintrin.h:43:0,
gf31.c: from gf31.c:2:
gf31.c: /usr/lib/gcc/x86_64-linux-gnu/7/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: note: 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