Implementation notes: x86, latour, crypto_sign/pflash1

Computer: latour
Architecture: x86
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20171218
Operation: crypto_sign
Primitive: pflash1
TimeImplementationCompilerBenchmark dateSUPERCOP version
1178685refgcc -m32 -O3 -fomit-frame-pointer2017091620170904
1193859refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017091620170904
1212876refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017091620170904
1274661refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017091620170904
1278846refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017091620170904
1336986refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017091620170904
1337652refgcc -m32 -march=i386 -O -fomit-frame-pointer2017091620170904
1360440refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017091620170904
1387386refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017091620170904
1390653refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017091620170904
1394685refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017091620170904
1404675refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017091620170904
1406124refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2017091620170904
1413423refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017091620170904
1415583refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017091620170904
1415754refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017091620170904
1417707refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017091620170904
1431648refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017091620170904
1432719refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017091620170904
1452951refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017091620170904
1465821refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017091620170904
1468260refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017091620170904
1481562refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017091620170904
1482219refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017091620170904
1484577refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017091620170904
1494963refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017091620170904
1497825refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017091620170904
1506987refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017091620170904
1508103refgcc -m32 -march=prescott -O -fomit-frame-pointer2017091620170904
1513647refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017091620170904
1513827refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017091620170904
1516986refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017091620170904
1517373refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017091620170904
1519227refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017091620170904
1520649refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017091620170904
1530288refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017091620170904
1532889refgcc -m32 -O -fomit-frame-pointer2017091620170904
1538946refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2017091620170904
1539117refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017091620170904
1544526refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017091620170904
1546515refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017091620170904
1549953refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017091620170904
1550403refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017091620170904
1570293refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017091620170904
1572975refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017091620170904
1573245refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017091620170904
1586295refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017091620170904
1592730refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017091620170904
1599984refgcc -m32 -march=nocona -O -fomit-frame-pointer2017091620170904
1610721refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017091620170904
1624833refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017091620170904
1648251refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017091620170904
1655910refgcc -m32 -march=k8 -O -fomit-frame-pointer2017091620170904
1660437refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017091620170904
1665477refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017091620170904
1668357refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017091620170904
1683531refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017091620170904
1687959refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017091620170904
1690938refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017091620170904
1698291refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017091620170904
1706994refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017091620170904
1709226refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017091620170904
1711125refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017091620170904
1721241refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017091620170904
1722717refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017091620170904
1738638refgcc -m32 -O2 -fomit-frame-pointer2017091620170904
1744128refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017091620170904
1744209refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017091620170904
1745631refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2017091620170904
1755567refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017091620170904
1770723refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017091620170904
1771794refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017091620170904
1777752refgcc -m32 -march=k6 -O -fomit-frame-pointer2017091620170904
1781343refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017091620170904
1785978refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2017091620170904
1787616refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017091620170904
1789452refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017091620170904
1797390refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017091620170904
1801476refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017091620170904
1801683refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017091620170904
1810269refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017091620170904
1814373refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017091620170904
1816740refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2017091620170904
1818423refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017091620170904
1835226refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017091620170904
1838700refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017091620170904
1843110refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017091620170904
1848213refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017091620170904
1848681refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017091620170904
1848807refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017091620170904
1849815refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017091620170904
1850382refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017091620170904
1852605refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017091620170904
1853352refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017091620170904
1853649refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017091620170904
1866474refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2017091620170904
1869165refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017091620170904
1885572refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017091620170904
1894374refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017091620170904
1914633refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017091620170904
1919088refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017091620170904
1928097refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017091620170904
1931526refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017091620170904
1932291refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017091620170904
1932615refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017091620170904
1932768refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017091620170904
1939941refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017091620170904
1940382refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017091620170904
1944612refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017091620170904
1947015refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017091620170904
1948536refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017091620170904
1948599refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017091620170904
1958616refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017091620170904
1959876refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017091620170904
1967562refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017091620170904
1988811refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017091620170904
2000466refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017091620170904
2031543refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017091620170904
2042676refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017091620170904
2065302refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017091620170904
2071620refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017091620170904
2072286refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017091620170904
2073096refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017091620170904
2076264refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017091620170904
2077416refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017091620170904
2083473refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017091620170904
2089899refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017091620170904
2106495refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017091620170904
2113092refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017091620170904
2114460refgcc -m32 -march=core2 -O -fomit-frame-pointer2017091620170904
2116746refgcc -m32 -march=pentium -O -fomit-frame-pointer2017091620170904
2118078refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017091620170904
2118294refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017091620170904
2125683refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017091620170904
2171142refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017091620170904
2183706refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017091620170904
2192634refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017091620170904
2196099refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017091620170904
2212533refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017091620170904
2218851refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017091620170904
2225907refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017091620170904
2236293refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017091620170904
2237922refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017091620170904
2238615refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017091620170904
2242368refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017091620170904
2254122refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017091620170904
2255049refgcc -m32 -march=i486 -O -fomit-frame-pointer2017091620170904
2258775refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017091620170904
2277657refgcc -m32 -Os -fomit-frame-pointer2017091620170904
2366244refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017091620170904
2366676refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017091620170904
2368683refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017091620170904
2376900refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017091620170904
2386350refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017091620170904
2418408refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017091620170904
2456784refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017091620170904
2468583refgcc -m32 -march=athlon -O -fomit-frame-pointer2017091620170904
2483928refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017091620170904
2494899refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017091620170904
2529675refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017091620170904
2542617refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017091620170904
2547198refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017091620170904
2569716refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017091620170904
2589246refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017091620170904
2662380refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017091620170904
2749806refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017091620170904
3088170refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017091620170904

