Implementation notes: amd64, hydra1, crypto_aead/iscream14v2

Computer: hydra1
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20161220
Operation: crypto_aead
Primitive: iscream14v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
474435refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016101620161009
474531refgcc -funroll-loops -O3 -fomit-frame-pointer2016101620161009
474578refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016101620161009
474830refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016101620161009
474831refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016101620161009
475005refgcc -march=barcelona -O3 -fomit-frame-pointer2016101620161009
475528refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016101620161009
476207refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016101620161009
476317refgcc -march=k8 -O3 -fomit-frame-pointer2016101620161009
476685refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016101620161009
476691refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016101620161009
477480refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016101620161009
477832refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016101620161009
485194refgcc -m64 -O3 -fomit-frame-pointer2016101620161009
485856refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016101620161009
486400refgcc -O3 -fomit-frame-pointer2016101620161009
489562refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016101620161009
489807refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016101620161009
502035refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016101620161009
502205refgcc -march=nocona -O3 -fomit-frame-pointer2016101620161009
785133refclang -O3 -fomit-frame-pointer -Qunused-arguments2016101620161009
785653refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101620161009
785795refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101620161009
785933refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101620161009
790192refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101620161009
790509refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016101620161009
1363710refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016101620161009
1363739refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016101620161009
1364013refgcc -funroll-loops -O2 -fomit-frame-pointer2016101620161009
1371446refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016101620161009
1375016refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016101620161009
1397460refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016101620161009
1397867refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016101620161009
1421778refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016101620161009
1422750refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016101620161009
1467013refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016101620161009
1467486refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016101620161009
1541730refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016101620161009
1542030refgcc -funroll-loops -O -fomit-frame-pointer2016101620161009
1542232refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016101620161009
1542469refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016101620161009
1543187refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016101620161009
1644103refgcc -march=nocona -O2 -fomit-frame-pointer2016101620161009
1644400refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016101620161009
1662019refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016101620161009
1662280refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016101620161009
1668059refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016101620161009
1668432refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016101620161009
1668856refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016101620161009
1683839refgcc -m64 -march=core2 -O -fomit-frame-pointer2016101620161009
1713744refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016101620161009
1714019refgcc -m64 -O2 -fomit-frame-pointer2016101620161009
1714482refgcc -O2 -fomit-frame-pointer2016101620161009
1720912refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016101620161009
1721874refgcc -march=k8 -O2 -fomit-frame-pointer2016101620161009
1732750refgcc -m64 -march=k8 -O -fomit-frame-pointer2016101620161009
1735941refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016101620161009
1735983refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016101620161009
1740424refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016101620161009
1740771refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016101620161009
1740792refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016101620161009
1740995refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016101620161009
1745307refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016101620161009
1754733refgcc -march=nocona -O -fomit-frame-pointer2016101620161009
1754808refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016101620161009
1755091refgcc -m64 -march=nocona -O -fomit-frame-pointer2016101620161009
1755886refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016101620161009
1755948refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016101620161009
1756205refgcc -march=barcelona -O2 -fomit-frame-pointer2016101620161009
1766451refgcc -march=nocona -Os -fomit-frame-pointer2016101620161009
1767648refgcc -O -fomit-frame-pointer2016101620161009
1768464refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016101620161009
1768530refgcc -funroll-loops -Os -fomit-frame-pointer2016101620161009
1772555refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016101620161009
1773213refgcc -march=k8 -O -fomit-frame-pointer2016101620161009
1779195refgcc -fno-schedule-insns -O -fomit-frame-pointer2016101620161009
1780920refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016101620161009
1781762refgcc -march=barcelona -O -fomit-frame-pointer2016101620161009
1790854refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016101620161009
1790958refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016101620161009
1791136refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016101620161009
1792391refgcc -m64 -O -fomit-frame-pointer2016101620161009
1793752refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016101620161009
1796264refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016101620161009
1798090refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016101620161009
1800824refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016101620161009
1800829refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016101620161009
1800925refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016101620161009
1800933refgcc -march=k8 -Os -fomit-frame-pointer2016101620161009
1801303refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016101620161009
1801437refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016101620161009
1801458refgcc -m64 -Os -fomit-frame-pointer2016101620161009
1801655refgcc -Os -fomit-frame-pointer2016101620161009
1801728refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016101620161009
1830104refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016101620161009
1839757refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016101620161009
1839912refgcc -march=barcelona -Os -fomit-frame-pointer2016101620161009
1840795refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016101620161009
5972405refcc2016101620161009
5972420refgcc -funroll-loops2016101620161009
5986689refgcc2016101620161009

Test failure

Implementation: crypto_aead/iscream14v2/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/iscream14v2/sse
Compiler: cc
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:184: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:184: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:185: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:189: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:190: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:197: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:198: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:202: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/iscream14v2/sse
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
iscream.c: iscream.c:184:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:185:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:189:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:190:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:197:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:198:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:202:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:203:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: D ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:210: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/iscream14v2/sse
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:184: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:184: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:185: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:189: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:190: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:197: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:198: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:202: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:184: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:184: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:185: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:189: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:190: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:197: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:198: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:202: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