Implementation notes: x86, h4e450, crypto_aead/iscream12v1

Computer: h4e450
Architecture: x86
CPU ID: AuthenticAMD-00500f20-178bfbff
SUPERCOP version: 20171218
Operation: crypto_aead
Primitive: iscream12v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
810816refgcc -m32 -O3 -fomit-frame-pointer2017091820170725
816967refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017091820170725
817775refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017091820170725
819803refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017091820170725
819831refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017091820170725
820629refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017091820170725
825379refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017091820170725
825493refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017091820170725
832371refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017091820170725
833710refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017091820170725
834874refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017091820170725
835615refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017091820170725
837183refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017091820170725
838399refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017091820170725
838878refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017091820170725
839624refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017091820170725
841196refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017091820170725
841443refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017091820170725
841956refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017091820170725
845348refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017091820170725
847443refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017091820170725
848074refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017091820170725
851110refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017091820170725
852953refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017091820170725
924745refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017091820170725
924863refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017091820170725
926198refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017091820170725
937702refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017091820170725
937845refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017091820170725
944937refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017091820170725
949939refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017091820170725
950028refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017091820170725
961923refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017091820170725
963196refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017091820170725
973309refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017091820170725
973380refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017091820170725
1017017refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017091820170725
1034612refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017091820170725
1200748refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017091820170725
1290337refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017091820170725
1299861refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017091820170725
1300816refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017091820170725
1309461refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017091820170725
1313617refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017091820170725
1318448refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017091820170725
1320547refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017091820170725
1349323refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017091820170725
1350087refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017091820170725
1356305refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017091820170725
1357341refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017091820170725
1358462refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017091820170725
1366380refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017091820170725
1366447refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017091820170725
1380578refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017091820170725
1421158refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017091820170725
1434671refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017091820170725
1436305refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017091820170725
1452269refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017091820170725
1453643refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017091820170725
1453966refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017091820170725
1457775refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017091820170725
1459708refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017091820170725
1471555refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017091820170725
1472343refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017091820170725
1484242refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017091820170725
1506809refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017091820170725
1506814refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017091820170725
1512442refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017091820170725
1558247refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017091820170725
1563050refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017091820170725
1563229refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017091820170725
1563505refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017091820170725
1566151refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017091820170725
1566455refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017091820170725
1566479refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017091820170725
1568146refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017091820170725
1568512refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017091820170725
1568597refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017091820170725
1575333refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017091820170725
1576278refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017091820170725
1576458refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017091820170725
1577912refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017091820170725
1578078refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017091820170725
1582524refgcc -m32 -march=k8 -O -fomit-frame-pointer2017091820170725
1584144refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017091820170725
1584799refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017091820170725
1586462refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017091820170725
1586633refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017091820170725
1593544refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017091820170725
1593558refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017091820170725
1593654refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017091820170725
1593691refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017091820170725
1593720refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017091820170725
1593734refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017091820170725
1595026refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017091820170725
1595530refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017091820170725
1598232refgcc -m32 -Os -fomit-frame-pointer2017091820170725
1598256refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017091820170725
1600318refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017091820170725
1600655refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017091820170725
1600750refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017091820170725
1606179refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017091820170725
1606802refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017091820170725
1606892refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017091820170725
1613575refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017091820170725
1613865refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017091820170725
1614002refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017091820170725
1614268refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017091820170725
1620658refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017091820170725
1622647refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017091820170725
1626932refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017091820170725
1627683refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017091820170725
1627820refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017091820170725
1629592refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017091820170725
1631264refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017091820170725
1632622refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017091820170725
1636902refgcc -m32 -march=i386 -O -fomit-frame-pointer2017091820170725
1640802refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017091820170725
1641045refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017091820170725
1641752refgcc -m32 -O2 -fomit-frame-pointer2017091820170725
1641909refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017091820170725
1642446refgcc -m32 -march=nocona -O -fomit-frame-pointer2017091820170725
1642863refgcc -m32 -march=k6 -O -fomit-frame-pointer2017091820170725
1643315refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017091820170725
1644493refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017091820170725
1650307refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017091820170725
1653356refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017091820170725
1656287refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017091820170725
1659388refgcc -m32 -march=prescott -O -fomit-frame-pointer2017091820170725
1662310refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017091820170725
1668903refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017091820170725
1671972refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017091820170725
1672499refgcc -m32 -march=core2 -O -fomit-frame-pointer2017091820170725
1672584refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017091820170725
1692530refgcc -m32 -O -fomit-frame-pointer2017091820170725
1694272refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017091820170725
1724892refgcc -m32 -march=athlon -O -fomit-frame-pointer2017091820170725
1740533refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017091820170725
1759248refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017091820170725
1759286refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017091820170725
1765152refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017091820170725
1766539refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017091820170725
1767955refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017091820170725
1770829refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017091820170725
1771750refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017091820170725
1771916refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017091820170725
1775336refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017091820170725
1775569refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017091820170725
1777674refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017091820170725
1779915refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017091820170725
1802582refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017091820170725
1817721refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017091820170725
1820799refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017091820170725
1820898refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017091820170725
1911324refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017091820170725
1914502refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017091820170725
1922805refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017091820170725
1924324refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017091820170725
1968333refgcc -m32 -march=i486 -O -fomit-frame-pointer2017091820170725
2041707refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017091820170725
2042206refgcc -m32 -march=pentium -O -fomit-frame-pointer2017091820170725

