Implementation notes: x86, h3neo, crypto_aead/scream12v2

Computer: h3neo
Microarchitecture: amd64; K10 45nm (100f63)
Architecture: x86
CPU ID: AuthenticAMD-00100f63-078bfbff
SUPERCOP version: 20170105
Operation: crypto_aead
Primitive: scream12v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
646441? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k8_-O2_-fomit-frame-pointer2016111020161009
646536? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=barcelona_-O2_-fomit-frame-pointer2016111020161009
648647? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-O2_-fomit-frame-pointer2016111020161009
661477? ? ?? ? ?refgcc_-funroll-loops_-m32_-O3_-fomit-frame-pointer2016111020161009
668933? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-O3_-fomit-frame-pointer2016111020161009
668955? ? ?? ? ?refgcc_-m32_-march=k8_-O3_-fomit-frame-pointer2016111020161009
676177? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=barcelona_-O3_-fomit-frame-pointer2016111020161009
677841? ? ?? ? ?refgcc_-funroll-loops_-m32_-O2_-fomit-frame-pointer2016111020161009
679487? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k8_-O3_-fomit-frame-pointer2016111020161009
681151? ? ?? ? ?refgcc_-m32_-march=athlon_-O3_-fomit-frame-pointer2016111020161009
687240? ? ?? ? ?refgcc_-m32_-O3_-fomit-frame-pointer2016111020161009
689498? ? ?? ? ?refgcc_-m32_-march=barcelona_-O3_-fomit-frame-pointer2016111020161009
689979? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-O3_-fomit-frame-pointer2016111020161009
693272? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O3_-fomit-frame-pointer2016111020161009
696517? ? ?? ? ?refgcc_-m32_-march=pentium3_-O3_-fomit-frame-pointer2016111020161009
697402? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O2_-fomit-frame-pointer2016111020161009
697816? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2016111020161009
697910? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2016111020161009
698015? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2016111020161009
698192? ? ?? ? ?refgcc_-m32_-march=pentium2_-O3_-fomit-frame-pointer2016111020161009
698935? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O2_-fomit-frame-pointer2016111020161009
699283? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O3_-fomit-frame-pointer2016111020161009
699440? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2016111020161009
699805? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O2_-fomit-frame-pointer2016111020161009
710785? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2016111020161009
715100? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2016111020161009
727929? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O2_-fomit-frame-pointer2016111020161009
728346? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O2_-fomit-frame-pointer2016111020161009
733088? ? ?? ? ?refgcc_-m32_-march=prescott_-O3_-fomit-frame-pointer2016111020161009
733130? ? ?? ? ?refgcc_-m32_-march=nocona_-O3_-fomit-frame-pointer2016111020161009
735121? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O3_-fomit-frame-pointer2016111020161009
743449? ? ?? ? ?refgcc_-m32_-march=pentium4_-O3_-fomit-frame-pointer2016111020161009
744231? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i486_-O3_-fomit-frame-pointer2016111020161009
749655? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=barcelona_-O_-fomit-frame-pointer2016111020161009
750407? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k8_-O_-fomit-frame-pointer2016111020161009
750448? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-O_-fomit-frame-pointer2016111020161009
759815? ? ?? ? ?refgcc_-m32_-march=pentium_-O3_-fomit-frame-pointer2016111020161009
761705? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2016111020161009
766938? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O3_-fomit-frame-pointer2016111020161009
767161? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O3_-fomit-frame-pointer2016111020161009
767576? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-O3_-fomit-frame-pointer2016111020161009
768004? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-O3_-fomit-frame-pointer2016111020161009
769854? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-O3_-fomit-frame-pointer2016111020161009
775724? ? ?? ? ?refgcc_-m32_-march=k6_-O3_-fomit-frame-pointer2016111020161009
775785? ? ?? ? ?refgcc_-m32_-march=i486_-O3_-fomit-frame-pointer2016111020161009
776649? ? ?? ? ?refgcc_-m32_-march=k6-3_-O3_-fomit-frame-pointer2016111020161009
776774? ? ?? ? ?refgcc_-m32_-march=k6-2_-O3_-fomit-frame-pointer2016111020161009
779512? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2016111020161009
779852? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-O3_-fomit-frame-pointer2016111020161009
785723? ? ?? ? ?refgcc_-funroll-loops_-m32_-O_-fomit-frame-pointer2016111020161009
790418? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O_-fomit-frame-pointer2016111020161009
790856? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O_-fomit-frame-pointer2016111020161009
795031? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O_-fomit-frame-pointer2016111020161009
796895? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O_-fomit-frame-pointer2016111020161009
797671? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O_-fomit-frame-pointer2016111020161009
797890? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O_-fomit-frame-pointer2016111020161009
798183? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2016111020161009
799503? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i486_-O2_-fomit-frame-pointer2016111020161009
816060? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O2_-fomit-frame-pointer2016111020161009
821445? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-O2_-fomit-frame-pointer2016111020161009
822310? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2016111020161009
827339? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-O2_-fomit-frame-pointer2016111020161009
828405? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-O2_-fomit-frame-pointer2016111020161009
828890? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-O2_-fomit-frame-pointer2016111020161009
832436? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i486_-O_-fomit-frame-pointer2016111020161009
852880? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-O_-fomit-frame-pointer2016111020161009
853798? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-O_-fomit-frame-pointer2016111020161009
853972? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-O_-fomit-frame-pointer2016111020161009
855435? ? ?? ? ?refgcc_-m32_-march=i386_-O3_-fomit-frame-pointer2016111020161009
859638? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-O_-fomit-frame-pointer2016111020161009
859728? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2016111020161009
863209? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O3_-fomit-frame-pointer2016111020161009
943080? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O_-fomit-frame-pointer2016111020161009
1138414? ? ?? ? ?refgcc_-m32_-march=k8_-O2_-fomit-frame-pointer2016111020161009
1147024? ? ?? ? ?refgcc_-m32_-march=corei7_-O2_-fomit-frame-pointer2016111020161009
1148731? ? ?? ? ?refgcc_-m32_-march=core2_-O2_-fomit-frame-pointer2016111020161009
1148986? ? ?? ? ?refgcc_-m32_-march=athlon_-O2_-fomit-frame-pointer2016111020161009
1151774? ? ?? ? ?refgcc_-m32_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2016111020161009
1151956? ? ?? ? ?refgcc_-m32_-march=core2_-msse4_-O2_-fomit-frame-pointer2016111020161009
1152441? ? ?? ? ?refgcc_-m32_-O2_-fomit-frame-pointer2016111020161009
1152522? ? ?? ? ?refgcc_-m32_-march=pentium4_-O2_-fomit-frame-pointer2016111020161009
1156199? ? ?? ? ?refgcc_-m32_-march=barcelona_-O2_-fomit-frame-pointer2016111020161009
1156757? ? ?? ? ?refgcc_-m32_-march=prescott_-O2_-fomit-frame-pointer2016111020161009
1156784? ? ?? ? ?refgcc_-m32_-march=nocona_-O2_-fomit-frame-pointer2016111020161009
1157656? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-O2_-fomit-frame-pointer2016111020161009
1176105? ? ?? ? ?refgcc_-m32_-march=i486_-O2_-fomit-frame-pointer2016111020161009
1177316? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2016111020161009
1179316? ? ?? ? ?refgcc_-m32_-march=pentium_-O2_-fomit-frame-pointer2016111020161009
1188787? ? ?? ? ?refgcc_-m32_-march=i386_-O2_-fomit-frame-pointer2016111020161009
1210142? ? ?? ? ?refgcc_-m32_-march=pentium2_-O2_-fomit-frame-pointer2016111020161009
1211017? ? ?? ? ?refgcc_-m32_-march=prescott_-O_-fomit-frame-pointer2016111020161009
1216299? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2016111020161009
1216342? ? ?? ? ?refgcc_-m32_-march=nocona_-O_-fomit-frame-pointer2016111020161009
1217307? ? ?? ? ?refgcc_-m32_-march=k8_-O_-fomit-frame-pointer2016111020161009
1219338? ? ?? ? ?refgcc_-m32_-march=pentium3_-O2_-fomit-frame-pointer2016111020161009
1220911? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2016111020161009
1225166? ? ?? ? ?refgcc_-m32_-march=k6-3_-O2_-fomit-frame-pointer2016111020161009
1225824? ? ?? ? ?refgcc_-m32_-march=k6-2_-O2_-fomit-frame-pointer2016111020161009
1226138? ? ?? ? ?refgcc_-m32_-O_-fomit-frame-pointer2016111020161009
1229430? ? ?? ? ?refgcc_-m32_-march=i486_-O_-fomit-frame-pointer2016111020161009
1230951? ? ?? ? ?refgcc_-m32_-march=k6_-O2_-fomit-frame-pointer2016111020161009
1231492? ? ?? ? ?refgcc_-m32_-march=athlon_-O_-fomit-frame-pointer2016111020161009
1232691? ? ?? ? ?refgcc_-m32_-march=corei7_-O_-fomit-frame-pointer2016111020161009
1239105? ? ?? ? ?refgcc_-m32_-march=i386_-O_-fomit-frame-pointer2016111020161009
1239348? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-O_-fomit-frame-pointer2016111020161009
1242270? ? ?? ? ?refgcc_-m32_-march=barcelona_-O_-fomit-frame-pointer2016111020161009
1244978? ? ?? ? ?refgcc_-m32_-march=core2_-msse4_-O_-fomit-frame-pointer2016111020161009
1245254? ? ?? ? ?refgcc_-m32_-march=core2_-msse4.1_-O_-fomit-frame-pointer2016111020161009
1250326? ? ?? ? ?refgcc_-m32_-march=prescott_-Os_-fomit-frame-pointer2016111020161009
1250571? ? ?? ? ?refgcc_-m32_-march=nocona_-Os_-fomit-frame-pointer2016111020161009
1250858? ? ?? ? ?refgcc_-m32_-march=core2_-O_-fomit-frame-pointer2016111020161009
1250901? ? ?? ? ?refgcc_-m32_-march=pentium4_-O_-fomit-frame-pointer2016111020161009
1251705? ? ?? ? ?refgcc_-m32_-march=pentium4_-Os_-fomit-frame-pointer2016111020161009
1252827? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-Os_-fomit-frame-pointer2016111020161009
1253830? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-Os_-fomit-frame-pointer2016111020161009
1254245? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-Os_-fomit-frame-pointer2016111020161009
1256158? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-Os_-fomit-frame-pointer2016111020161009
1256447? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2016111020161009
1256534? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i486_-Os_-fomit-frame-pointer2016111020161009
1256563? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-Os_-fomit-frame-pointer2016111020161009
1257769? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k8_-Os_-fomit-frame-pointer2016111020161009
1258134? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=barcelona_-Os_-fomit-frame-pointer2016111020161009
1258530? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2016111020161009
1260656? ? ?? ? ?refgcc_-m32_-march=core2_-Os_-fomit-frame-pointer2016111020161009
1260714? ? ?? ? ?refgcc_-m32_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2016111020161009
1260752? ? ?? ? ?refgcc_-m32_-march=core2_-msse4_-Os_-fomit-frame-pointer2016111020161009
1261580? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-Os_-fomit-frame-pointer2016111020161009
1262211? ? ?? ? ?refgcc_-m32_-march=corei7_-Os_-fomit-frame-pointer2016111020161009
1262250? ? ?? ? ?refgcc_-funroll-loops_-m32_-Os_-fomit-frame-pointer2016111020161009
1263218? ? ?? ? ?refgcc_-m32_-march=k6_-O_-fomit-frame-pointer2016111020161009
1263690? ? ?? ? ?refgcc_-m32_-march=athlon_-Os_-fomit-frame-pointer2016111020161009
1264389? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-Os_-fomit-frame-pointer2016111020161009
1264896? ? ?? ? ?refgcc_-m32_-Os_-fomit-frame-pointer2016111020161009
1267649? ? ?? ? ?refgcc_-m32_-march=i386_-Os_-fomit-frame-pointer2016111020161009
1267949? ? ?? ? ?refgcc_-m32_-march=i486_-Os_-fomit-frame-pointer2016111020161009
1272003? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-Os_-fomit-frame-pointer2016111020161009
1272044? ? ?? ? ?refgcc_-m32_-march=barcelona_-Os_-fomit-frame-pointer2016111020161009
1274386? ? ?? ? ?refgcc_-m32_-march=k6-3_-O_-fomit-frame-pointer2016111020161009
1274812? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-Os_-fomit-frame-pointer2016111020161009
1275947? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-Os_-fomit-frame-pointer2016111020161009
1275978? ? ?? ? ?refgcc_-m32_-march=k6_-Os_-fomit-frame-pointer2016111020161009
1276170? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-Os_-fomit-frame-pointer2016111020161009
1276426? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2016111020161009
1276810? ? ?? ? ?refgcc_-m32_-march=k8_-Os_-fomit-frame-pointer2016111020161009
1277885? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2016111020161009
1279590? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-Os_-fomit-frame-pointer2016111020161009
1279780? ? ?? ? ?refgcc_-m32_-march=k6-2_-O_-fomit-frame-pointer2016111020161009
1282908? ? ?? ? ?refgcc_-m32_-march=k6-2_-Os_-fomit-frame-pointer2016111020161009
1286393? ? ?? ? ?refgcc_-m32_-march=k6-3_-Os_-fomit-frame-pointer2016111020161009
1290798? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O_-fomit-frame-pointer2016111020161009
1291131? ? ?? ? ?refgcc_-m32_-march=pentium2_-O_-fomit-frame-pointer2016111020161009
1291247? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2016111020161009
1291303? ? ?? ? ?refgcc_-m32_-march=pentium_-O_-fomit-frame-pointer2016111020161009
1299609? ? ?? ? ?refgcc_-m32_-march=pentium2_-Os_-fomit-frame-pointer2016111020161009
1300806? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2016111020161009
1304075? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2016111020161009
1305175? ? ?? ? ?refgcc_-m32_-march=pentium3_-O_-fomit-frame-pointer2016111020161009
1307169? ? ?? ? ?refgcc_-m32_-march=pentium_-Os_-fomit-frame-pointer2016111020161009
1312145? ? ?? ? ?refgcc_-m32_-march=pentium3_-Os_-fomit-frame-pointer2016111020161009
1318328? ? ?? ? ?refgcc_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2016111020161009

