Implementation notes: x86, hydra1, crypto_aead/scream12v2

Computer: hydra1
Architecture: x86
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20161220
Operation: crypto_aead
Primitive: scream12v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
646621refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2016102320161009
646880refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2016102320161009
647966refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2016102320161009
661581refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2016102320161009
669229refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2016102320161009
670407refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2016102320161009
676497refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2016102320161009
677827refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2016102320161009
679676refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2016102320161009
681762refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2016102320161009
686232refgcc -m32 -O3 -fomit-frame-pointer2016102320161009
689733refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2016102320161009
689968refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2016102320161009
694328refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2016102320161009
696176refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2016102320161009
697646refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2016102320161009
697850refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2016102320161009
697890refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2016102320161009
698013refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2016102320161009
698832refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2016102320161009
699418refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2016102320161009
699464refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2016102320161009
699971refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2016102320161009
700203refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2016102320161009
710549refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2016102320161009
712699refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2016102320161009
727941refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2016102320161009
728000refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2016102320161009
732539refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2016102320161009
733010refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2016102320161009
734344refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2016102320161009
742651refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2016102320161009
744340refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2016102320161009
749125refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2016102320161009
750890refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2016102320161009
751646refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2016102320161009
759557refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2016102320161009
760511refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2016102320161009
766414refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2016102320161009
766807refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2016102320161009
767896refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2016102320161009
769839refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2016102320161009
775250refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2016102320161009
775822refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2016102320161009
776537refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2016102320161009
776736refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2016102320161009
776896refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2016102320161009
778904refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2016102320161009
779914refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2016102320161009
785552refgcc -funroll-loops -m32 -O -fomit-frame-pointer2016102320161009
790325refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2016102320161009
790470refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2016102320161009
794107refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2016102320161009
795596refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2016102320161009
797466refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2016102320161009
797502refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2016102320161009
797872refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2016102320161009
798106refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2016102320161009
816101refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2016102320161009
820213refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2016102320161009
820350refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2016102320161009
828112refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2016102320161009
828632refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2016102320161009
828743refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2016102320161009
830867refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2016102320161009
852885refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2016102320161009
852917refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2016102320161009
853147refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2016102320161009
856250refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2016102320161009
860051refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2016102320161009
860885refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2016102320161009
863430refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2016102320161009
944287refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2016102320161009
1137480refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2016102320161009
1142832refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016102320161009
1143310refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2016102320161009
1143736refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2016102320161009
1149664refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2016102320161009
1151856refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2016102320161009
1152043refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2016102320161009
1156240refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2016102320161009
1156989refgcc -m32 -O2 -fomit-frame-pointer2016102320161009
1158381refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2016102320161009
1161456refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2016102320161009
1164194refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2016102320161009
1177114refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2016102320161009
1177215refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2016102320161009
1182277refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2016102320161009
1188422refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2016102320161009
1208792refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2016102320161009
1209048refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2016102320161009
1209847refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2016102320161009
1209934refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2016102320161009
1213198refgcc -m32 -march=nocona -O -fomit-frame-pointer2016102320161009
1213235refgcc -m32 -march=prescott -O -fomit-frame-pointer2016102320161009
1213370refgcc -m32 -march=k8 -O -fomit-frame-pointer2016102320161009
1222991refgcc -m32 -march=corei7 -O -fomit-frame-pointer2016102320161009
1223469refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2016102320161009
1223486refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2016102320161009
1223491refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2016102320161009
1225706refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2016102320161009
1228192refgcc -m32 -O -fomit-frame-pointer2016102320161009
1229141refgcc -m32 -march=athlon -O -fomit-frame-pointer2016102320161009
1230752refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2016102320161009
1231168refgcc -m32 -march=i486 -O -fomit-frame-pointer2016102320161009
1235291refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2016102320161009
1235827refgcc -m32 -march=core2 -O -fomit-frame-pointer2016102320161009
1236610refgcc -m32 -march=barcelona -O -fomit-frame-pointer2016102320161009
1236702refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2016102320161009
1241901refgcc -m32 -march=i386 -O -fomit-frame-pointer2016102320161009
1247686refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2016102320161009
1249277refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2016102320161009
1249829refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2016102320161009
1252034refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2016102320161009
1252936refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2016102320161009
1253066refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2016102320161009
1253216refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2016102320161009
1253282refgcc -m32 -march=nocona -Os -fomit-frame-pointer2016102320161009
1253357refgcc -m32 -march=prescott -Os -fomit-frame-pointer2016102320161009
1254032refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2016102320161009
1254077refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2016102320161009
1256160refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2016102320161009
1256883refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2016102320161009
1258106refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2016102320161009
1258248refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2016102320161009
1260354refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2016102320161009
1260672refgcc -m32 -march=i386 -Os -fomit-frame-pointer2016102320161009
1262021refgcc -m32 -march=i486 -Os -fomit-frame-pointer2016102320161009
1263000refgcc -m32 -Os -fomit-frame-pointer2016102320161009
1263125refgcc -m32 -march=athlon -Os -fomit-frame-pointer2016102320161009
1263144refgcc -m32 -march=k6 -O -fomit-frame-pointer2016102320161009
1263277refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2016102320161009
1263310refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2016102320161009
1264420refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2016102320161009
1264533refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016102320161009
1266070refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2016102320161009
1266650refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2016102320161009
1267464refgcc -m32 -march=k8 -Os -fomit-frame-pointer2016102320161009
1267704refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2016102320161009
1268064refgcc -m32 -march=core2 -Os -fomit-frame-pointer2016102320161009
1271000refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2016102320161009
1271022refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2016102320161009
1272066refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2016102320161009
1272104refgcc -m32 -march=k6 -Os -fomit-frame-pointer2016102320161009
1272480refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2016102320161009
1274453refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2016102320161009
1275206refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2016102320161009
1275619refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2016102320161009
1277227refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2016102320161009
1279054refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2016102320161009
1287759refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2016102320161009
1287808refgcc -m32 -march=pentium -O -fomit-frame-pointer2016102320161009
1291261refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2016102320161009
1291566refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2016102320161009
1299101refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2016102320161009
1300142refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2016102320161009
1300237refgcc -m32 -march=pentium -Os -fomit-frame-pointer2016102320161009
1303652refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2016102320161009
1308658refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2016102320161009
1309771refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2016102320161009

