Implementation notes: amd64, hydra1, crypto_aead/iscream12v1

Computer: hydra1
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20161220
Operation: crypto_aead
Primitive: iscream12v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
416995refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016101620161009
417019refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016101620161009
417133refgcc -funroll-loops -O3 -fomit-frame-pointer2016101620161009
417632refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016101620161009
417858refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016101620161009
417949refgcc -march=barcelona -O3 -fomit-frame-pointer2016101620161009
417952refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016101620161009
418237refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016101620161009
419133refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016101620161009
419477refgcc -march=k8 -O3 -fomit-frame-pointer2016101620161009
419592refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016101620161009
419941refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016101620161009
420973refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016101620161009
426612refgcc -m64 -O3 -fomit-frame-pointer2016101620161009
426693refgcc -O3 -fomit-frame-pointer2016101620161009
426693refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016101620161009
429872refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016101620161009
430032refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016101620161009
436148refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016101620161009
436410refgcc -march=nocona -O3 -fomit-frame-pointer2016101620161009
684109refclang -O3 -fomit-frame-pointer -Qunused-arguments2016101620161009
684381refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101620161009
684444refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101620161009
684445refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101620161009
688437refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101620161009
688494refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016101620161009
1189530refgcc -funroll-loops -O2 -fomit-frame-pointer2016101620161009
1191757refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016101620161009
1195864refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016101620161009
1207584refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016101620161009
1210179refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016101620161009
1210715refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016101620161009
1211079refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016101620161009
1268846refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016101620161009
1269747refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016101620161009
1349155refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016101620161009
1349559refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016101620161009
1349749refgcc -funroll-loops -O -fomit-frame-pointer2016101620161009
1385736refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016101620161009
1386223refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016101620161009
1412137refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016101620161009
1412237refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016101620161009
1413592refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016101620161009
1414102refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016101620161009
1446477refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016101620161009
1446531refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016101620161009
1446667refgcc -march=barcelona -O -fomit-frame-pointer2016101620161009
1447096refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016101620161009
1463277refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016101620161009
1473791refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016101620161009
1474208refgcc -m64 -O2 -fomit-frame-pointer2016101620161009
1474664refgcc -O2 -fomit-frame-pointer2016101620161009
1476616refgcc -march=nocona -Os -fomit-frame-pointer2016101620161009
1481395refgcc -O -fomit-frame-pointer2016101620161009
1481832refgcc -fno-schedule-insns -O -fomit-frame-pointer2016101620161009
1487415refgcc -m64 -O -fomit-frame-pointer2016101620161009
1492587refgcc -march=k8 -O2 -fomit-frame-pointer2016101620161009
1494336refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016101620161009
1496320refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016101620161009
1496424refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016101620161009
1496478refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016101620161009
1496862refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016101620161009
1499246refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016101620161009
1504562refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016101620161009
1504573refgcc -march=barcelona -O2 -fomit-frame-pointer2016101620161009
1514557refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016101620161009
1514661refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016101620161009
1515504refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016101620161009
1517349refgcc -m64 -march=k8 -O -fomit-frame-pointer2016101620161009
1517535refgcc -march=nocona -O2 -fomit-frame-pointer2016101620161009
1519043refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016101620161009
1522261refgcc -funroll-loops -Os -fomit-frame-pointer2016101620161009
1522890refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016101620161009
1524963refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016101620161009
1528531refgcc -march=k8 -O -fomit-frame-pointer2016101620161009
1530990refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016101620161009
1531380refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016101620161009
1535074refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016101620161009
1536008refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016101620161009
1545968refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016101620161009
1546141refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016101620161009
1546396refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016101620161009
1546437refgcc -m64 -march=core2 -O -fomit-frame-pointer2016101620161009
1566474refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016101620161009
1567917refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016101620161009
1568069refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016101620161009
1568278refgcc -march=barcelona -Os -fomit-frame-pointer2016101620161009
1568431refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016101620161009
1568504refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016101620161009
1568581refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016101620161009
1569032refgcc -march=nocona -O -fomit-frame-pointer2016101620161009
1569131refgcc -m64 -march=nocona -O -fomit-frame-pointer2016101620161009
1569458refgcc -march=k8 -Os -fomit-frame-pointer2016101620161009
1570301refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016101620161009
1570659refgcc -m64 -Os -fomit-frame-pointer2016101620161009
1570702refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016101620161009
1570952refgcc -Os -fomit-frame-pointer2016101620161009
1591222refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016101620161009
5188753refgcc -funroll-loops2016101620161009
5189754refgcc2016101620161009
5195476refcc2016101620161009

