Implementation notes: x86, h9trinity, crypto_aead/oceankeyakv1

Computer: h9trinity
Architecture: x86
CPU ID: AuthenticAMD-00610f01-178bfbff
SUPERCOP version: 20171218
Operation: crypto_aead
Primitive: oceankeyakv1
TimeImplementationCompilerBenchmark dateSUPERCOP version
649687refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017120620171020
650798refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017120620171020
654135refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017120620171020
655837refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017120620171020
665067refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2017120620171020
670017refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2017120620171020
671917refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2017120620171020
672183refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2017120620171020
675234refgcc -m32 -O3 -fomit-frame-pointer2017120620171020
676153refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017120620171020
677222refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017120620171020
679322refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017120620171020
679826refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017120620171020
693713refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017120620171020
694301refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017120620171020
694671refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017120620171020
702325refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017120620171020
703433refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017120620171020
704021refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017120620171020
704728refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017120620171020
705523refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017120620171020
706313refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017120620171020
712705refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017120620171020
713278refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017120620171020
714903refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017120620171020
716530refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017120620171020
716588refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017120620171020
718885refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017120620171020
728620refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017120620171020
737779refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017120620171020
737922refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017120620171020
739308refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017120620171020
747699refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017120620171020
749890refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017120620171020
752294refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017120620171020
753902refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017120620171020
754111refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017120620171020
759006refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017120620171020
759424refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017120620171020
759958refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017120620171020
763040refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017120620171020
765512refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017120620171020
765836refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017120620171020
769780refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017120620171020
770184refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017120620171020
773166refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017120620171020
774979refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017120620171020
778359refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017120620171020
778686refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017120620171020
779290refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017120620171020
787834refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017120620171020
788718refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017120620171020
791495refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017120620171020
791501refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017120620171020
803441refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017120620171020
803811refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017120620171020
804928refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017120620171020
805906refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017120620171020
809389refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017120620171020
814747refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017120620171020
819013refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017120620171020
846042refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017120620171020
846556refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017120620171020
847485refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017120620171020
857702refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017120620171020
857941refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017120620171020
858586refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017120620171020
859661refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017120620171020
863249refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017120620171020
868226refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017120620171020
868571refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017120620171020
881766refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017120620171020
886419refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017120620171020
886741refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017120620171020
887831refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017120620171020
889187refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017120620171020
919391refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017120620171020
919902refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017120620171020
919944refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017120620171020
1350531refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2017120620171020
1360382refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017120620171020
1361325refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2017120620171020
1372739refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017120620171020
1419917refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017120620171020
1439356refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017120620171020
1453039refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017120620171020
1462178refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017120620171020
1467353refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017120620171020
1470287refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017120620171020
1471882refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017120620171020
1473757refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017120620171020
1477442refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017120620171020
1483001refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017120620171020
1483915refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017120620171020
1488990refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017120620171020
1492712refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017120620171020
1500863refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017120620171020
1511658refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017120620171020
1516188refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017120620171020
1522770refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017120620171020
1528527refgcc -m32 -O2 -fomit-frame-pointer2017120620171020
1631965refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017120620171020
1634404refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017120620171020
1637517refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017120620171020
1643709refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017120620171020
1646962refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017120620171020
1680388refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017120620171020
1689615refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017120620171020
1699309refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017120620171020
1707109refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017120620171020
1710459refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017120620171020
1710607refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017120620171020
1717359refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017120620171020
1718077refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017120620171020
1725231refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017120620171020
1729365refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017120620171020
1730334refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017120620171020
1736140refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017120620171020
1744832refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017120620171020
1748414refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017120620171020
1749979refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017120620171020
1750256refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017120620171020
1753709refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017120620171020
1758787refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017120620171020
1761266refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017120620171020
1761673refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2017120620171020
1763130refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017120620171020
1765955refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017120620171020
1766574refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017120620171020
1771403refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017120620171020
1771436refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017120620171020
1774380refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2017120620171020
1775124refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017120620171020
1784749refgcc -m32 -Os -fomit-frame-pointer2017120620171020
1787443refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017120620171020
1800583refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017120620171020
1805244refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017120620171020
1817200refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017120620171020
1820701refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017120620171020
1827486refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017120620171020
1850557refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017120620171020
1884184refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017120620171020
1884584refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017120620171020
1888802refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017120620171020
1911872refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017120620171020
1916828refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017120620171020
1920693refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017120620171020
2210340refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017120620171020
2219569refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017120620171020
2228069refgcc -m32 -march=prescott -O -fomit-frame-pointer2017120620171020
2231820refgcc -m32 -O -fomit-frame-pointer2017120620171020
2237502refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2017120620171020
2238365refgcc -m32 -march=nocona -O -fomit-frame-pointer2017120620171020
2239665refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017120620171020
2239971refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2017120620171020
2245548refgcc -m32 -march=athlon -O -fomit-frame-pointer2017120620171020
2263141refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017120620171020
2266645refgcc -m32 -march=k8 -O -fomit-frame-pointer2017120620171020
2268458refgcc -m32 -march=core2 -O -fomit-frame-pointer2017120620171020
2270374refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017120620171020
2276370refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017120620171020
2283600refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017120620171020
2285025refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017120620171020
2285203refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017120620171020
2286299refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017120620171020
2294103refgcc -m32 -march=k6 -O -fomit-frame-pointer2017120620171020
2308879refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017120620171020
2319431refgcc -m32 -march=i486 -O -fomit-frame-pointer2017120620171020
2588470refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017120620171020
3517431refgcc -m32 -march=pentium -O -fomit-frame-pointer2017120620171020
3525244refgcc -m32 -march=i386 -O -fomit-frame-pointer2017120620171020
3588677refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017120620171020

