Implementation notes: x86, kizomba, crypto_aead/iscream14v2

Computer: kizomba
Architecture: x86
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_aead
Primitive: iscream14v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
473010refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2018082220180818
474691refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2018082220180818
475869refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2018082220180818
479068refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2018082220180818
490530refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2018082220180818
491153refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2018082220180818
493686refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2018082220180818
495778refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082220180818
496159refgcc -m32 -O3 -fomit-frame-pointer2018082220180818
498063refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082220180818
501760refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2018082220180818
503720refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2018082220180818
504929refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2018082220180818
505740refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082220180818
506456refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2018082220180818
506485refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2018082220180818
507695refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2018082220180818
507836refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2018082220180818
507938refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2018082220180818
509192refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018082220180818
511875refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082220180818
512456refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2018082220180818
514665refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082220180818
514720refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082220180818
515309refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082220180818
515756refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082220180818
518244refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082220180818
520607refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082220180818
531895refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082220180818
533319refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082220180818
768446refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2018082220180818
769569refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2018082220180818
769631refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2018082220180818
769899refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2018082220180818
774054refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2018082220180818
774246refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082220180818
774692refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2018082220180818
774801refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2018082220180818
775003refgcc -funroll-loops -m32 -O -fomit-frame-pointer2018082220180818
776532refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2018082220180818
777787refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2018082220180818
780177refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2018082220180818
810496refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2018082220180818
812010refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2018082220180818
825816refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082220180818
828140refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082220180818
828222refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082220180818
828405refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082220180818
883980refgcc -m32 -march=prescott -O -fomit-frame-pointer2018082220180818
887778refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2018082220180818
888365refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2018082220180818
889004refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082220180818
890301refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2018082220180818
890667refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082220180818
891145refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2018082220180818
891423refgcc -m32 -march=core2 -O -fomit-frame-pointer2018082220180818
891945refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2018082220180818
892289refgcc -m32 -march=athlon -O -fomit-frame-pointer2018082220180818
892683refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2018082220180818
893593refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082220180818
893597refgcc -m32 -O2 -fomit-frame-pointer2018082220180818
894430refgcc -m32 -O -fomit-frame-pointer2018082220180818
894909refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2018082220180818
895040refgcc -m32 -march=barcelona -O -fomit-frame-pointer2018082220180818
895062refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2018082220180818
895219refgcc -m32 -march=corei7 -O -fomit-frame-pointer2018082220180818
895448refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2018082220180818
895771refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2018082220180818
895964refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2018082220180818
896641refgcc -m32 -march=nocona -O -fomit-frame-pointer2018082220180818
896978refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018082220180818
897093refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2018082220180818
897292refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2018082220180818
898323refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082220180818
898363refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082220180818
900129refgcc -m32 -march=k8 -O -fomit-frame-pointer2018082220180818
900556refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082220180818
901177refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2018082220180818
902294refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2018082220180818
902560refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2018082220180818
902696refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2018082220180818
902754refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2018082220180818
902952refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2018082220180818
903228refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2018082220180818
911547refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2018082220180818
916788refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082220180818
918179refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082220180818
920036refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2018082220180818
921611refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082220180818
922180refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2018082220180818
922516refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2018082220180818
922849refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2018082220180818
927181refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2018082220180818
936918refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082220180818
937591refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082220180818
938444refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082220180818
938502refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082220180818
947905refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2018082220180818
948588refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082220180818
954810refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2018082220180818
955229refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2018082220180818
956137refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2018082220180818
971913refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082220180818
972125refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2018082220180818
973325refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2018082220180818
975332refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2018082220180818
976092refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2018082220180818
978063refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2018082220180818
978347refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2018082220180818
978923refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2018082220180818
979404refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2018082220180818
979454refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2018082220180818
979574refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2018082220180818
980554refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2018082220180818
980697refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2018082220180818
980998refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2018082220180818
981983refgcc -m32 -march=athlon -Os -fomit-frame-pointer2018082220180818
982084refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2018082220180818
982437refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018082220180818
982585refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082220180818
982720refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2018082220180818
982959refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2018082220180818
983262refgcc -m32 -march=k8 -Os -fomit-frame-pointer2018082220180818
983919refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082220180818
984108refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2018082220180818
984580refgcc -m32 -march=pentium -Os -fomit-frame-pointer2018082220180818
984911refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2018082220180818
984925refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2018082220180818
984990refgcc -m32 -Os -fomit-frame-pointer2018082220180818
985375refgcc -m32 -march=k6 -O -fomit-frame-pointer2018082220180818
986860refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2018082220180818
986868refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2018082220180818
986958refgcc -m32 -march=k6 -Os -fomit-frame-pointer2018082220180818
987240refgcc -m32 -march=i486 -Os -fomit-frame-pointer2018082220180818
987677refgcc -m32 -march=i386 -Os -fomit-frame-pointer2018082220180818
988129refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082220180818
988939refgcc -m32 -march=core2 -Os -fomit-frame-pointer2018082220180818
989181refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2018082220180818
989197refgcc -m32 -march=nocona -Os -fomit-frame-pointer2018082220180818
991217refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2018082220180818
995579refgcc -m32 -march=pentium -O -fomit-frame-pointer2018082220180818
996869refgcc -m32 -march=i386 -O -fomit-frame-pointer2018082220180818
997153refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082220180818
997936refgcc -m32 -march=i486 -O -fomit-frame-pointer2018082220180818
1000683refgcc -m32 -march=prescott -Os -fomit-frame-pointer2018082220180818
1006976refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082220180818
1010587refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2018082220180818
1011510refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082220180818
1015647refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2018082220180818
1016875refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2018082220180818
1018174refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2018082220180818
1018951refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2018082220180818
1026672refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082220180818
1032144refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2018082220180818
1035383refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082220180818
1068173refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2018082220180818
1069557refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2018082220180818
1072395refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2018082220180818
1073764refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082220180818
1077321refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082220180818
1096826refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082220180818
1097778refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2018082220180818
1115583refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2018082220180818
1118232refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2018082220180818
1122107refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2018082220180818
1122670refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2018082220180818
1213790refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2018082220180818
1213791refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082220180818
1667153refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2018082220180818
1668839refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082220180818
1669646refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2018082220180818
1672782refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2018082220180818
1676403refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082220180818
1676479refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2018082220180818
1677210refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2018082220180818
1677351refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2018082220180818