Test failure

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

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

Compiler output

Implementation: crypto_sign/pflash1/ref
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
SignScheme.c: SignScheme.c: In function 'signatureofshorthash':
SignScheme.c: SignScheme.c:211:2: warning: passing argument 1 of 'SignScheme_sign' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme_sign( sk , h , mlen , sm );
SignScheme.c: ^
SignScheme.c: SignScheme.c:95:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: int SignScheme_sign( byte * pri , byte * Y , int Ylen , byte * outX )
SignScheme.c: ^
SignScheme.c: SignScheme.c: In function 'verification':
SignScheme.c: SignScheme.c:227:2: warning: passing argument 1 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme_GMap( pk , sm , h );
SignScheme.c: ^
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c: ^
SignScheme.c: SignScheme.c:227:2: warning: passing argument 2 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme_GMap( pk , sm , h );
SignScheme.c: ^
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c: ^

Number of similar (compiler,implementation) pairs: 166, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer ref
gcc -m32 -O2 -fomit-frame-pointer ref
gcc -m32 -O3 -fomit-frame-pointer ref
gcc -m32 -O -fomit-frame-pointer ref
gcc -m32 -Os -fomit-frame-pointer ref
gcc -m32 -march=athlon -O2 -fomit-frame-pointer ref
gcc -m32 -march=athlon -O3 -fomit-frame-pointer ref
gcc -m32 -march=athlon -O -fomit-frame-pointer ref
gcc -m32 -march=athlon -Os -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m32 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m32 -march=core2 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -Os -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m32 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m32 -march=corei7 -O -fomit-frame-pointer ref
gcc -m32 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m32 -march=i386 -O2 -fomit-frame-pointer ref
gcc -m32 -march=i386 -O3 -fomit-frame-pointer ref
gcc -m32 -march=i386 -O -fomit-frame-pointer ref
gcc -m32 -march=i386 -Os -fomit-frame-pointer ref
gcc -m32 -march=i486 -O2 -fomit-frame-pointer ref
gcc -m32 -march=i486 -O3 -fomit-frame-pointer ref
gcc -m32 -march=i486 -O -fomit-frame-pointer ref
gcc -m32 -march=i486 -Os -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -O -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -O -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer ref
gcc -m32 -march=k6 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k6 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k6 -O -fomit-frame-pointer ref
gcc -m32 -march=k6 -Os -fomit-frame-pointer ref
gcc -m32 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k8 -O -fomit-frame-pointer ref
gcc -m32 -march=k8 -Os -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m32 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m32 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m32 -march=nocona -O -fomit-frame-pointer ref
gcc -m32 -march=nocona -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium-m -O -fomit-frame-pointer ref
gcc -m32 -march=pentium-m -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium2 -O -fomit-frame-pointer ref
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium3 -O -fomit-frame-pointer ref
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -O -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium -O -fomit-frame-pointer ref
gcc -m32 -march=pentium -Os -fomit-frame-pointer ref
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentiumpro -O -fomit-frame-pointer ref
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer ref
gcc -m32 -march=prescott -O2 -fomit-frame-pointer ref
gcc -m32 -march=prescott -O3 -fomit-frame-pointer ref
gcc -m32 -march=prescott -O -fomit-frame-pointer ref
gcc -m32 -march=prescott -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_sign/pflash1/ref
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
SignScheme.c: SignScheme.c: In function 'signatureofshorthash':
SignScheme.c: SignScheme.c:211:2: warning: passing argument 1 of 'SignScheme_sign' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme_sign( sk , h , mlen , sm );
SignScheme.c: ^
SignScheme.c: SignScheme.c:95:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: int SignScheme_sign( byte * pri , byte * Y , int Ylen , byte * outX )
SignScheme.c: ^
SignScheme.c: SignScheme.c: In function 'verification':
SignScheme.c: SignScheme.c:227:2: warning: passing argument 1 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme_GMap( pk , sm , h );
SignScheme.c: ^
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c: ^
SignScheme.c: SignScheme.c:227:2: warning: passing argument 2 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme_GMap( pk , sm , h );
SignScheme.c: ^
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c: ^
SignScheme.c: SignScheme.c: In function 'signatureofshorthash':
SignScheme.c: SignScheme.c:211:2: warning: passing argument 1 of 'SignScheme_sign' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme_sign( sk , h , mlen , sm );
SignScheme.c: ^
SignScheme.c: SignScheme.c:95:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: int SignScheme_sign( byte * pri , byte * Y , int Ylen , byte * outX )
SignScheme.c: ^
SignScheme.c: SignScheme.c: In function 'verification':
SignScheme.c: SignScheme.c:227:2: warning: passing argument 1 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme_GMap( pk , sm , h );
SignScheme.c: ^
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c: ^
SignScheme.c: SignScheme.c:227:2: warning: passing argument 2 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme_GMap( pk , sm , h );
SignScheme.c: ^
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c: ^

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