Implementation notes: x86, h4e450, crypto_aead/scream10v3

Computer: h4e450
Architecture: x86
CPU ID: AuthenticAMD-00500f20-178bfbff
SUPERCOP version: 20171218
Operation: crypto_aead
Primitive: scream10v3
TimeImplementationCompilerBenchmark dateSUPERCOP version
774283refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017101020170725
774939refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017101020170725
791844refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017101020170725
796418refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017101020170725
796646refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017101020170725
797216refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017101020170725
808393refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017101020170725
809784refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017101020170725
811191refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017101020170725
819090refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017101020170725
819303refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017101020170725
819698refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017101020170725
824357refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017101020170725
826139refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017101020170725
826690refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017101020170725
828263refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017101020170725
829250refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017101020170725
829625refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017101020170725
833962refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017101020170725
835876refgcc -m32 -O3 -fomit-frame-pointer2017101020170725
837444refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017101020170725
837634refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017101020170725
838561refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017101020170725
838864refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017101020170725
840119refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017101020170725
840878refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017101020170725
854729refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017101020170725
858999refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017101020170725
860648refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017101020170725
861797refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017101020170725
861930refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017101020170725
863583refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017101020170725
865616refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017101020170725
866158refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017101020170725
868988refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017101020170725
869640refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017101020170725
875159refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017101020170725
879724refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017101020170725
881771refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017101020170725
882175refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017101020170725
882641refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017101020170725
883586refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017101020170725
883970refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017101020170725
890554refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017101020170725
891328refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017101020170725
892216refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017101020170725
903707refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017101020170725
916759refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017101020170725
923846refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017101020170725
934102refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017101020170725
940642refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017101020170725
948400refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017101020170725
948475refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017101020170725
950561refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017101020170725
955363refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017101020170725
956303refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017101020170725
958588refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017101020170725
960084refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017101020170725
960098refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017101020170725
966368refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017101020170725
967219refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017101020170725
973608refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017101020170725
975878refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017101020170725
975911refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017101020170725
975968refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017101020170725
979826refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017101020170725
986295refgcc -m32 -O2 -fomit-frame-pointer2017101020170725
986589refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017101020170725
986960refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017101020170725
987744refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017101020170725
988076refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017101020170725
990014refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017101020170725
991524refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017101020170725
991652refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017101020170725
992394refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017101020170725
995277refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017101020170725
995524refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017101020170725
999048refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017101020170725
1007323refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017101020170725
1007499refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017101020170725
1007532refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017101020170725
1007713refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017101020170725
1014268refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017101020170725
1020048refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017101020170725
1022328refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017101020170725
1023088refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017101020170725
1030418refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017101020170725
1042625refgcc -m32 -march=k8 -O -fomit-frame-pointer2017101020170725
1053531refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017101020170725
1055122refgcc -m32 -march=nocona -O -fomit-frame-pointer2017101020170725
1071538refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017101020170725
1071971refgcc -m32 -march=athlon -O -fomit-frame-pointer2017101020170725
1077072refgcc -m32 -march=prescott -O -fomit-frame-pointer2017101020170725
1084311refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017101020170725
1085893refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017101020170725
1086116refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017101020170725
1090895refgcc -m32 -march=core2 -O -fomit-frame-pointer2017101020170725
1107282refgcc -m32 -O -fomit-frame-pointer2017101020170725
1114711refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017101020170725
1139691refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017101020170725
1139844refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017101020170725
1141909refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017101020170725
1147591refgcc -m32 -march=i486 -O -fomit-frame-pointer2017101020170725
1165013refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017101020170725
1165142refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017101020170725
1165963refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017101020170725
1165982refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017101020170725
1168866refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017101020170725
1168951refgcc -m32 -march=k6 -O -fomit-frame-pointer2017101020170725
1169858refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017101020170725
1171939refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017101020170725
1172547refgcc -m32 -march=pentium -O -fomit-frame-pointer2017101020170725
1173155refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017101020170725
1173478refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017101020170725
1175559refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017101020170725
1176047refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017101020170725
1176888refgcc -m32 -march=i386 -O -fomit-frame-pointer2017101020170725
1178422refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017101020170725
1178646refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017101020170725
1178936refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017101020170725
1183305refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017101020170725
1183619refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017101020170725
1211521refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017101020170725
1211986refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017101020170725
1213906refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017101020170725
1215264refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017101020170725
1218408refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017101020170725
1219477refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017101020170725
1225466refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017101020170725
1225481refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017101020170725
1227708refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017101020170725
1227718refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017101020170725
1227846refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017101020170725
1236682refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017101020170725
1237380refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017101020170725
1237399refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017101020170725
1239285refgcc -m32 -Os -fomit-frame-pointer2017101020170725
1240662refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017101020170725
1243882refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017101020170725
1245688refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017101020170725
1245749refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017101020170725
1248428refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017101020170725
1251649refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017101020170725
1251748refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017101020170725
1271418refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017101020170725
1272368refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017101020170725
1278634refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017101020170725
1281849refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017101020170725
1281878refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017101020170725
1282087refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017101020170725
1282158refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017101020170725
1282206refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017101020170725
1282529refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017101020170725
1283858refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017101020170725
1283949refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017101020170725
1285393refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017101020170725
1300996refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017101020170725
1302659refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017101020170725
1308064refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017101020170725
1308459refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017101020170725
1309518refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017101020170725

Test failure

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

Number of similar (compiler,implementation) pairs: 35, 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 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
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

Compiler output

Implementation: crypto_aead/scream10v3/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:199:10: note: in expansion of macro 'shift_right'
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^
scream.c: scream.c:199: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:200: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:202: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:202: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:203: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:207: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/scream10v3/sse
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:202: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:202: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:203: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:207: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:208: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:215: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:216: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:220: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: 44, 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=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/scream10v3/sse
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:202: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:202: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:203: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:207: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:208: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:215: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:216: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:220: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:202: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:202: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:203: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:207: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:208: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:215: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:216: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:220: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