Test failure

Implementation: crypto_aead/iscream12v1/sse
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
gcc -m64 -march=core2 -O2 -fomit-frame-pointer sse
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref sse
gcc -m64 -march=core2 -O -fomit-frame-pointer sse
gcc -m64 -march=core2 -Os -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer sse
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer sse
gcc -m64 -march=corei7 -O -fomit-frame-pointer sse
gcc -m64 -march=corei7 -Os -fomit-frame-pointer sse

Compiler output

Implementation: crypto_aead/iscream12v1/sse
Compiler: cc
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: 79, namely:
CompilerImplementations
cc sse
gcc sse
gcc -O2 -fomit-frame-pointer sse
gcc -O3 -fomit-frame-pointer sse
gcc -O -fomit-frame-pointer sse
gcc -Os -fomit-frame-pointer sse
gcc -fno-schedule-insns -O2 -fomit-frame-pointer sse
gcc -fno-schedule-insns -O3 -fomit-frame-pointer sse
gcc -fno-schedule-insns -O -fomit-frame-pointer sse
gcc -fno-schedule-insns -Os -fomit-frame-pointer sse
gcc -funroll-loops sse
gcc -funroll-loops -O2 -fomit-frame-pointer sse
gcc -funroll-loops -O3 -fomit-frame-pointer sse
gcc -funroll-loops -O -fomit-frame-pointer sse
gcc -funroll-loops -Os -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer sse
gcc -m64 -O2 -fomit-frame-pointer sse
gcc -m64 -O3 -fomit-frame-pointer sse
gcc -m64 -O -fomit-frame-pointer sse
gcc -m64 -Os -fomit-frame-pointer sse
gcc -m64 -march=k8 -O2 -fomit-frame-pointer sse
gcc -m64 -march=k8 -O3 -fomit-frame-pointer sse
gcc -m64 -march=k8 -O -fomit-frame-pointer sse
gcc -m64 -march=k8 -Os -fomit-frame-pointer sse
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer sse
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer sse
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer sse
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer sse
gcc -m64 -march=nocona -O2 -fomit-frame-pointer sse
gcc -m64 -march=nocona -O3 -fomit-frame-pointer sse
gcc -m64 -march=nocona -O -fomit-frame-pointer sse
gcc -m64 -march=nocona -Os -fomit-frame-pointer sse
gcc -march=barcelona -O2 -fomit-frame-pointer sse
gcc -march=barcelona -O3 -fomit-frame-pointer sse
gcc -march=barcelona -O -fomit-frame-pointer sse
gcc -march=barcelona -Os -fomit-frame-pointer sse
gcc -march=k8 -O2 -fomit-frame-pointer sse
gcc -march=k8 -O3 -fomit-frame-pointer sse
gcc -march=k8 -O -fomit-frame-pointer sse
gcc -march=k8 -Os -fomit-frame-pointer sse
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv sse
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv sse
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv sse
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv sse
gcc -march=nocona -O2 -fomit-frame-pointer sse
gcc -march=nocona -O3 -fomit-frame-pointer sse
gcc -march=nocona -O -fomit-frame-pointer sse
gcc -march=nocona -Os -fomit-frame-pointer sse

Compiler output

Implementation: crypto_aead/iscream12v1/sse
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
iscream.c: iscream.c:203:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:204:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:208:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:209:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:216:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:217:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:221:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:222:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: D ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:229:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments sse
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments sse
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sse
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sse
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sse
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sse

Compiler output

Implementation: crypto_aead/iscream12v1/sse
Compiler: gcc -m64 -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 -m64 -march=barcelona -O2 -fomit-frame-pointer sse
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer sse
gcc -m64 -march=barcelona -O -fomit-frame-pointer sse
gcc -m64 -march=barcelona -Os -fomit-frame-pointer sse