Implementation notes: x86, rumba5, crypto_sign/sphincss192shake256

Computer: rumba5
Architecture: x86
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20181216
Operation: crypto_sign
Primitive: sphincss192shake256
TimeImplementationCompilerBenchmark dateSUPERCOP version
14634093184avx2gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018090920180818
15043429216avx2gcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018090920180818
23180974912avx2gcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018090920180818
23186239968avx2gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018090920180818
23591736192avx2gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018090920180818
23696281568avx2gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018090920180818
23709217216avx2gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018090920180818
23854806656avx2gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018090920180818
64861060128refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018090920180818
65053121248refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018090920180818
68575468640refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2018090920180818
68955180256refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2018090920180818
68991721184refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2018090920180818
69129375232refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2018090920180818
69152950656refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018090920180818
69178742976refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2018090920180818
69205871616refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2018090920180818
69622367168refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2018091020180818
69644712992refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2018091020180818
69831991232refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2018091020180818
69835426656refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2018090920180818
69977901024refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2018090920180818
69984306944refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2018091020180818
70057196512refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2018091020180818
70302548448refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2018091020180818
70420246912refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2018090920180818
70429257312refgcc -m32 -O3 -fomit-frame-pointer2018090920180818
70452327328refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2018091020180818
71221883104refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2018090920180818
71262747328refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2018091020180818
71263919968refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2018091020180818
71317583168refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2018090920180818
71319919296refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2018090920180818
71872029472refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2018091020180818
71975472640refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2018091020180818
72824250880refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2018091020180818
73213092640refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2018091020180818
73222788032refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018091020180818
73329822464refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2018091020180818
73348889664refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2018091120180818
73374607520refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2018091120180818
73579787104refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018091020180818
73688568896refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2018091020180818
73769803712refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2018091020180818
74410309664refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2018091020180818
74419740192refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2018091020180818
74528123360refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2018091020180818
74782867488refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2018091020180818
75056014368refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2018091020180818
75073910528refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2018091020180818
75113866048refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018090920180818
75247703168refgcc -funroll-loops -m32 -O -fomit-frame-pointer2018091020180818
75251718720refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2018091020180818
75261705216refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2018091020180818
75295497504refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2018091020180818
75296594592refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2018091020180818
75362743680refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2018091020180818
75575023072refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018090920180818
75706028416refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2018091120180818
75772502112refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2018091020180818
75794188928refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2018091020180818
75830636320refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018091020180818
75845283072refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2018091020180818
75878645408refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2018091120180818
75889452576refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2018091020180818
76211968480refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2018091020180818
76216756640refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018091020180818
76219513760refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018090920180818
76249612160refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2018091120180818
76267022144refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2018091020180818
76284198880refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2018091020180818
76657152288refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2018091020180818
76756351232refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2018091020180818
76856991872refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2018091120180818
76928266464refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2018091020180818
76952748544refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2018091020180818
76977520448refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2018091020180818
77155290112refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2018091020180818
77524950752refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018090920180818
77681002432refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2018091020180818
77702280320refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2018091020180818
77845214144refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2018091020180818
77846276352refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018090920180818
78147499552refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2018091020180818
78385742400refgcc -m32 -march=pentium -Os -fomit-frame-pointer2018091020180818
78411020064refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018091020180818
78414944160refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2018091020180818
78616194912refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2018091020180818
78808058240refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2018091120180818
78818616320refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2018091020180818
78848702944refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2018091020180818
78854087392refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2018091120180818
78865253280refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2018091020180818
78890957824refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2018090920180818
78936804736refgcc -m32 -march=k6 -Os -fomit-frame-pointer2018090920180818
79215947136refgcc -m32 -march=nocona -Os -fomit-frame-pointer2018090920180818
79243388576refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2018090920180818
79250013792refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2018091020180818
79271699360refgcc -m32 -march=prescott -Os -fomit-frame-pointer2018091020180818
79794234112refgcc -m32 -march=i486 -Os -fomit-frame-pointer2018091020180818
79794938208refgcc -m32 -march=i386 -Os -fomit-frame-pointer2018091020180818
79949899168refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018091020180818
79959475008refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2018091020180818
80142648320refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2018090920180818
80324457920refgcc -m32 -march=nocona -O -fomit-frame-pointer2018090920180818
80377072544refgcc -m32 -march=athlon -O -fomit-frame-pointer2018090920180818
80494622432refgcc -m32 -march=barcelona -O -fomit-frame-pointer2018090920180818
80498767648refgcc -m32 -march=corei7 -O -fomit-frame-pointer2018090920180818
80536469632refgcc -m32 -march=prescott -O -fomit-frame-pointer2018091020180818
80729365312refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2018091020180818
80745448544refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018091020180818
80749168800refgcc -m32 -O -fomit-frame-pointer2018090920180818
80784216384refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2018091020180818
80899670816refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2018090920180818
80930721120refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2018090920180818
80939515520refgcc -m32 -march=k6 -O -fomit-frame-pointer2018090920180818
81265188416refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2018090920180818
81279663168refgcc -m32 -march=core2 -O -fomit-frame-pointer2018090920180818
81282767360refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2018090920180818
81366974592refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2018091020180818
81379260448refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2018090920180818
81414829280refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2018090920180818
81557506880refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2018091020180818
81692567360refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2018091020180818
81700340832refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2018091020180818
81757911616refgcc -m32 -march=i386 -O -fomit-frame-pointer2018091020180818
81803610816refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2018091020180818
81810404544refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2018091020180818
81815920864refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2018091020180818
81822511552refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2018091020180818
81998006368refgcc -m32 -march=k8 -O -fomit-frame-pointer2018090920180818
82004860288refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2018090920180818
82136785856refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2018090920180818
82159970272refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2018090920180818
82189735296refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2018091020180818
82220848864refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018090920180818
82285589184refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2018091020180818
82325085952refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2018091020180818
82347383712refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2018091020180818
82351636416refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2018091020180818
82357236096refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2018091020180818
82398163040refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2018091020180818
82406771808refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2018091020180818
82479155232refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2018091020180818
82825675936refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2018090920180818
82845512128refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2018090920180818
82853344128refgcc -m32 -march=i486 -O -fomit-frame-pointer2018091020180818
82855203392refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2018090920180818
82922007520refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2018091020180818
83014684896refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018090920180818
83200324608refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2018091020180818
83257579968refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018091020180818
83558134272refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2018091020180818
83585837536refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2018091020180818
83588422048refgcc -m32 -march=pentium -O -fomit-frame-pointer2018091020180818
83621419808refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2018091020180818
83647455008refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2018090920180818
83655060768refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018091020180818
83728184800refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2018090920180818
85265634848refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2018091020180818
85622417280refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2018090920180818
86340312352refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018090920180818
86456356928refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2018090920180818
86763214784refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2018090920180818
86792470880refgcc -m32 -march=core2 -Os -fomit-frame-pointer2018090920180818
86884266624refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2018091020180818
86895209440refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2018091020180818
87091568160refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2018091020180818
87110808992refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2018091020180818