Test failure

Implementation: crypto_aead/iscream12v1/ref
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 35, namely:
CompilerImplementations
gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer ref sse
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer ref sse
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer ref sse
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer ref sse
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer ref sse
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer ref sse
gcc -m32 -march=core2 -O2 -fomit-frame-pointer sse
gcc -m32 -march=core2 -O3 -fomit-frame-pointer sse
gcc -m32 -march=core2 -O -fomit-frame-pointer sse
gcc -m32 -march=core2 -Os -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer sse
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer sse
gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer ref sse
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer ref sse
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer ref sse
gcc -m32 -march=corei7 -O2 -fomit-frame-pointer sse
gcc -m32 -march=corei7 -O -fomit-frame-pointer sse
gcc -m32 -march=corei7 -Os -fomit-frame-pointer sse
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/iscream12v1/sse
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:17:32: warning: implicit declaration of function '__builtin_ia32_psrldi128' [-Wimplicit-function-declaration]
iscream.c: #define shift_right(x) ((v16qi)__builtin_ia32_psrldi128((v4si)x, 4))
iscream.c: ^
iscream.c: iscream.c:200:10: note: in expansion of macro 'shift_right'
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^
iscream.c: iscream.c:200:5: error: can't convert between vector values of different size
iscream.c: t0 = shift_right(in[0]) & V(0xf);
iscream.c: ^
iscream.c: iscream.c:201:5: error: can't convert between vector values of different size
iscream.c: t1 = shift_right(in[2]) & V(0xf);
iscream.c: ^
iscream.c: iscream.c:203:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:203:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:204:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:208:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: ...

Number of similar (compiler,implementation) pairs: 96, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer sse
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer sse
gcc -m32 -O2 -fomit-frame-pointer sse
gcc -m32 -O3 -fomit-frame-pointer sse
gcc -m32 -O -fomit-frame-pointer sse
gcc -m32 -Os -fomit-frame-pointer sse
gcc -m32 -march=athlon -O2 -fomit-frame-pointer sse
gcc -m32 -march=athlon -O3 -fomit-frame-pointer sse
gcc -m32 -march=athlon -O -fomit-frame-pointer sse
gcc -m32 -march=athlon -Os -fomit-frame-pointer sse
gcc -m32 -march=i386 -O2 -fomit-frame-pointer sse
gcc -m32 -march=i386 -O3 -fomit-frame-pointer sse
gcc -m32 -march=i386 -O -fomit-frame-pointer sse
gcc -m32 -march=i386 -Os -fomit-frame-pointer sse
gcc -m32 -march=i486 -O2 -fomit-frame-pointer sse
gcc -m32 -march=i486 -O3 -fomit-frame-pointer sse
gcc -m32 -march=i486 -O -fomit-frame-pointer sse
gcc -m32 -march=i486 -Os -fomit-frame-pointer sse
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer sse
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer sse
gcc -m32 -march=k6-2 -O -fomit-frame-pointer sse
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer sse
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer sse
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer sse
gcc -m32 -march=k6-3 -O -fomit-frame-pointer sse
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer sse
gcc -m32 -march=k6 -O2 -fomit-frame-pointer sse
gcc -m32 -march=k6 -O3 -fomit-frame-pointer sse
gcc -m32 -march=k6 -O -fomit-frame-pointer sse
gcc -m32 -march=k6 -Os -fomit-frame-pointer sse
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer sse
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer sse
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentium2 -O -fomit-frame-pointer sse
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer sse
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentium3 -O -fomit-frame-pointer sse
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer sse
gcc -m32 -march=pentium -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentium -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentium -O -fomit-frame-pointer sse
gcc -m32 -march=pentium -Os -fomit-frame-pointer sse
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer sse
gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer sse
gcc -m32 -march=pentiumpro -O -fomit-frame-pointer sse
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer sse

Compiler output

Implementation: crypto_aead/iscream12v1/sse
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:203:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:203:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:204:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:208:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:209:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:216:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:217:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:221:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.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/iscream12v1/sse
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:203:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:203:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:204:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:208:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:209:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:216:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:217:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:221:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: ...
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:203:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:203:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:204:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:208:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:209:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:216:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:217:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:221:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.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