Test failure

Implementation: ref
Security model: unknown
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 ref
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m32 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -O2 -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 -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 -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 -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 -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 -O -fomit-frame-pointer sse
gcc -m32 -march=corei7 -Os -fomit-frame-pointer sse

Compiler output

Implementation: sse
Security model: unknown
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:16:32: warning: implicit declaration of function '__builtin_ia32_psrldi128' [-Wimplicit-function-declaration]
scream.c: #define shift_right(x) ((v16qi)__builtin_ia32_psrldi128((v4si)x, 4))
scream.c: ^
scream.c: scream.c:182:10: note: in expansion of macro 'shift_right'
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^
scream.c: scream.c:182:5: error: can't convert between vector values of different size
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^
scream.c: scream.c:183:5: error: can't convert between vector values of different size
scream.c: t1 = shift_right(in[2]) & V(0xf);
scream.c: ^
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: C = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: B = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: ...

Number of similar (compiler,implementation) pairs: 96, 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=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=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=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 -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 -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=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=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=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
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
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: sse
Security model: unknown
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: C = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: B = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:191:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: D = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:198:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:199:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: scream.c:203:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: ...

Number of similar (compiler,implementation) pairs: 48, 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=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
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: sse
Security model: unknown
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: C = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: B = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:191:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: D = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:198:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:199:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: scream.c:203:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: ...
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: C = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: B = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:191:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
scream.c: D = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:198:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:199:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: scream.c:203:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
scream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.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