Implementation notes: x86, h4e450, crypto_aead/scream10v1

Computer: h4e450
Architecture: x86
CPU ID: AuthenticAMD-00500f20-178bfbff
SUPERCOP version: 20171218
Operation: crypto_aead
Primitive: scream10v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
718471refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017101020170725
722798refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017101020170725
724256refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017101020170725
725629refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017101020170725
727382refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017101020170725
740406refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017101020170725
743969refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017101020170725
745897refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017101020170725
746943refgcc -m32 -O3 -fomit-frame-pointer2017101020170725
750875refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017101020170725
752191refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017101020170725
757235refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017101020170725
757587refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017101020170725
759848refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017101020170725
762071refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017101020170725
765985refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017101020170725
766850refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017101020170725
766868refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017101020170725
767771refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017101020170725
767885refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017101020170725
769548refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017101020170725
770141refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017101020170725
770692refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017101020170725
770768refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017101020170725
773310refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017101020170725
778007refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017101020170725
780060refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017101020170725
780482refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017101020170725
782544refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017101020170725
784134refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017101020170725
786267refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017101020170725
786842refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017101020170725
788006refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017101020170725
788072refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017101020170725
788771refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017101020170725
792190refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017101020170725
792224refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017101020170725
794376refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017101020170725
796219refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017101020170725
796414refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017101020170725
799349refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017101020170725
799439refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017101020170725
800309refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017101020170725
801164refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017101020170725
802256refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017101020170725
802584refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017101020170725
804669refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017101020170725
804945refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017101020170725
814592refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017101020170725
814592refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017101020170725
815447refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017101020170725
820330refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017101020170725
825545refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017101020170725
825602refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017101020170725
832048refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017101020170725
832333refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017101020170725
841406refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017101020170725
843676refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017101020170725
844241refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017101020170725
845500refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017101020170725
846199refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017101020170725
850302refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017101020170725
874827refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017101020170725
878522refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017101020170725
884887refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017101020170725
893713refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017101020170725
898871refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017101020170725
899185refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017101020170725
899403refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017101020170725
901844refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017101020170725
909088refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017101020170725
910020refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017101020170725
925695refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017101020170725
925799refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017101020170725
943678refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017101020170725
944961refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017101020170725
947045refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017101020170725
952052refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017101020170725
954237refgcc -m32 -O2 -fomit-frame-pointer2017101020170725
960250refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017101020170725
961134refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017101020170725
961315refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017101020170725
967518refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017101020170725
976472refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017101020170725
976476refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017101020170725
988637refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017101020170725
997662refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017101020170725
1016410refgcc -m32 -march=nocona -O -fomit-frame-pointer2017101020170725
1017450refgcc -m32 -march=prescott -O -fomit-frame-pointer2017101020170725
1021787refgcc -m32 -march=athlon -O -fomit-frame-pointer2017101020170725
1023255refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017101020170725
1036726refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017101020170725
1044439refgcc -m32 -O -fomit-frame-pointer2017101020170725
1046316refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017101020170725
1049821refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017101020170725
1053198refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017101020170725
1053669refgcc -m32 -march=k8 -O -fomit-frame-pointer2017101020170725
1054534refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017101020170725
1056243refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017101020170725
1061933refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017101020170725
1062432refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017101020170725
1066394refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017101020170725
1067538refgcc -m32 -march=core2 -O -fomit-frame-pointer2017101020170725
1073618refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017101020170725
1077362refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017101020170725
1079547refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017101020170725
1079888refgcc -m32 -march=i386 -O -fomit-frame-pointer2017101020170725
1083841refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017101020170725
1083931refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017101020170725
1084197refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017101020170725
1087279refgcc -m32 -march=i486 -O -fomit-frame-pointer2017101020170725
1087602refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017101020170725
1092680refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017101020170725
1092761refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017101020170725
1100894refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017101020170725
1100894refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017101020170725
1104712refgcc -m32 -march=pentium -O -fomit-frame-pointer2017101020170725
1110464refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017101020170725
1112118refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017101020170725
1112127refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017101020170725
1120240refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017101020170725
1120943refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017101020170725
1134049refgcc -m32 -march=k6 -O -fomit-frame-pointer2017101020170725
1135027refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017101020170725
1135577refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017101020170725
1135706refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017101020170725
1136352refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017101020170725
1136694refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017101020170725
1136751refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017101020170725
1136903refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017101020170725
1136970refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017101020170725
1137687refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017101020170725
1138157refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017101020170725
1138832refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017101020170725
1144987refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017101020170725
1149382refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017101020170725
1152644refgcc -m32 -Os -fomit-frame-pointer2017101020170725
1153148refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017101020170725
1153404refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017101020170725
1154668refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017101020170725
1156972refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017101020170725
1157205refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017101020170725
1157366refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017101020170725
1158003refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017101020170725
1159067refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017101020170725
1159556refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017101020170725
1175516refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017101020170725
1176313refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017101020170725
1176361refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017101020170725
1177345refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017101020170725
1182366refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017101020170725
1182460refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017101020170725
1183168refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017101020170725
1239731refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017101020170725
1244410refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017101020170725
1244429refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017101020170725
1252932refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017101020170725
1257605refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017101020170725
1260018refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017101020170725
1260037refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017101020170725
1263015refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017101020170725

Test failure

Implementation: crypto_aead/scream10v1/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/scream10v1/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/scream10v1/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: 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/scream10v1/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