Implementation notes: x86, titan0, crypto_aead/iscream12v1

Computer: titan0
Architecture: x86
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20190803
Operation: crypto_aead
Primitive: iscream12v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
459860refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
460496refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
463956refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
467376refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
473624refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2019070720190110
477004refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2019070720190110
481856refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2019070720190110
484008refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
484308refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
485364refgcc -m32 -O3 -fomit-frame-pointer2019070720190110
488580refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
491676refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
492740refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
493940refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019070720190110
494084refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
496184refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019070720190110
496240refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070720190110
496240refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070720190110
501640refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019070720190110
502072refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019070720190110
503064refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070720190110
505116refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070720190110
507308refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019070720190110
507616refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019070720190110
508448refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019070720190110
509884refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2019070720190110
511692refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
514224refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
515312refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070720190110
517772refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070720190110
741664refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2019070720190110
743528refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2019070720190110
743852refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
744212refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
745640refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
745764refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
746760refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
746952refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
747292refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2019070720190110
747376refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
747568refgcc -funroll-loops -m32 -O -fomit-frame-pointer2019070720190110
755976refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
786572refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
788240refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
801632refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
802200refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070720190110
802900refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070720190110
803252refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070720190110
808200refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070720190110
808908refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2019070720190110
833776refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070720190110
833908refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2019070720190110
860532refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2019070720190110
860852refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
863476refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2019070720190110
864248refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2019070720190110
864696refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2019070720190110
876056refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2019070720190110
876908refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2019070720190110
879740refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2019070720190110
882200refgcc -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
882840refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
883408refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
885064refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
886176refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2019070720190110
887184refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
890120refgcc -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
890648refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2019070720190110
891608refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070720190110
892348refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070720190110
892564refgcc -m32 -O -fomit-frame-pointer2019070720190110
894584refgcc -m32 -march=athlon -O -fomit-frame-pointer2019070720190110
897224refgcc -m32 -march=corei7 -O -fomit-frame-pointer2019070720190110
897340refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019070720190110
897716refgcc -m32 -O2 -fomit-frame-pointer2019070720190110
897776refgcc -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
898120refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019070720190110
898244refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019070720190110
898604refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019070720190110
898696refgcc -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
898760refgcc -m32 -march=core2 -O -fomit-frame-pointer2019070720190110
899044refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019070720190110
899968refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2019070720190110
900108refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070720190110
900284refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
900312refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019070720190110
900644refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019070720190110
900720refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
900768refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070720190110
900904refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019070720190110
901092refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019070720190110
901664refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019070720190110
902404refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2019070720190110
902544refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2019070720190110
903400refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019070720190110
906348refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019070720190110
906588refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019070720190110
908368refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2019070720190110
908704refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070720190110
911932refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070720190110
913328refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
914140refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070720190110
914884refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070720190110
917980refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2019070720190110
919956refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070720190110
922280refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070720190110
929320refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2019070720190110
939116refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2019070720190110
949604refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2019070720190110
950140refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
950992refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2019070720190110
952276refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2019070720190110
979404refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2019070720190110
985944refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019070720190110
985964refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2019070720190110
986420refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2019070720190110
986472refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2019070720190110
987192refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2019070720190110
988264refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2019070720190110
989888refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2019070720190110
992652refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2019070720190110
992684refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2019070720190110
993772refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2019070720190110
994428refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2019070720190110
995068refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2019070720190110
995372refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2019070720190110
995376refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2019070720190110
995884refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2019070720190110
995968refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2019070720190110
996112refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2019070720190110
996120refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2019070720190110
996184refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2019070720190110
996192refgcc -m32 -march=pentium -Os -fomit-frame-pointer2019070720190110
996468refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2019070720190110
996552refgcc -m32 -Os -fomit-frame-pointer2019070720190110
996924refgcc -m32 -march=core2 -Os -fomit-frame-pointer2019070720190110
997080refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2019070720190110
997328refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2019070720190110
997872refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2019070720190110
998324refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2019070720190110
998380refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2019070720190110
998476refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2019070720190110
999468refgcc -m32 -march=athlon -Os -fomit-frame-pointer2019070720190110
1001200refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2019070720190110
1001840refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2019070720190110
1002160refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2019070720190110
1002188refgcc -m32 -march=k6 -Os -fomit-frame-pointer2019070720190110
1002596refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2019070720190110
1002700refgcc -m32 -march=prescott -Os -fomit-frame-pointer2019070720190110
1002796refgcc -m32 -march=i486 -Os -fomit-frame-pointer2019070720190110
1002900refgcc -m32 -march=k6 -O -fomit-frame-pointer2019070720190110
1003160refgcc -m32 -march=i386 -Os -fomit-frame-pointer2019070720190110
1003188refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2019070720190110
1004556refgcc -m32 -march=k8 -Os -fomit-frame-pointer2019070720190110
1007336refgcc -m32 -march=nocona -Os -fomit-frame-pointer2019070720190110
1010816refgcc -m32 -march=i386 -O -fomit-frame-pointer2019070720190110
1015332refgcc -m32 -march=i486 -O -fomit-frame-pointer2019070720190110
1021164refgcc -m32 -march=pentium -O -fomit-frame-pointer2019070720190110
1021168refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070720190110
1037260refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2019070720190110
1038364refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070720190110
1075176refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2019070720190110
1076644refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2019070720190110
1083256refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070720190110
1083580refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2019070720190110
1084144refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070720190110
1178112refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070720190110
1178440refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2019070720190110
1536300refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2019070720190110
1537852refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2019070720190110
1540068refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2019070720190110
1540836refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2019070720190110
1557824refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2019070720190110
1558188refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2019070720190110
1561508refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2019070720190110
1562952refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2019070720190110

Test failure

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