Test failure

Implementation: crypto_aead/oceankeyakv1/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_aead/oceankeyakv1/ref
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
KeccakDuplex.c: In file included from KeccakDuplex.h:17:0,
KeccakDuplex.c: from KeccakDuplex.c:15:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_Duplexing':
KeccakDuplex.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: KeccakF_StatePermute(instance->gt;state);
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: note: in expansion of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->gt;state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
SerialFallback.c: In file included from ParallelKeccakFs.h:17:0,
SerialFallback.c: from SerialFallback.c:14:
SerialFallback.c: SerialFallback.c: In function 'KeccakF_ParallelStatePermute':
SerialFallback.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
SerialFallback.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
SerialFallback.c: ^
SerialFallback.c: SerialFallback.c:93:5: note: in expansion of macro 'KeccakF_StatePermute'
SerialFallback.c: KeccakF_StatePermute(stateWithIndex(instanceIndex));
SerialFallback.c: ^

Number of similar (compiler,implementation) pairs: 171, 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 -O3 -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 -O3 -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 -O3 -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 -O3 -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 -O3 -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_aead/oceankeyakv1/ref
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
KeccakDuplex.c: In file included from KeccakDuplex.h:17:0,
KeccakDuplex.c: from KeccakDuplex.c:15:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_Duplexing':
KeccakDuplex.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: KeccakF_StatePermute(instance->gt;state);
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: note: in expansion of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->gt;state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
SerialFallback.c: In file included from ParallelKeccakFs.h:17:0,
SerialFallback.c: from SerialFallback.c:14:
SerialFallback.c: SerialFallback.c: In function 'KeccakF_ParallelStatePermute':
SerialFallback.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
SerialFallback.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
SerialFallback.c: ^
SerialFallback.c: SerialFallback.c:93:5: note: in expansion of macro 'KeccakF_StatePermute'
SerialFallback.c: KeccakF_StatePermute(stateWithIndex(instanceIndex));
SerialFallback.c: ^
KeccakDuplex.c: In file included from KeccakDuplex.h:17:0,
KeccakDuplex.c: from KeccakDuplex.c:15:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_Duplexing':
KeccakDuplex.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: KeccakF_StatePermute(instance->gt;state);
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: note: in expansion of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->gt;state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
SerialFallback.c: In file included from ParallelKeccakFs.h:17:0,
SerialFallback.c: from SerialFallback.c:14:
SerialFallback.c: SerialFallback.c: In function 'KeccakF_ParallelStatePermute':
SerialFallback.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
SerialFallback.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
SerialFallback.c: ^
SerialFallback.c: SerialFallback.c:93:5: note: in expansion of macro 'KeccakF_StatePermute'
SerialFallback.c: KeccakF_StatePermute(stateWithIndex(instanceIndex));
SerialFallback.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