Test failure

Implementation: crypto_aead/scream12v2/ref
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 32, namely:
CompilerImplementations
gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer ref sse
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer ref sse
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer ref sse
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer ref sse
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer ref sse
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer ref sse
gcc -m32 -march=core2 -O2 -fomit-frame-pointer sse
gcc -m32 -march=core2 -O3 -fomit-frame-pointer ref sse
gcc -m32 -march=core2 -O -fomit-frame-pointer sse
gcc -m32 -march=core2 -Os -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer sse
gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer ref sse
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer ref sse
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer ref sse
gcc -m32 -march=corei7 -O2 -fomit-frame-pointer sse
gcc -m32 -march=corei7 -O -fomit-frame-pointer sse
gcc -m32 -march=corei7 -Os -fomit-frame-pointer sse

Compiler output

Implementation: crypto_aead/scream12v2/sse
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:16:32: warning: implicit declaration of function '__builtin_ia32_psrldi128' [-Wimplicit-function-declaration]
scream.c: #define shift_right(x) ((v16qi)__builtin_ia32_psrldi128((v4si)x, 4))
scream.c: ^
scream.c: scream.c:182:10: note: in expansion of macro 'shift_right'
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^
scream.c: scream.c:182:5: error: can't convert between vector values of different size
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^
scream.c: scream.c:183:5: error: can't convert between vector values of different size
scream.c: t1 = shift_right(in[2]) & V(0xf);
scream.c: ^
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: C = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: B = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: ...

