Implementation notes: x86, titan0, crypto_aead/iscream14v1

Computer: titan0
Architecture: x86
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20190803
Operation: crypto_aead
Primitive: iscream14v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
524632refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
525720refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
526616refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
527460refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
543576refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2019070720190110
545976refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2019070720190110
552416refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
553136refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
555284refgcc -m32 -O3 -fomit-frame-pointer2019070720190110
561168refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2019070720190110
562124refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
562484refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
563668refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
565544refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019070720190110
565868refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019070720190110
567836refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
572440refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070720190110
577928refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070720190110
578928refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019070720190110
579276refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070720190110
579396refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070720190110
579440refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019070720190110
580212refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070720190110
580916refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019070720190110
581520refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019070720190110
582020refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2019070720190110
582104refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019070720190110
582168refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
588752refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
589328refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070720190110
856860refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2019070720190110
857612refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2019070720190110
859044refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
860244refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
860272refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
861460refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
862644refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2019070720190110
863452refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
863832refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
865640refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
868056refgcc -funroll-loops -m32 -O -fomit-frame-pointer2019070720190110
908904refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
909636refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
909772refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
927464refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070720190110
927664refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070720190110
927964refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
928256refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070720190110
935448refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070720190110
938128refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2019070720190110
961348refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2019070720190110
964152refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070720190110
995668refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
996556refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2019070720190110
996732refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2019070720190110
1000540refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2019070720190110
1009300refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2019070720190110
1012796refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2019070720190110
1012872refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2019070720190110
1016168refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2019070720190110
1016448refgcc -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
1018296refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
1018820refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
1018984refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2019070720190110
1019216refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070720190110
1020044refgcc -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
1020616refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070720190110
1021128refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
1024068refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2019070720190110
1029224refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
1031804refgcc -m32 -O -fomit-frame-pointer2019070720190110
1032280refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019070720190110
1032980refgcc -m32 -march=corei7 -O -fomit-frame-pointer2019070720190110
1034224refgcc -m32 -march=core2 -O -fomit-frame-pointer2019070720190110
1034368refgcc -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
1034584refgcc -m32 -O2 -fomit-frame-pointer2019070720190110
1035080refgcc -m32 -march=athlon -O -fomit-frame-pointer2019070720190110
1035160refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019070720190110
1035676refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019070720190110
1035824refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019070720190110
1036288refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019070720190110
1037024refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019070720190110
1037208refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019070720190110
1037976refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019070720190110
1038008refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019070720190110
1038180refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019070720190110
1038188refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070720190110
1038412refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
1038432refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019070720190110
1038884refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019070720190110
1038960refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2019070720190110
1040448refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070720190110
1040536refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
1041112refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019070720190110
1041504refgcc -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
1042440refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2019070720190110
1043040refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2019070720190110
1050808refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2019070720190110
1051460refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070720190110
1053432refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070720190110
1055508refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070720190110
1056976refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070720190110
1058152refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
1060000refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2019070720190110
1060644refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070720190110
1061156refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070720190110
1075220refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2019070720190110
1084880refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2019070720190110
1097240refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
1097536refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2019070720190110
1098296refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2019070720190110
1098520refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2019070720190110
1133636refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019070720190110
1133812refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2019070720190110
1134116refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2019070720190110
1134508refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2019070720190110
1134992refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2019070720190110
1135064refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2019070720190110
1138848refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2019070720190110
1141168refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2019070720190110
1141560refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2019070720190110
1142256refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2019070720190110
1142324refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2019070720190110
1142724refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2019070720190110
1142844refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2019070720190110
1143008refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2019070720190110
1143240refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2019070720190110
1143452refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2019070720190110
1144324refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2019070720190110
1144492refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019070720190110
1144900refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2019070720190110
1144984refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2019070720190110
1145096refgcc -m32 -march=pentium -Os -fomit-frame-pointer2019070720190110
1145100refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2019070720190110
1145452refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2019070720190110
1145632refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2019070720190110
1145884refgcc -m32 -march=k8 -Os -fomit-frame-pointer2019070720190110
1146312refgcc -m32 -march=core2 -Os -fomit-frame-pointer2019070720190110
1147004refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2019070720190110
1149856refgcc -m32 -march=athlon -Os -fomit-frame-pointer2019070720190110
1150624refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2019070720190110
1150820refgcc -m32 -march=nocona -Os -fomit-frame-pointer2019070720190110
1151216refgcc -m32 -Os -fomit-frame-pointer2019070720190110
1151232refgcc -m32 -march=k6 -Os -fomit-frame-pointer2019070720190110
1151332refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2019070720190110
1151852refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2019070720190110
1152124refgcc -m32 -march=i486 -Os -fomit-frame-pointer2019070720190110
1152344refgcc -m32 -march=i386 -Os -fomit-frame-pointer2019070720190110
1152700refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2019070720190110
1154452refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2019070720190110
1155528refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2019070720190110
1156192refgcc -m32 -march=prescott -Os -fomit-frame-pointer2019070720190110
1156448refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2019070720190110
1160616refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2019070720190110
1164688refgcc -m32 -march=k6 -O -fomit-frame-pointer2019070720190110
1170496refgcc -m32 -march=i386 -O -fomit-frame-pointer2019070720190110
1176436refgcc -m32 -march=i486 -O -fomit-frame-pointer2019070720190110
1181052refgcc -m32 -march=pentium -O -fomit-frame-pointer2019070720190110
1181572refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070720190110
1202576refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070720190110
1204160refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2019070720190110
1240396refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2019070720190110
1241820refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2019070720190110
1248256refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070720190110
1250348refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070720190110
1251656refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2019070720190110
1361992refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070720190110
1364688refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2019070720190110
1780792refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2019070720190110
1781052refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2019070720190110
1781528refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2019070720190110
1782848refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2019070720190110
1801344refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2019070720190110
1807828refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2019070720190110
1808084refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2019070720190110
1808652refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2019070720190110

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