Implementation notes: x86, kizomba, crypto_aead/scream10v2

Computer: kizomba
Architecture: x86
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_aead
Primitive: scream10v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
332407refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2018082520180818
333451refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2018082520180818
334524refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2018082520180818
334944refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082520180818
335038refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2018082520180818
335156refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2018082520180818
337895refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2018082520180818
338631refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2018082520180818
339083refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2018082520180818
339226refgcc -funroll-loops -m32 -O -fomit-frame-pointer2018082520180818
344636refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2018082520180818
346422refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2018082520180818
347228refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2018082520180818
348784refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2018082520180818
349508refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2018082520180818
349955refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2018082520180818
351467refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2018082520180818
353121refgcc -m32 -O3 -fomit-frame-pointer2018082520180818
355306refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2018082520180818
355464refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2018082520180818
355915refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2018082520180818
356825refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2018082520180818
361266refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2018082520180818
362153refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082520180818
363873refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2018082520180818
365956refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2018082520180818
366036refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2018082520180818
366516refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2018082520180818
366657refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2018082520180818
366979refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2018082520180818
368365refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2018082520180818
368998refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2018082520180818
369403refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2018082520180818
370046refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2018082520180818
370643refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018082520180818
371110refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2018082520180818
391137refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2018082520180818
391819refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2018082520180818
391885refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2018082520180818
391998refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2018082520180818
392912refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082520180818
399203refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082520180818
402881refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082520180818
403272refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082520180818
405658refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082520180818
407220refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082520180818
407683refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2018082520180818
408642refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082520180818
409726refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2018082520180818
415831refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2018082520180818
421042refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082520180818
426480refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2018082520180818
475050refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2018082520180818
477984refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2018082520180818
478542refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2018082520180818
479669refgcc -m32 -march=prescott -O -fomit-frame-pointer2018082520180818
479671refgcc -m32 -march=nocona -O -fomit-frame-pointer2018082520180818
479901refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2018082520180818
479931refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2018082520180818
479964refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2018082520180818
480069refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2018082520180818
480315refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2018082520180818
480734refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2018082520180818
481558refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2018082520180818
481623refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018082520180818
481815refgcc -m32 -O2 -fomit-frame-pointer2018082520180818
482061refgcc -m32 -march=k8 -O -fomit-frame-pointer2018082520180818
482796refgcc -m32 -march=athlon -O -fomit-frame-pointer2018082520180818
482818refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2018082520180818
483423refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2018082520180818
484129refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2018082520180818
485151refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2018082520180818
485410refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2018082520180818
485651refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2018082520180818
485740refgcc -m32 -march=core2 -O -fomit-frame-pointer2018082520180818
486115refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2018082520180818
486752refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2018082520180818
487486refgcc -m32 -march=corei7 -O -fomit-frame-pointer2018082520180818
487692refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2018082520180818
488045refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2018082520180818
488119refgcc -m32 -march=barcelona -O -fomit-frame-pointer2018082520180818
495184refgcc -m32 -O -fomit-frame-pointer2018082520180818
528315refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2018082520180818
528822refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2018082520180818
529270refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2018082520180818
529697refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2018082520180818
546320refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2018082520180818
546526refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2018082520180818
552587refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2018082520180818
553704refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2018082520180818
585633refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2018082520180818
589242refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2018082520180818
589621refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2018082520180818
591117refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082520180818
591347refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2018082520180818
591433refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2018082520180818
592687refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2018082520180818
592788refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2018082520180818
592939refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082520180818
593591refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2018082520180818
594290refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082520180818
594663refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2018082520180818
594694refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082520180818
594794refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2018082520180818
595097refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2018082520180818
595221refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2018082520180818
595385refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082520180818
595460refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2018082520180818
596705refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2018082520180818
601553refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2018082520180818
602093refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2018082520180818
602810refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2018082520180818
603387refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2018082520180818
603431refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082520180818
603559refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2018082520180818
609871refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2018082520180818
612492refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2018082520180818
652581refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2018082520180818
657516refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2018082520180818
657542refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2018082520180818
657943refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2018082520180818
670736refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2018082520180818
694754refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2018082520180818
742405refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2018082520180818
742717refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2018082520180818
743215refgcc -m32 -march=k6 -O -fomit-frame-pointer2018082520180818
746766refgcc -m32 -march=i486 -O -fomit-frame-pointer2018082520180818
748400refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2018082520180818
748562refgcc -m32 -march=pentium -O -fomit-frame-pointer2018082520180818
756869refgcc -m32 -march=i386 -O -fomit-frame-pointer2018082520180818
766827refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082520180818
767209refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082520180818
767772refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2018082520180818
772960refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2018082520180818
778706refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2018082520180818
783313refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2018082520180818
785287refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2018082520180818
814738refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2018082520180818
820924refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2018082520180818
820927refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2018082520180818
850631refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082520180818
851556refgcc -m32 -march=pentium -Os -fomit-frame-pointer2018082520180818
854308refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2018082520180818
854357refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018082520180818
855411refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2018082520180818
855434refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2018082520180818
855748refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2018082520180818
856337refgcc -m32 -march=k8 -Os -fomit-frame-pointer2018082520180818
856426refgcc -m32 -march=k6 -Os -fomit-frame-pointer2018082520180818
857162refgcc -m32 -Os -fomit-frame-pointer2018082520180818
859075refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2018082520180818
861081refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2018082520180818
861806refgcc -m32 -march=core2 -Os -fomit-frame-pointer2018082520180818
863179refgcc -m32 -march=i486 -Os -fomit-frame-pointer2018082520180818
863386refgcc -m32 -march=i386 -Os -fomit-frame-pointer2018082520180818
865472refgcc -m32 -march=athlon -Os -fomit-frame-pointer2018082520180818
865915refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2018082520180818
871603refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2018082520180818
873133refgcc -m32 -march=prescott -Os -fomit-frame-pointer2018082520180818
874553refgcc -m32 -march=nocona -Os -fomit-frame-pointer2018082520180818
896266refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2018082520180818
921690refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2018082520180818
958521refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2018082520180818
959634refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2018082520180818
962833refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2018082520180818
964498refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2018082520180818
966613refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2018082520180818
976775refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2018082520180818
976818refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2018082520180818
976829refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2018082520180818
983341refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2018082520180818
984984refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2018082520180818
985671refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2018082520180818
985972refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2018082520180818
987996refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2018082520180818
996403refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2018082520180818

Test failure

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