Implementation notes: x86, kizomba, crypto_aead/scream12v2

Computer: kizomba
Architecture: x86
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_aead
Primitive: scream12v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
388187refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082520180818
391038refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2018082520180818
391400refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2018082520180818
392748refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2018082520180818
393314refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2018082520180818
394349refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2018082520180818
394574refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2018082520180818
397473refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2018082520180818
398859refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2018082520180818
400546refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2018082520180818
401919refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2018082520180818
405147refgcc -funroll-loops -m32 -O -fomit-frame-pointer2018082520180818
405610refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2018082520180818
406454refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2018082520180818
409734refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2018082520180818
412553refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2018082520180818
413512refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2018082520180818
415736refgcc -m32 -O3 -fomit-frame-pointer2018082520180818
417992refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2018082520180818
418171refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2018082520180818
420286refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2018082520180818
420718refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2018082520180818
425167refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082520180818
426609refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082520180818
427510refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082520180818
428250refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2018082520180818
428333refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2018082520180818
429584refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082520180818
430435refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2018082520180818
431101refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2018082520180818
435415refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2018082520180818
437851refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2018082520180818
438456refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2018082520180818
438782refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2018082520180818
442300refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2018082520180818
443619refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018082520180818
460883refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2018082520180818
460969refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2018082520180818
461173refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2018082520180818
462046refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082520180818
463460refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2018082520180818
468202refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082520180818
469897refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082520180818
470492refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082520180818
474312refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082520180818
476143refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082520180818
477252refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082520180818
481000refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082520180818
481093refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082520180818
481885refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082520180818
491057refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082520180818
496081refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082520180818
558871refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082520180818
560111refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2018082520180818
560246refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2018082520180818
562054refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082520180818
562577refgcc -m32 -march=nocona -O -fomit-frame-pointer2018082520180818
563091refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2018082520180818
563314refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2018082520180818
563359refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2018082520180818
563692refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2018082520180818
563879refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2018082520180818
564038refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2018082520180818
564542refgcc -m32 -march=prescott -O -fomit-frame-pointer2018082520180818
564597refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082520180818
564776refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018082520180818
565758refgcc -m32 -O2 -fomit-frame-pointer2018082520180818
566488refgcc -m32 -march=k8 -O -fomit-frame-pointer2018082520180818
566627refgcc -m32 -march=athlon -O -fomit-frame-pointer2018082520180818
566659refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2018082520180818
567798refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2018082520180818
570215refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2018082520180818
571027refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2018082520180818
571347refgcc -m32 -march=barcelona -O -fomit-frame-pointer2018082520180818
571379refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082520180818
571573refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2018082520180818
572455refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082520180818
572980refgcc -m32 -march=core2 -O -fomit-frame-pointer2018082520180818
573228refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2018082520180818
573911refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2018082520180818
574379refgcc -m32 -O -fomit-frame-pointer2018082520180818
575591refgcc -m32 -march=corei7 -O -fomit-frame-pointer2018082520180818
620147refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082520180818
621109refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082520180818
622798refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082520180818
626800refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082520180818
643412refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2018082520180818
643708refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2018082520180818
644022refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2018082520180818
646117refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2018082520180818
662585refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2018082520180818
681552refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2018082520180818
694438refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2018082520180818
696097refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2018082520180818
696401refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2018082520180818
698087refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2018082520180818
698519refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2018082520180818
698942refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082520180818
699174refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082520180818
699234refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082520180818
699496refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2018082520180818
700502refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2018082520180818
700776refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082520180818
702564refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2018082520180818
705524refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082520180818
707401refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082520180818
708286refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2018082520180818
708498refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082520180818
713401refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082520180818
713514refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2018082520180818
714061refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2018082520180818
714671refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082520180818
725828refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082520180818
727552refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082520180818
728770refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2018082520180818
728956refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2018082520180818
747403refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2018082520180818
770308refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2018082520180818
791494refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2018082520180818
791873refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2018082520180818
798449refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2018082520180818
801577refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2018082520180818
809332refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2018082520180818
810419refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2018082520180818
875252refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2018082520180818
875508refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2018082520180818
875533refgcc -m32 -march=k6 -O -fomit-frame-pointer2018082520180818
882063refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2018082520180818
882196refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082520180818
882288refgcc -m32 -march=i486 -O -fomit-frame-pointer2018082520180818
885772refgcc -m32 -march=pentium -O -fomit-frame-pointer2018082520180818
887056refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082520180818
892732refgcc -m32 -march=i386 -O -fomit-frame-pointer2018082520180818
916299refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2018082520180818
920413refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2018082520180818
927659refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082520180818
928601refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2018082520180818
964821refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082520180818
966010refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2018082520180818
968315refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082520180818
1000411refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082520180818
1000472refgcc -m32 -march=pentium -Os -fomit-frame-pointer2018082520180818
1003344refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2018082520180818
1003986refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2018082520180818
1004401refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2018082520180818
1004500refgcc -m32 -Os -fomit-frame-pointer2018082520180818
1007492refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2018082520180818
1007697refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2018082520180818
1010288refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2018082520180818
1010964refgcc -m32 -march=k8 -Os -fomit-frame-pointer2018082520180818
1011229refgcc -m32 -march=athlon -Os -fomit-frame-pointer2018082520180818
1012834refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2018082520180818
1014212refgcc -m32 -march=k6 -Os -fomit-frame-pointer2018082520180818
1014235refgcc -m32 -march=core2 -Os -fomit-frame-pointer2018082520180818
1015502refgcc -m32 -march=i386 -Os -fomit-frame-pointer2018082520180818
1017236refgcc -m32 -march=nocona -Os -fomit-frame-pointer2018082520180818
1019569refgcc -m32 -march=prescott -Os -fomit-frame-pointer2018082520180818
1020417refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018082520180818
1020468refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2018082520180818
1022966refgcc -m32 -march=i486 -Os -fomit-frame-pointer2018082520180818
1052182refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082520180818
1081674refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082520180818
1132327refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2018082520180818
1138308refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2018082520180818
1145234refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2018082520180818
1150369refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2018082520180818
1150927refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2018082520180818
1153341refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2018082520180818
1153474refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2018082520180818
1154367refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082520180818
1160339refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2018082520180818
1163228refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2018082520180818
1163516refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2018082520180818
1164665refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2018082520180818
1165799refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2018082520180818
1166345refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2018082520180818

Test failure

Implementation: crypto_aead/scream12v2/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/scream12v2/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: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 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:183: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:185: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: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: ...

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/scream12v2/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: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 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:183: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:185: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: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: ...

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/scream12v2/sse
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'; 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: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: ...

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/scream12v2/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: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 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:183: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:185: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: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: ...

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/scream12v2/sse
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'; 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: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: In function 'LBox16P':
scream.c: scream.c:185: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: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: ...

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