Implementation notes: x86, kizomba, crypto_sign/mqdss48

Computer: kizomba
Architecture: x86
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_sign
Primitive: mqdss48
TimeImplementationCompilerBenchmark dateSUPERCOP version
17111550avx2gcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082820180818
19082801avx2gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082820180818
19614075avx2gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082820180818
19764519avx2gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082820180818
21967458avx2gcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082820180818
22041421avx2gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082820180818
47587256avx2gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082820180818
49185033avx2gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082820180818
58398764refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082820180818
59868462refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082820180818
68462522refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2018082820180818
68755980refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018082820180818
69360675refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2018082820180818
70834110refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2018082820180818
70947822refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2018082820180818
92139443refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2018082820180818
93251337refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2018082820180818
93297224refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082820180818
93521953refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2018082820180818
93560050refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082820180818
93631063refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2018082820180818
93919361refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2018082820180818
93960522refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2018082820180818
94197362refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082820180818
94641744refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2018082820180818
96008042refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2018082820180818
96422010refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2018082820180818
96769471refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2018082820180818
96771548refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2018082820180818
96774123refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2018082820180818
97226901refgcc -funroll-loops -m32 -O -fomit-frame-pointer2018082820180818
98151607refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2018082820180818
98258992refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2018082820180818
98961002refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2018082820180818
99123584refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2018082820180818
99207208refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082820180818
99726072refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082820180818
99883710refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2018082820180818
99901296refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2018082820180818
99936262refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2018082820180818
100589928refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082820180818
100813433refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082820180818
100818002refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2018082820180818
101307412refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082820180818
101573420refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2018082820180818
101583293refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2018082820180818
101760338refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082820180818
101898656refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2018082820180818
101995756refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2018082820180818
102027906refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2018082820180818
102028397refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2018082820180818
102255441refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2018082820180818
102349391refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082820180818
102864542refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082820180818
103196169refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2018082820180818
103219959refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2018082820180818
103551635refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2018082820180818
103812685refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082820180818
106604905refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2018082820180818
106967708refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082820180818
107014972refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082820180818
107188333refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082820180818
107486088refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082820180818
110105284refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082820180818
110629887refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2018082820180818
110655109refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082820180818
111454170refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2018082820180818
112009389refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2018082820180818
112623980refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2018082820180818
112630769refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2018082820180818
113894207refgcc -m32 -march=core2 -O -fomit-frame-pointer2018082820180818
114255069refgcc -m32 -march=k8 -O -fomit-frame-pointer2018082820180818
114450802refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082820180818
114614933refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2018082820180818
115030375refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082820180818
115126216refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2018082820180818
115127669refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2018082820180818
115322960refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2018082820180818
115373018refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2018082820180818
115373551refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2018082820180818
115512313refgcc -m32 -march=nocona -O -fomit-frame-pointer2018082820180818
115545385refgcc -m32 -march=prescott -O -fomit-frame-pointer2018082820180818
116356232refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082820180818
116390776refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082820180818
116475037refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082820180818
116692496refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082820180818
117009718refgcc -m32 -march=barcelona -O -fomit-frame-pointer2018082820180818
117100077refgcc -m32 -O3 -fomit-frame-pointer2018082820180818
117176609refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082820180818
117264478refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2018082820180818
117280849refgcc -m32 -march=k6 -O -fomit-frame-pointer2018082820180818
117297536refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2018082820180818
117542992refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2018082820180818
117762166refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082820180818
117812895refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2018082820180818
117871548refgcc -m32 -march=athlon -O -fomit-frame-pointer2018082820180818
117913758refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2018082820180818
118148002refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082820180818
118229901refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2018082820180818
118579157refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2018082820180818
118600562refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2018082820180818
118806393refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018082820180818
118808036refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2018082820180818
119527420refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082820180818
119592175refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2018082820180818
119804068refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2018082820180818
119850149refgcc -m32 -march=corei7 -O -fomit-frame-pointer2018082820180818
120008016refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2018082820180818
120032948refgcc -m32 -O -fomit-frame-pointer2018082820180818
120309990refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2018082820180818
120331866refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2018082820180818
120426107refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082820180818
120777228refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2018082820180818
121038061refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2018082820180818
121500322refgcc -m32 -march=pentium -O -fomit-frame-pointer2018082820180818
121561691refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082820180818
123206012refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082820180818
123524062refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082820180818
123638167refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2018082820180818
123650355refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2018082820180818
123729022refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082820180818
123749958refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082820180818
124134487refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082820180818
124145586refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2018082820180818
124161381refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2018082820180818
124572810refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2018082820180818
124794615refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2018082820180818
125230555refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2018082820180818
125561673refgcc -m32 -O2 -fomit-frame-pointer2018082820180818
125647195refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2018082820180818
126035724refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082820180818
127054749refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2018082820180818
127096222refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018082820180818
127128289refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2018082820180818
127370788refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2018082820180818
127538389refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2018082820180818
127598048refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2018082820180818
127601661refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2018082820180818
127687657refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2018082820180818
127798412refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2018082820180818
127833530refgcc -m32 -march=core2 -Os -fomit-frame-pointer2018082820180818
128055808refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2018082820180818
128103246refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2018082820180818
128513544refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2018082820180818
128823790refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2018082820180818
129209476refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2018082820180818
129317165refgcc -m32 -march=i386 -O -fomit-frame-pointer2018082820180818
129424659refgcc -m32 -march=prescott -Os -fomit-frame-pointer2018082820180818
129441063refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2018082820180818
129447899refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2018082820180818
129449123refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2018082820180818
129565827refgcc -m32 -march=nocona -Os -fomit-frame-pointer2018082820180818
129896873refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2018082820180818
130795581refgcc -m32 -march=i486 -O -fomit-frame-pointer2018082820180818
130950951refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082820180818
130997085refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2018082820180818
131051706refgcc -m32 -march=pentium -Os -fomit-frame-pointer2018082820180818
131169560refgcc -m32 -march=athlon -Os -fomit-frame-pointer2018082820180818
131315681refgcc -m32 -march=i486 -Os -fomit-frame-pointer2018082820180818
131608397refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2018082820180818
131611365refgcc -m32 -march=k6 -Os -fomit-frame-pointer2018082820180818
131654117refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2018082820180818
132007736refgcc -m32 -march=i386 -Os -fomit-frame-pointer2018082820180818
132034156refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082820180818
132217290refgcc -m32 -Os -fomit-frame-pointer2018082820180818
132669891refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2018082820180818
133028343refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2018082820180818
134428434refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2018082820180818
134832873refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2018082820180818
135472768refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082820180818
135650018refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2018082820180818
137764532refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082820180818
137789262refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2018082820180818
138527611refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082820180818
139172125refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082820180818
139322954refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2018082820180818
147706595refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082820180818
148237006refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2018082820180818
149542908refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2018082820180818
150075948refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2018082820180818
150169593refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2018082820180818
154319952refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2018082820180818
154576512refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082820180818
157664486refgcc -m32 -march=k8 -Os -fomit-frame-pointer2018082820180818

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