Test failure

Implementation: crypto_aead/iscream14v2/sse
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 sse
gcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer sse
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer sse
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer sse
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer sse
gcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer sse
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer sse
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer 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 -O3 -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 -O3 -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 sse
gcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer sse
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer sse
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer sse
gcc -m32 -march=corei7 -O2 -fomit-frame-pointer sse
gcc -m32 -march=corei7 -O3 -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/iscream14v2/sse
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:16:32: warning: implicit declaration of function '__builtin_ia32_psrldi128'; did you mean '__builtin_ia32_bsrsi'? [-Wimplicit-function-declaration]
iscream.c: #define shift_right(x) ((v16qi)__builtin_ia32_psrldi128((v4si)x, 4))
iscream.c: ^
iscream.c: iscream.c:181:10: note: in expansion of macro 'shift_right'
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^~~~~~~~~~~
iscream.c: iscream.c:181:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^~
iscream.c: iscream.c:182:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
iscream.c: t1 = shift_right(in[2]) & V(0xf);
iscream.c: ^~
iscream.c: iscream.c:184:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_pause'? [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
iscream.c: __builtin_ia32_pause
iscream.c: iscream.c:184:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:189:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ...

Number of similar (compiler,implementation) pairs: 40, 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=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=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=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=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/iscream14v2/sse
Compiler: gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:16:32: warning: implicit declaration of function '__builtin_ia32_psrldi128'; did you mean '__builtin_ia32_psrldi'? [-Wimplicit-function-declaration]
iscream.c: #define shift_right(x) ((v16qi)__builtin_ia32_psrldi128((v4si)x, 4))
iscream.c: ^
iscream.c: iscream.c:181:10: note: in expansion of macro 'shift_right'
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^~~~~~~~~~~
iscream.c: iscream.c:181:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^~
iscream.c: iscream.c:182:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
iscream.c: t1 = shift_right(in[2]) & V(0xf);
iscream.c: ^~
iscream.c: iscream.c:184:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_pshufw'? [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
iscream.c: __builtin_ia32_pshufw
iscream.c: iscream.c:184:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:189:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ...

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
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=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 -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=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

Compiler output

Implementation: crypto_aead/iscream14v2/sse
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:184:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
iscream.c: __builtin_ia32_psubb128
iscream.c: iscream.c:184:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:189:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:197:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^~
iscream.c: iscream.c:198:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^~
iscream.c: iscream.c:202:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.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/iscream14v2/sse
Compiler: gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:16:32: warning: implicit declaration of function '__builtin_ia32_psrldi128'; did you mean '__builtin_ia32_psrldi'? [-Wimplicit-function-declaration]
iscream.c: #define shift_right(x) ((v16qi)__builtin_ia32_psrldi128((v4si)x, 4))
iscream.c: ^
iscream.c: iscream.c:181:10: note: in expansion of macro 'shift_right'
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^~~~~~~~~~~
iscream.c: iscream.c:181:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^~
iscream.c: iscream.c:182:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
iscream.c: t1 = shift_right(in[2]) & V(0xf);
iscream.c: ^~
iscream.c: iscream.c:184:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb'? [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
iscream.c: __builtin_ia32_psubb
iscream.c: iscream.c:184:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:189:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ...

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

Compiler output

Implementation: crypto_aead/iscream14v2/sse
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:184:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
iscream.c: __builtin_ia32_psubb128
iscream.c: iscream.c:184:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:189:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:197:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^~
iscream.c: iscream.c:198:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^~
iscream.c: iscream.c:202:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ...
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:184:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
iscream.c: __builtin_ia32_psubb128
iscream.c: iscream.c:184:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:189:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:197:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^~
iscream.c: iscream.c:198:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^~
iscream.c: iscream.c:202:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.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