Number of similar (compiler,implementation) pairs: 96, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer sse
gcc -m32 -O2 -fomit-frame-pointer sse
gcc -m32 -O3 -fomit-frame-pointer sse
gcc -m32 -O -fomit-frame-pointer sse
gcc -m32 -Os -fomit-frame-pointer sse
gcc -m32 -march=athlon -O2 -fomit-frame-pointer sse
gcc -m32 -march=athlon -O3 -fomit-frame-pointer sse
gcc -m32 -march=athlon -O -fomit-frame-pointer sse
gcc -m32 -march=athlon -Os -fomit-frame-pointer sse
gcc -m32 -march=i386 -O2 -fomit-frame-pointer sse
gcc -m32 -march=i386 -O3 -fomit-frame-pointer sse
gcc -m32 -march=i386 -O -fomit-frame-pointer sse
gcc -m32 -march=i386 -Os -fomit-frame-pointer sse
gcc -m32 -march=i486 -O2 -fomit-frame-pointer sse
gcc -m32 -march=i486 -O3 -fomit-frame-pointer sse
gcc -m32 -march=i486 -O -fomit-frame-pointer sse
gcc -m32 -march=i486 -Os -fomit-frame-pointer sse
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer sse
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer sse
gcc -m32 -march=k6-2 -O -fomit-frame-pointer sse
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer sse
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer sse
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer sse
gcc -m32 -march=k6-3 -O -fomit-frame-pointer sse
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer sse
gcc -m32 -march=k6 -O2 -fomit-frame-pointer sse
gcc -m32 -march=k6 -O3 -fomit-frame-pointer sse
gcc -m32 -march=k6 -O -fomit-frame-pointer sse
gcc -m32 -march=k6 -Os -fomit-frame-pointer sse
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer sse
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer sse
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentium2 -O -fomit-frame-pointer sse
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer sse
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentium3 -O -fomit-frame-pointer sse
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer sse
gcc -m32 -march=pentium -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentium -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentium -O -fomit-frame-pointer sse
gcc -m32 -march=pentium -Os -fomit-frame-pointer sse
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentiumpro -O -fomit-frame-pointer sse
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer sse

Compiler output

Implementation: crypto_aead/scream12v2/sse
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: C = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: B = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:191:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: D = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:198:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:199:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: scream.c:203:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: ...

Number of similar (compiler,implementation) pairs: 48, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer sse
gcc -m32 -march=k8 -O2 -fomit-frame-pointer sse
gcc -m32 -march=k8 -O3 -fomit-frame-pointer sse
gcc -m32 -march=k8 -O -fomit-frame-pointer sse
gcc -m32 -march=k8 -Os -fomit-frame-pointer sse
gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer sse
gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer sse
gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer sse
gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer sse
gcc -m32 -march=nocona -O2 -fomit-frame-pointer sse
gcc -m32 -march=nocona -O3 -fomit-frame-pointer sse
gcc -m32 -march=nocona -O -fomit-frame-pointer sse
gcc -m32 -march=nocona -Os -fomit-frame-pointer sse
gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentium-m -O -fomit-frame-pointer sse
gcc -m32 -march=pentium-m -Os -fomit-frame-pointer sse
gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentium4 -O -fomit-frame-pointer sse
gcc -m32 -march=pentium4 -Os -fomit-frame-pointer sse
gcc -m32 -march=prescott -O2 -fomit-frame-pointer sse
gcc -m32 -march=prescott -O3 -fomit-frame-pointer sse
gcc -m32 -march=prescott -O -fomit-frame-pointer sse
gcc -m32 -march=prescott -Os -fomit-frame-pointer sse

Compiler output

Implementation: crypto_aead/scream12v2/sse
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: C = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: B = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:191:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: D = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:198:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:199:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: scream.c:203:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: ...
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: C = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: B = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:191:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: D = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:198:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:199:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: scream.c:203:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: ...

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