Implementation notes: x86, kizomba, crypto_aead/iscream14v1

Computer: kizomba
Architecture: x86
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_aead
Primitive: iscream14v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
473365refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2018082220180818
473936refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2018082220180818
475990refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2018082220180818
481301refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2018082220180818
490225refgcc -m32 -O3 -fomit-frame-pointer2018082220180818
490292refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2018082220180818
492336refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2018082220180818
493286refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2018082220180818
495992refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082220180818
498593refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082220180818
501373refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2018082220180818
502046refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2018082220180818
503942refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2018082220180818
504057refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2018082220180818
506806refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082220180818
506932refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2018082220180818
508519refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2018082220180818
508815refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018082220180818
508952refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2018082220180818
510543refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2018082220180818
510879refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082220180818
511690refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2018082220180818
513800refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082220180818
514629refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082220180818
514635refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082220180818
514901refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082220180818
514943refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082220180818
526037refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082220180818
526274refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082220180818
531282refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082220180818
766164refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2018082220180818
771297refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2018082220180818
771544refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2018082220180818
773644refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2018082220180818
774779refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2018082220180818
776672refgcc -funroll-loops -m32 -O -fomit-frame-pointer2018082220180818
776857refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2018082220180818
776984refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2018082220180818
777188refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2018082220180818
778353refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2018082220180818
779379refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082220180818
780397refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2018082220180818
811057refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2018082220180818
811780refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2018082220180818
826449refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082220180818
826539refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082220180818
826756refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082220180818
826905refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082220180818
885470refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2018082220180818
886691refgcc -m32 -march=nocona -O -fomit-frame-pointer2018082220180818
888794refgcc -m32 -march=barcelona -O -fomit-frame-pointer2018082220180818
889015refgcc -m32 -march=prescott -O -fomit-frame-pointer2018082220180818
889982refgcc -m32 -O -fomit-frame-pointer2018082220180818
891004refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082220180818
891435refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2018082220180818
892100refgcc -m32 -O2 -fomit-frame-pointer2018082220180818
892677refgcc -m32 -march=corei7 -O -fomit-frame-pointer2018082220180818
892851refgcc -m32 -march=core2 -O -fomit-frame-pointer2018082220180818
893082refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2018082220180818
893524refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082220180818
893776refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2018082220180818
894830refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2018082220180818
895019refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2018082220180818
895998refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082220180818
896002refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018082220180818
896496refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2018082220180818
897437refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2018082220180818
897496refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2018082220180818
897810refgcc -m32 -march=athlon -O -fomit-frame-pointer2018082220180818
898365refgcc -m32 -march=k8 -O -fomit-frame-pointer2018082220180818
898514refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082220180818
898861refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2018082220180818
899724refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2018082220180818
899827refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2018082220180818
899966refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082220180818
900444refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2018082220180818
900622refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2018082220180818
902629refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2018082220180818
902810refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2018082220180818
902919refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2018082220180818
903867refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2018082220180818
904063refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2018082220180818
909792refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2018082220180818
911833refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082220180818
915170refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2018082220180818
915514refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2018082220180818
917702refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082220180818
920107refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082220180818
921601refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2018082220180818
921608refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2018082220180818
921973refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2018082220180818
925168refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082220180818
929270refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2018082220180818
936837refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082220180818
937287refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082220180818
937456refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082220180818
937560refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082220180818
947913refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2018082220180818
949772refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082220180818
953354refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2018082220180818
955045refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2018082220180818
955282refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2018082220180818
971960refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2018082220180818
973722refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082220180818
973732refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2018082220180818
975441refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2018082220180818
976180refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2018082220180818
976583refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2018082220180818
976788refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2018082220180818
977644refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2018082220180818
978107refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2018082220180818
978250refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2018082220180818
978379refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2018082220180818
979246refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2018082220180818
979557refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2018082220180818
982000refgcc -m32 -march=athlon -Os -fomit-frame-pointer2018082220180818
982563refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2018082220180818
982572refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082220180818
982839refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082220180818
982860refgcc -m32 -march=k6 -O -fomit-frame-pointer2018082220180818
982921refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2018082220180818
983132refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2018082220180818
983246refgcc -m32 -Os -fomit-frame-pointer2018082220180818
983341refgcc -m32 -march=pentium -Os -fomit-frame-pointer2018082220180818
983591refgcc -m32 -march=core2 -Os -fomit-frame-pointer2018082220180818
983678refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2018082220180818
984564refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2018082220180818
985369refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2018082220180818
985556refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018082220180818
985742refgcc -m32 -march=nocona -Os -fomit-frame-pointer2018082220180818
986125refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2018082220180818
986332refgcc -m32 -march=k8 -Os -fomit-frame-pointer2018082220180818
986961refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2018082220180818
986980refgcc -m32 -march=i486 -Os -fomit-frame-pointer2018082220180818
988047refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082220180818
988100refgcc -m32 -march=i386 -Os -fomit-frame-pointer2018082220180818
988373refgcc -m32 -march=k6 -Os -fomit-frame-pointer2018082220180818
988554refgcc -m32 -march=prescott -Os -fomit-frame-pointer2018082220180818
988579refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2018082220180818
988603refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2018082220180818
992246refgcc -m32 -march=i386 -O -fomit-frame-pointer2018082220180818
994087refgcc -m32 -march=pentium -O -fomit-frame-pointer2018082220180818
994103refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2018082220180818
995435refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082220180818
996732refgcc -m32 -march=i486 -O -fomit-frame-pointer2018082220180818
1004875refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082220180818
1006379refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2018082220180818
1006984refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082220180818
1014865refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2018082220180818
1016772refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2018082220180818
1020948refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2018082220180818
1023125refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2018082220180818
1029710refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082220180818
1030861refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082220180818
1038387refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2018082220180818
1069843refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2018082220180818
1070447refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2018082220180818
1075957refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082220180818
1079105refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2018082220180818
1081478refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082220180818
1102502refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2018082220180818
1105917refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082220180818
1111393refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2018082220180818
1123329refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2018082220180818
1128472refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2018082220180818
1130141refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2018082220180818
1211004refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082220180818
1212919refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2018082220180818
1661012refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2018082220180818
1664855refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082220180818
1665732refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2018082220180818
1667956refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2018082220180818
1676381refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082220180818
1676718refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2018082220180818
1677139refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2018082220180818
1683095refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2018082220180818

Test failure

Implementation: crypto_aead/iscream14v1/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/iscream14v1/sse
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:17: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:200:10: note: in expansion of macro 'shift_right'
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^~~~~~~~~~~
iscream.c: iscream.c:200: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:201: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:203: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:203: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:204: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:208: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/iscream14v1/sse
Compiler: gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:17: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:200:10: note: in expansion of macro 'shift_right'
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^~~~~~~~~~~
iscream.c: iscream.c:200: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:201: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:203: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:203: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:204: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:208: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/iscream14v1/sse
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:203: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:203: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:204: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:208: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:209: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:216: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:217: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:221: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/iscream14v1/sse
Compiler: gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:17: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:200:10: note: in expansion of macro 'shift_right'
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^~~~~~~~~~~
iscream.c: iscream.c:200: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:201: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:203: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:203: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:204: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:208: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/iscream14v1/sse
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:203: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:203: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:204: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:208: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:209: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:216: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:217: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:221: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:203: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:203: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:204: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:208: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:209: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:216: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:217: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:221: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