Implementation notes: x86, kizomba, crypto_aead/scream10v3

Computer: kizomba
Architecture: x86
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_aead
Primitive: scream10v3
TimeImplementationCompilerBenchmark dateSUPERCOP version
345221refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2018082520180818
350240refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2018082520180818
351787refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2018082520180818
355225refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2018082520180818
355627refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2018082520180818
361458refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2018082520180818
362218refgcc -funroll-loops -m32 -O -fomit-frame-pointer2018082520180818
364353refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2018082520180818
364454refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2018082520180818
364458refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2018082520180818
364651refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2018082520180818
364906refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2018082520180818
371048refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082520180818
375351refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2018082520180818
375578refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2018082520180818
377617refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2018082520180818
378365refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2018082520180818
378516refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2018082520180818
380750refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2018082520180818
388268refgcc -m32 -O3 -fomit-frame-pointer2018082520180818
388712refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2018082520180818
390550refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2018082520180818
390681refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2018082520180818
392970refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082520180818
395022refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2018082520180818
395264refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082520180818
395488refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2018082520180818
395710refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2018082520180818
396096refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082520180818
396922refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2018082520180818
399393refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2018082520180818
399417refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2018082520180818
400115refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2018082520180818
400784refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2018082520180818
400980refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2018082520180818
401276refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2018082520180818
402187refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2018082520180818
402359refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2018082520180818
405072refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018082520180818
406063refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082520180818
406349refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082520180818
407375refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082520180818
408244refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082520180818
412940refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082520180818
420052refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082520180818
421256refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082520180818
421325refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082520180818
429589refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082520180818
430070refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082520180818
437665refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082520180818
441845refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082520180818
450670refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082520180818
487637refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082520180818
493059refgcc -m32 -march=athlon -O -fomit-frame-pointer2018082520180818
495028refgcc -m32 -march=k8 -O -fomit-frame-pointer2018082520180818
496441refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2018082520180818
497539refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2018082520180818
498353refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2018082520180818
498464refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2018082520180818
498496refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2018082520180818
498760refgcc -m32 -march=corei7 -O -fomit-frame-pointer2018082520180818
499014refgcc -m32 -march=prescott -O -fomit-frame-pointer2018082520180818
499020refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2018082520180818
499097refgcc -m32 -march=barcelona -O -fomit-frame-pointer2018082520180818
499988refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2018082520180818
500039refgcc -m32 -march=nocona -O -fomit-frame-pointer2018082520180818
501564refgcc -m32 -O -fomit-frame-pointer2018082520180818
502728refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082520180818
503445refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2018082520180818
503717refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082520180818
504266refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082520180818
504324refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2018082520180818
504669refgcc -m32 -march=core2 -O -fomit-frame-pointer2018082520180818
505013refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2018082520180818
505063refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2018082520180818
505286refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2018082520180818
505516refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2018082520180818
505654refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018082520180818
507490refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2018082520180818
507619refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082520180818
507903refgcc -m32 -O2 -fomit-frame-pointer2018082520180818
508770refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2018082520180818
532008refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2018082520180818
532417refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2018082520180818
533393refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2018082520180818
534645refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2018082520180818
538050refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082520180818
538063refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082520180818
538591refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082520180818
538752refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082520180818
626942refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2018082520180818
627077refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2018082520180818
628019refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2018082520180818
629442refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2018082520180818
629647refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082520180818
630752refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2018082520180818
631506refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082520180818
636750refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2018082520180818
703139refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2018082520180818
703502refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082520180818
704289refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082520180818
768012refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2018082520180818
785167refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082520180818
785307refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082520180818
786645refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2018082520180818
789897refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082520180818
789965refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2018082520180818
790736refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2018082520180818
795100refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082520180818
795542refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2018082520180818
801635refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2018082520180818
803525refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2018082520180818
805173refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2018082520180818
805686refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082520180818
810982refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2018082520180818
813667refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2018082520180818
814415refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2018082520180818
818482refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2018082520180818
831346refgcc -m32 -march=k6 -O -fomit-frame-pointer2018082520180818
831652refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2018082520180818
834725refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2018082520180818
843123refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2018082520180818
846950refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2018082520180818
847910refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082520180818
852455refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2018082520180818
855617refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2018082520180818
859397refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082520180818
859723refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082520180818
864024refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082520180818
864060refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2018082520180818
867305refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2018082520180818
883810refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2018082520180818
884441refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2018082520180818
885123refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082520180818
889796refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082520180818
902232refgcc -m32 -march=pentium -O -fomit-frame-pointer2018082520180818
903185refgcc -m32 -march=i486 -O -fomit-frame-pointer2018082520180818
907069refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082520180818
915367refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2018082520180818
923645refgcc -m32 -march=i386 -O -fomit-frame-pointer2018082520180818
949964refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2018082520180818
950337refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2018082520180818
951468refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2018082520180818
962459refgcc -m32 -march=i486 -Os -fomit-frame-pointer2018082520180818
965695refgcc -m32 -march=i386 -Os -fomit-frame-pointer2018082520180818
966498refgcc -m32 -march=prescott -Os -fomit-frame-pointer2018082520180818
970324refgcc -m32 -march=nocona -Os -fomit-frame-pointer2018082520180818
977162refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2018082520180818
982716refgcc -m32 -Os -fomit-frame-pointer2018082520180818
985629refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2018082520180818
985697refgcc -m32 -march=athlon -Os -fomit-frame-pointer2018082520180818
986770refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2018082520180818
986986refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082520180818
987542refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082520180818
987641refgcc -m32 -march=k8 -Os -fomit-frame-pointer2018082520180818
988440refgcc -m32 -march=pentium -Os -fomit-frame-pointer2018082520180818
990318refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2018082520180818
990357refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018082520180818
991209refgcc -m32 -march=core2 -Os -fomit-frame-pointer2018082520180818
994398refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2018082520180818
994752refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2018082520180818
997294refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082520180818
1008252refgcc -m32 -march=k6 -Os -fomit-frame-pointer2018082520180818
1008845refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2018082520180818
1009204refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2018082520180818
1209161refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082520180818
1209212refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2018082520180818
1224899refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2018082520180818
1224905refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2018082520180818
1226796refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2018082520180818
1228284refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2018082520180818
1229403refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2018082520180818
1254863refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2018082520180818
1256667refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2018082520180818
1256837refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2018082520180818
1257767refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2018082520180818

