Implementation notes: x86, h3neo, crypto_aead/scream10v1

Computer: h3neo
Microarchitecture: amd64; K10 45nm (100f63)
Architecture: x86
CPU ID: AuthenticAMD-00100f63-078bfbff
SUPERCOP version: 20170105
Operation: crypto_aead
Primitive: scream10v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
544153? ? ?? ? ?refgcc_-funroll-loops_-m32_-O3_-fomit-frame-pointer2016111020161009
545516? ? ?? ? ?refgcc_-m32_-O3_-fomit-frame-pointer2016111020161009
569009? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k8_-O2_-fomit-frame-pointer2016111020161009
569160? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=barcelona_-O2_-fomit-frame-pointer2016111020161009
571075? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-O3_-fomit-frame-pointer2016111020161009
572116? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-O2_-fomit-frame-pointer2016111020161009
574287? ? ?? ? ?refgcc_-m32_-march=k8_-O3_-fomit-frame-pointer2016111020161009
578500? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=barcelona_-O3_-fomit-frame-pointer2016111020161009
579731? ? ?? ? ?refgcc_-m32_-march=athlon_-O3_-fomit-frame-pointer2016111020161009
580371? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k8_-O3_-fomit-frame-pointer2016111020161009
584676? ? ?? ? ?refgcc_-funroll-loops_-m32_-O2_-fomit-frame-pointer2016111020161009
586872? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O3_-fomit-frame-pointer2016111020161009
587097? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-O3_-fomit-frame-pointer2016111020161009
588695? ? ?? ? ?refgcc_-m32_-march=barcelona_-O3_-fomit-frame-pointer2016111020161009
590180? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O2_-fomit-frame-pointer2016111020161009
591590? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O2_-fomit-frame-pointer2016111020161009
591808? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O2_-fomit-frame-pointer2016111020161009
591853? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O2_-fomit-frame-pointer2016111020161009
592042? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2016111020161009
592641? ? ?? ? ?refgcc_-m32_-march=pentium3_-O3_-fomit-frame-pointer2016111020161009
593399? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2016111020161009
593681? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2016111020161009
594104? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2016111020161009
594466? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O3_-fomit-frame-pointer2016111020161009
594519? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O3_-fomit-frame-pointer2016111020161009
594604? ? ?? ? ?refgcc_-m32_-march=pentium2_-O3_-fomit-frame-pointer2016111020161009
596129? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O2_-fomit-frame-pointer2016111020161009
601475? ? ?? ? ?refgcc_-m32_-march=pentium4_-O3_-fomit-frame-pointer2016111020161009
605766? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2016111020161009
608760? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2016111020161009
616546? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O3_-fomit-frame-pointer2016111020161009
618213? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O3_-fomit-frame-pointer2016111020161009
625447? ? ?? ? ?refgcc_-m32_-march=prescott_-O3_-fomit-frame-pointer2016111020161009
629262? ? ?? ? ?refgcc_-m32_-march=nocona_-O3_-fomit-frame-pointer2016111020161009
629549? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i486_-O3_-fomit-frame-pointer2016111020161009
650399? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-O3_-fomit-frame-pointer2016111020161009
651534? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-O3_-fomit-frame-pointer2016111020161009
652358? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2016111020161009
652854? ? ?? ? ?refgcc_-m32_-march=pentium_-O3_-fomit-frame-pointer2016111020161009
653014? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-O3_-fomit-frame-pointer2016111020161009
660000? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O_-fomit-frame-pointer2016111020161009
662964? ? ?? ? ?refgcc_-m32_-march=k6_-O3_-fomit-frame-pointer2016111020161009
663896? ? ?? ? ?refgcc_-m32_-march=k6-3_-O3_-fomit-frame-pointer2016111020161009
664418? ? ?? ? ?refgcc_-m32_-march=k6-2_-O3_-fomit-frame-pointer2016111020161009
664688? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-O3_-fomit-frame-pointer2016111020161009
665083? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2016111020161009
667067? ? ?? ? ?refgcc_-funroll-loops_-m32_-O_-fomit-frame-pointer2016111020161009
669484? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O_-fomit-frame-pointer2016111020161009
670429? ? ?? ? ?refgcc_-m32_-march=i486_-O3_-fomit-frame-pointer2016111020161009
670657? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O_-fomit-frame-pointer2016111020161009
677303? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-O_-fomit-frame-pointer2016111020161009
678138? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-O_-fomit-frame-pointer2016111020161009
679160? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-O_-fomit-frame-pointer2016111020161009
681348? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O_-fomit-frame-pointer2016111020161009
682108? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k8_-O_-fomit-frame-pointer2016111020161009
682312? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O_-fomit-frame-pointer2016111020161009
683103? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-O_-fomit-frame-pointer2016111020161009
683461? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O_-fomit-frame-pointer2016111020161009
683517? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2016111020161009
684935? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=barcelona_-O_-fomit-frame-pointer2016111020161009
694438? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O3_-fomit-frame-pointer2016111020161009
700378? ? ?? ? ?refgcc_-m32_-march=i386_-O3_-fomit-frame-pointer2016111020161009
701639? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-O2_-fomit-frame-pointer2016111020161009
702069? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-O2_-fomit-frame-pointer2016111020161009
702286? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-O2_-fomit-frame-pointer2016111020161009
709973? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i486_-O_-fomit-frame-pointer2016111020161009
722766? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-O_-fomit-frame-pointer2016111020161009
724693? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2016111020161009
727725? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-O2_-fomit-frame-pointer2016111020161009
728846? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2016111020161009
746486? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i486_-O2_-fomit-frame-pointer2016111020161009
749609? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O2_-fomit-frame-pointer2016111020161009
776373? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O_-fomit-frame-pointer2016111020161009
961848? ? ?? ? ?refgcc_-m32_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2016111020161009
964262? ? ?? ? ?refgcc_-m32_-march=core2_-O2_-fomit-frame-pointer2016111020161009
965475? ? ?? ? ?refgcc_-m32_-march=k8_-O2_-fomit-frame-pointer2016111020161009
968147? ? ?? ? ?refgcc_-m32_-march=core2_-msse4_-O2_-fomit-frame-pointer2016111020161009
968655? ? ?? ? ?refgcc_-m32_-march=athlon_-O2_-fomit-frame-pointer2016111020161009
970717? ? ?? ? ?refgcc_-m32_-march=corei7_-O2_-fomit-frame-pointer2016111020161009
983721? ? ?? ? ?refgcc_-m32_-march=prescott_-O2_-fomit-frame-pointer2016111020161009
984227? ? ?? ? ?refgcc_-m32_-O2_-fomit-frame-pointer2016111020161009
986404? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-O2_-fomit-frame-pointer2016111020161009
987086? ? ?? ? ?refgcc_-m32_-march=nocona_-O2_-fomit-frame-pointer2016111020161009
989281? ? ?? ? ?refgcc_-m32_-march=barcelona_-O2_-fomit-frame-pointer2016111020161009
993259? ? ?? ? ?refgcc_-m32_-march=pentium4_-O2_-fomit-frame-pointer2016111020161009
1001999? ? ?? ? ?refgcc_-m32_-march=i486_-O2_-fomit-frame-pointer2016111020161009
1005744? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2016111020161009
1017275? ? ?? ? ?refgcc_-m32_-march=pentium_-O2_-fomit-frame-pointer2016111020161009
1019952? ? ?? ? ?refgcc_-m32_-march=i386_-O2_-fomit-frame-pointer2016111020161009
1025202? ? ?? ? ?refgcc_-m32_-march=nocona_-O_-fomit-frame-pointer2016111020161009
1026057? ? ?? ? ?refgcc_-m32_-march=prescott_-O_-fomit-frame-pointer2016111020161009
1029331? ? ?? ? ?refgcc_-m32_-march=k8_-O_-fomit-frame-pointer2016111020161009
1030013? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2016111020161009
1030674? ? ?? ? ?refgcc_-m32_-march=pentium3_-O2_-fomit-frame-pointer2016111020161009
1032637? ? ?? ? ?refgcc_-m32_-march=athlon_-O_-fomit-frame-pointer2016111020161009
1033760? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-O_-fomit-frame-pointer2016111020161009
1034447? ? ?? ? ?refgcc_-m32_-march=k6-3_-O2_-fomit-frame-pointer2016111020161009
1036492? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2016111020161009
1036968? ? ?? ? ?refgcc_-m32_-march=pentium2_-O2_-fomit-frame-pointer2016111020161009
1037054? ? ?? ? ?refgcc_-m32_-march=k6_-O2_-fomit-frame-pointer2016111020161009
1039274? ? ?? ? ?refgcc_-m32_-march=k6-2_-O2_-fomit-frame-pointer2016111020161009
1039900? ? ?? ? ?refgcc_-m32_-march=i386_-O_-fomit-frame-pointer2016111020161009
1041203? ? ?? ? ?refgcc_-m32_-march=barcelona_-O_-fomit-frame-pointer2016111020161009
1044050? ? ?? ? ?refgcc_-m32_-march=core2_-O_-fomit-frame-pointer2016111020161009
1044216? ? ?? ? ?refgcc_-m32_-march=core2_-msse4_-O_-fomit-frame-pointer2016111020161009
1044246? ? ?? ? ?refgcc_-m32_-march=core2_-msse4.1_-O_-fomit-frame-pointer2016111020161009
1056334? ? ?? ? ?refgcc_-m32_-O_-fomit-frame-pointer2016111020161009
1056999? ? ?? ? ?refgcc_-m32_-march=i486_-O_-fomit-frame-pointer2016111020161009
1057004? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-Os_-fomit-frame-pointer2016111020161009
1059701? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k8_-Os_-fomit-frame-pointer2016111020161009
1061179? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-Os_-fomit-frame-pointer2016111020161009
1061683? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2016111020161009
1062067? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2016111020161009
1062398? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i486_-Os_-fomit-frame-pointer2016111020161009
1062511? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=barcelona_-Os_-fomit-frame-pointer2016111020161009
1062617? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-Os_-fomit-frame-pointer2016111020161009
1063095? ? ?? ? ?refgcc_-m32_-march=k6-2_-O_-fomit-frame-pointer2016111020161009
1063484? ? ?? ? ?refgcc_-m32_-march=corei7_-O_-fomit-frame-pointer2016111020161009
1064880? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2016111020161009
1064970? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-Os_-fomit-frame-pointer2016111020161009
1065084? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-Os_-fomit-frame-pointer2016111020161009
1065967? ? ?? ? ?refgcc_-m32_-march=k6_-O_-fomit-frame-pointer2016111020161009
1066286? ? ?? ? ?refgcc_-m32_-march=pentium4_-Os_-fomit-frame-pointer2016111020161009
1067224? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-Os_-fomit-frame-pointer2016111020161009
1068941? ? ?? ? ?refgcc_-m32_-march=k6-3_-O_-fomit-frame-pointer2016111020161009
1069088? ? ?? ? ?refgcc_-m32_-march=athlon_-Os_-fomit-frame-pointer2016111020161009
1069730? ? ?? ? ?refgcc_-m32_-march=pentium4_-O_-fomit-frame-pointer2016111020161009
1070121? ? ?? ? ?refgcc_-m32_-Os_-fomit-frame-pointer2016111020161009
1070944? ? ?? ? ?refgcc_-m32_-march=prescott_-Os_-fomit-frame-pointer2016111020161009
1071514? ? ?? ? ?refgcc_-m32_-march=nocona_-Os_-fomit-frame-pointer2016111020161009
1071785? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-Os_-fomit-frame-pointer2016111020161009
1074288? ? ?? ? ?refgcc_-m32_-march=i386_-Os_-fomit-frame-pointer2016111020161009
1078788? ? ?? ? ?refgcc_-m32_-march=k6-3_-Os_-fomit-frame-pointer2016111020161009
1079320? ? ?? ? ?refgcc_-m32_-march=i486_-Os_-fomit-frame-pointer2016111020161009
1079755? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-Os_-fomit-frame-pointer2016111020161009
1080003? ? ?? ? ?refgcc_-funroll-loops_-m32_-Os_-fomit-frame-pointer2016111020161009
1080286? ? ?? ? ?refgcc_-m32_-march=barcelona_-Os_-fomit-frame-pointer2016111020161009
1082363? ? ?? ? ?refgcc_-m32_-march=k8_-Os_-fomit-frame-pointer2016111020161009
1089221? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-Os_-fomit-frame-pointer2016111020161009
1089395? ? ?? ? ?refgcc_-m32_-march=k6-2_-Os_-fomit-frame-pointer2016111020161009
1089535? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2016111020161009
1090295? ? ?? ? ?refgcc_-m32_-march=corei7_-Os_-fomit-frame-pointer2016111020161009
1091007? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-Os_-fomit-frame-pointer2016111020161009
1091847? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-Os_-fomit-frame-pointer2016111020161009
1092527? ? ?? ? ?refgcc_-m32_-march=core2_-msse4_-Os_-fomit-frame-pointer2016111020161009
1092976? ? ?? ? ?refgcc_-m32_-march=core2_-Os_-fomit-frame-pointer2016111020161009
1094434? ? ?? ? ?refgcc_-m32_-march=k6_-Os_-fomit-frame-pointer2016111020161009
1095502? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-Os_-fomit-frame-pointer2016111020161009
1096836? ? ?? ? ?refgcc_-m32_-march=pentium3_-O_-fomit-frame-pointer2016111020161009
1097012? ? ?? ? ?refgcc_-m32_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2016111020161009
1100081? ? ?? ? ?refgcc_-m32_-march=pentium_-O_-fomit-frame-pointer2016111020161009
1108772? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2016111020161009
1109213? ? ?? ? ?refgcc_-m32_-march=pentium_-Os_-fomit-frame-pointer2016111020161009
1109680? ? ?? ? ?refgcc_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2016111020161009
1110673? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2016111020161009
1110948? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O_-fomit-frame-pointer2016111020161009
1111038? ? ?? ? ?refgcc_-m32_-march=pentium2_-O_-fomit-frame-pointer2016111020161009
1112699? ? ?? ? ?refgcc_-m32_-march=pentium3_-Os_-fomit-frame-pointer2016111020161009
1116808? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2016111020161009
1126041? ? ?? ? ?refgcc_-m32_-march=pentium2_-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