Implementation notes: x86, titan0, crypto_aead/iscream14v2

Computer: titan0
Architecture: x86
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20190803
Operation: crypto_aead
Primitive: iscream14v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
524500refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
524708refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
525508refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
527284refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
547884refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2019070720190110
548508refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2019070720190110
550500refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
550520refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
557864refgcc -m32 -O3 -fomit-frame-pointer2019070720190110
558556refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2019070720190110
560764refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
560804refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
561148refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
561500refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
565420refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019070720190110
567568refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019070720190110
569988refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019070720190110
572668refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070720190110
576460refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070720190110
577548refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070720190110
578884refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019070720190110
579348refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2019070720190110
579848refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019070720190110
580028refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019070720190110
580640refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019070720190110
581740refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070720190110
583252refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
583536refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070720190110
588828refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070720190110
589076refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
858808refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2019070720190110
859624refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
859640refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
859900refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
860100refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
860832refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2019070720190110
861240refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2019070720190110
861440refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
864476refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
864516refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
866880refgcc -funroll-loops -m32 -O -fomit-frame-pointer2019070720190110
872988refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
909208refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
910908refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
926552refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070720190110
927028refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070720190110
927240refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
928612refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070720190110
933864refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070720190110
933864refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2019070720190110
961176refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2019070720190110
963932refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070720190110
995076refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
995336refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2019070720190110
996160refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2019070720190110
997640refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2019070720190110
1003996refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2019070720190110
1013028refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2019070720190110
1013284refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
1014276refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2019070720190110
1014352refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2019070720190110
1015156refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
1016760refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
1021156refgcc -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
1022376refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070720190110
1022408refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2019070720190110
1023000refgcc -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
1024048refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070720190110
1024856refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2019070720190110
1026252refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
1031344refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019070720190110
1034152refgcc -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
1034204refgcc -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
1034216refgcc -m32 -march=core2 -O -fomit-frame-pointer2019070720190110
1035100refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019070720190110
1035672refgcc -m32 -march=corei7 -O -fomit-frame-pointer2019070720190110
1035848refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019070720190110
1036036refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019070720190110
1036188refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2019070720190110
1036584refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019070720190110
1036608refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070720190110
1036748refgcc -m32 -O -fomit-frame-pointer2019070720190110
1036756refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019070720190110
1036800refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019070720190110
1036956refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019070720190110
1037156refgcc -m32 -march=athlon -O -fomit-frame-pointer2019070720190110
1037196refgcc -m32 -O2 -fomit-frame-pointer2019070720190110
1037332refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019070720190110
1037488refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
1038252refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070720190110
1039516refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
1040024refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019070720190110
1040344refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019070720190110
1040632refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019070720190110
1040792refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2019070720190110
1041340refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019070720190110
1042184refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2019070720190110
1049056refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2019070720190110
1051940refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070720190110
1053016refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070720190110
1053584refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070720190110
1053676refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070720190110
1055828refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
1060708refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070720190110
1064272refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2019070720190110
1064324refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070720190110
1071708refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2019070720190110
1086600refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2019070720190110
1096304refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
1097888refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2019070720190110
1098300refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2019070720190110
1098672refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2019070720190110
1130516refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2019070720190110
1131940refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019070720190110
1132064refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2019070720190110
1136480refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2019070720190110
1136984refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2019070720190110
1137772refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2019070720190110
1139236refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2019070720190110
1139632refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2019070720190110
1143084refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2019070720190110
1143516refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2019070720190110
1143832refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2019070720190110
1144732refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2019070720190110
1144956refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2019070720190110
1145240refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2019070720190110
1145852refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2019070720190110
1145892refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2019070720190110
1146020refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2019070720190110
1146204refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2019070720190110
1146236refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2019070720190110
1146368refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2019070720190110
1147224refgcc -m32 -march=athlon -Os -fomit-frame-pointer2019070720190110
1147408refgcc -m32 -march=core2 -Os -fomit-frame-pointer2019070720190110
1147528refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2019070720190110
1147552refgcc -m32 -march=pentium -Os -fomit-frame-pointer2019070720190110
1148072refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019070720190110
1148448refgcc -m32 -Os -fomit-frame-pointer2019070720190110
1150084refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2019070720190110
1150672refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2019070720190110
1150752refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2019070720190110
1151376refgcc -m32 -march=k6 -Os -fomit-frame-pointer2019070720190110
1151508refgcc -m32 -march=k8 -Os -fomit-frame-pointer2019070720190110
1151816refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2019070720190110
1152688refgcc -m32 -march=nocona -Os -fomit-frame-pointer2019070720190110
1153072refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2019070720190110
1154400refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2019070720190110
1155048refgcc -m32 -march=i386 -Os -fomit-frame-pointer2019070720190110
1155224refgcc -m32 -march=prescott -Os -fomit-frame-pointer2019070720190110
1156360refgcc -m32 -march=i486 -Os -fomit-frame-pointer2019070720190110
1156668refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2019070720190110
1157252refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2019070720190110
1157448refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2019070720190110
1159376refgcc -m32 -march=k6 -O -fomit-frame-pointer2019070720190110
1159740refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2019070720190110
1168524refgcc -m32 -march=i386 -O -fomit-frame-pointer2019070720190110
1172664refgcc -m32 -march=i486 -O -fomit-frame-pointer2019070720190110
1184292refgcc -m32 -march=pentium -O -fomit-frame-pointer2019070720190110
1188328refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070720190110
1200204refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070720190110
1204904refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2019070720190110
1243268refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2019070720190110
1243596refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2019070720190110
1248252refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070720190110
1249324refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070720190110
1251708refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2019070720190110
1360212refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070720190110
1360352refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2019070720190110
1777660refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2019070720190110
1777664refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2019070720190110
1779796refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2019070720190110
1790168refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2019070720190110
1798364refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2019070720190110
1800440refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2019070720190110
1807380refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2019070720190110
1810100refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2019070720190110

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