Test failure

Implementation: crypto_aead/scream10v3/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/scream10v3/sse
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'; did you mean '__builtin_ia32_bsrsi'? [-Wimplicit-function-declaration]
scream.c: #define shift_right(x) ((v16qi)__builtin_ia32_psrldi128((v4si)x, 4))
scream.c: ^
scream.c: scream.c:199:10: note: in expansion of macro 'shift_right'
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^~~~~~~~~~~
scream.c: scream.c:199:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^~
scream.c: scream.c:200:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
scream.c: t1 = shift_right(in[2]) & V(0xf);
scream.c: ^~
scream.c: scream.c:202:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_pause'? [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
scream.c: __builtin_ia32_pause
scream.c: scream.c:202: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:203: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:207: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: ...

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/scream10v3/sse
Compiler: gcc -funroll-loops -m32 -march=athlon -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'; did you mean '__builtin_ia32_psrldi'? [-Wimplicit-function-declaration]
scream.c: #define shift_right(x) ((v16qi)__builtin_ia32_psrldi128((v4si)x, 4))
scream.c: ^
scream.c: scream.c:199:10: note: in expansion of macro 'shift_right'
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^~~~~~~~~~~
scream.c: scream.c:199:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^~
scream.c: scream.c:200:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
scream.c: t1 = shift_right(in[2]) & V(0xf);
scream.c: ^~
scream.c: scream.c:202:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_pshufw'? [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
scream.c: __builtin_ia32_pshufw
scream.c: scream.c:202: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:203: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:207: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: ...

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/scream10v3/sse
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:202:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
scream.c: __builtin_ia32_psubb128
scream.c: scream.c:202: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:203: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:207: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:208: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:215: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:216: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:220: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: ...

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/scream10v3/sse
Compiler: gcc -funroll-loops -m32 -march=k6-2 -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'; did you mean '__builtin_ia32_psrldi'? [-Wimplicit-function-declaration]
scream.c: #define shift_right(x) ((v16qi)__builtin_ia32_psrldi128((v4si)x, 4))
scream.c: ^
scream.c: scream.c:199:10: note: in expansion of macro 'shift_right'
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^~~~~~~~~~~
scream.c: scream.c:199:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
scream.c: t0 = shift_right(in[0]) & V(0xf);
scream.c: ^~
scream.c: scream.c:200:5: error: can't convert a value of type 'int' to vector type '__vector(16) char' which has different size
scream.c: t1 = shift_right(in[2]) & V(0xf);
scream.c: ^~
scream.c: scream.c:202:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb'? [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
scream.c: __builtin_ia32_psubb
scream.c: scream.c:202: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:203: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:207: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: ...

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/scream10v3/sse
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:202:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
scream.c: __builtin_ia32_psubb128
scream.c: scream.c:202: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:203: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:207: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:208: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:215: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:216: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:220: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: In function 'LBox16P':
scream.c: scream.c:202:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
scream.c: __builtin_ia32_psubb128
scream.c: scream.c:202: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:203: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:207: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:208: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:215: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:216: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:220: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: ...

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