Test failure

Implementation: crypto_sign/sphincss192shake256/ref
Compiler: gcc -m32 -O2 -fomit-frame-pointer
error 142
Alarm clock

Number of similar (compiler,implementation) pairs: 13, namely:
CompilerImplementations
gcc -m32 -O2 -fomit-frame-pointer ref
gcc -m32 -Os -fomit-frame-pointer ref
gcc -m32 -march=athlon -O2 -fomit-frame-pointer ref
gcc -m32 -march=athlon -Os -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m32 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k8 -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -O -fomit-frame-pointer ref
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer ref

Test failure

Implementation: crypto_sign/sphincss192shake256/ref
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
error 142
Alarm clock
error 142
Alarm clock

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

Compiler output

Implementation: crypto_sign/sphincss192shake256/avx2
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c: In function 'KeccakP1600times4_AddLanesAll':
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:135:40: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
KeccakP-1600-times4-SIMD256.c: #define Xor_In4( argIndex ) lanes0 = LOAD256u( curData0[argIndex]),\
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:146:9: note: in expansion of macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.c: Xor_In4( 0 );
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
KeccakP-1600-times4-SIMD256.c: from KeccakP-1600-times4-SIMD256.c:21:
KeccakP-1600-times4-SIMD256.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
KeccakP-1600-times4-SIMD256.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:55:41: error: called from here
KeccakP-1600-times4-SIMD256.c: #define XOReq256(a, b) a = _mm256_xor_si256(a, b)
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:143:33: note: in expansion of macro 'XOReq256'
KeccakP-1600-times4-SIMD256.c: XOReq256( stateAsLanes[argIndex+3], lanes3 )
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:149:9: note: in expansion of macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.c: Xor_In4( 12 );
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
KeccakP-1600-times4-SIMD256.c: from KeccakP-1600-times4-SIMD256.c:21:
KeccakP-1600-times4-SIMD256.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
KeccakP-1600-times4-SIMD256.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
KeccakP-1600-times4-SIMD256.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/sphincss192shake256/avx2
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c: In function 'KeccakP1600times4_AddLanesAll':
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:135:40: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
KeccakP-1600-times4-SIMD256.c: #define Xor_In4( argIndex ) lanes0 = LOAD256u( curData0[argIndex]),\
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:146:9: note: in expansion of macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.c: Xor_In4( 0 );
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
KeccakP-1600-times4-SIMD256.c: from KeccakP-1600-times4-SIMD256.c:21:
KeccakP-1600-times4-SIMD256.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
KeccakP-1600-times4-SIMD256.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:55:41: error: called from here
KeccakP-1600-times4-SIMD256.c: #define XOReq256(a, b) a = _mm256_xor_si256(a, b)
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:143:33: note: in expansion of macro 'XOReq256'
KeccakP-1600-times4-SIMD256.c: XOReq256( stateAsLanes[argIndex+3], lanes3 )
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:149:9: note: in expansion of macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.c: Xor_In4( 12 );
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
KeccakP-1600-times4-SIMD256.c: from KeccakP-1600-times4-SIMD256.c:21:
KeccakP-1600-times4-SIMD256.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
KeccakP-1600-times4-SIMD256.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
KeccakP-1600-times4-SIMD256.c: ...
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c: In function 'KeccakP1600times4_AddLanesAll':
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:135:40: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
KeccakP-1600-times4-SIMD256.c: #define Xor_In4( argIndex ) lanes0 = LOAD256u( curData0[argIndex]),\
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:146:9: note: in expansion of macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.c: Xor_In4( 0 );
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
KeccakP-1600-times4-SIMD256.c: from KeccakP-1600-times4-SIMD256.c:21:
KeccakP-1600-times4-SIMD256.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
KeccakP-1600-times4-SIMD256.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:55:41: error: called from here
KeccakP-1600-times4-SIMD256.c: #define XOReq256(a, b) a = _mm256_xor_si256(a, b)
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:143:33: note: in expansion of macro 'XOReq256'
KeccakP-1600-times4-SIMD256.c: XOReq256( stateAsLanes[argIndex+3], lanes3 )
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:149:9: note: in expansion of macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.c: Xor_In4( 12 );
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
KeccakP-1600-times4-SIMD256.c: from KeccakP-1600-times4-SIMD256.c:21:
KeccakP-1600-times4-SIMD256.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
KeccakP-1600-times4-SIMD256.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
KeccakP-1600-times4-SIMD256.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/sphincss192shake256/avx2
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
KeccakP-1600-times4-SIMD256.c: from KeccakP-1600-times4-SIMD256.c:21:
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c: In function 'KeccakP1600times4_AddLanesAll':
KeccakP-1600-times4-SIMD256.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
KeccakP-1600-times4-SIMD256.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:55:41: error: called from here
KeccakP-1600-times4-SIMD256.c: #define XOReq256(a, b) a = _mm256_xor_si256(a, b)
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:143:33: note: in expansion of macro 'XOReq256'
KeccakP-1600-times4-SIMD256.c: XOReq256( stateAsLanes[argIndex+3], lanes3 )
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:149:9: note: in expansion of macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.c: Xor_In4( 12 );
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
KeccakP-1600-times4-SIMD256.c: from KeccakP-1600-times4-SIMD256.c:21:
KeccakP-1600-times4-SIMD256.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
KeccakP-1600-times4-SIMD256.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:55:41: error: called from here
KeccakP-1600-times4-SIMD256.c: #define XOReq256(a, b) a = _mm256_xor_si256(a, b)
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:142:33: note: in expansion of macro 'XOReq256'
KeccakP-1600-times4-SIMD256.c: XOReq256( stateAsLanes[argIndex+2], lanes2 ),\
KeccakP-1600-times4-SIMD256.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