Implementation notes: amd64, glyme, crypto_aead/scream12v1

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_aead
Primitive: scream12v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
96420ssegcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020520170105
96476ssegcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020520170105
96488ssegcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020520170105
96792ssegcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020520170105
96896ssegcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020520170105
100484ssegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020520170105
104480ssegcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020520170105
104584ssegcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020520170105
104600ssegcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020520170105
104880ssegcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020520170105
105080ssegcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020520170105
108332ssegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020520170105
113008sseclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020520170105
113048sseclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020520170105
115720ssegcc -m64 -march=corei7 -O -fomit-frame-pointer2017020520170105
115792ssegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020520170105
115936ssegcc -m64 -march=core2 -O -fomit-frame-pointer2017020520170105
115996ssegcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020520170105
116040ssegcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020520170105
116624ssegcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020520170105
157544ssegcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020520170105
157552ssegcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020520170105
157596ssegcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020520170105
158388ssegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020520170105
158728ssegcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020520170105
158760ssegcc -m64 -march=core2 -Os -fomit-frame-pointer2017020520170105
577324refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020520170105
577640refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020520170105
577640refgcc -march=nocona -O3 -fomit-frame-pointer2017020520170105
579232refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020520170105
588096refgcc -march=barcelona -O3 -fomit-frame-pointer2017020520170105
588736refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020520170105
588736refgcc -march=k8 -O3 -fomit-frame-pointer2017020520170105
589124refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020520170105
593504refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020520170105
593668refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020520170105
594392refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020520170105
594516refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020520170105
598388refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020520170105
604500refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020520170105
604500refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020520170105
604940refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020520170105
605108refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020520170105
605724refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020520170105
606932refgcc -O3 -fomit-frame-pointer2017020520170105
606932refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020520170105
606932refgcc -m64 -O3 -fomit-frame-pointer2017020520170105
610252refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020520170105
610252refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020520170105
610904refgcc -funroll-loops -O3 -fomit-frame-pointer2017020520170105
672452refclang -O3 -fomit-frame-pointer -Qunused-arguments2017020520170105
672640refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020520170105
672908refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020520170105
673752refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020520170105
676752refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020520170105
678148refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020520170105
678568refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020520170105
678648refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020520170105
678648refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020520170105
678816refgcc -funroll-loops -O2 -fomit-frame-pointer2017020520170105
678988refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020520170105
678992refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020520170105
679120refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020520170105
679532refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020520170105
679704refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020520170105
692276refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020520170105
692940refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020520170105
696960refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020520170105
697244refgcc -funroll-loops -O -fomit-frame-pointer2017020520170105
697248refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020520170105
697268refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020520170105
697388refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020520170105
697664refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020520170105
700992refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020520170105
785976refgcc -march=k8 -O2 -fomit-frame-pointer2017020520170105
789308refgcc -march=nocona -O2 -fomit-frame-pointer2017020520170105
791620refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020520170105
793908refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020520170105
795320refgcc -march=nocona -O -fomit-frame-pointer2017020520170105
796372refgcc -march=barcelona -O2 -fomit-frame-pointer2017020520170105
796728refgcc -O2 -fomit-frame-pointer2017020520170105
796728refgcc -m64 -O2 -fomit-frame-pointer2017020520170105
796740refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020520170105
797728refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020520170105
798148refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020520170105
798168refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020520170105
798624refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020520170105
798700refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020520170105
799860refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020520170105
801384refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020520170105
803628refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020520170105
803824refgcc -march=k8 -O -fomit-frame-pointer2017020520170105
803872refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020520170105
803872refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020520170105
804652refgcc -march=barcelona -O -fomit-frame-pointer2017020520170105
805416refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020520170105
806000refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020520170105
806888refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020520170105
808204refgcc -O -fomit-frame-pointer2017020520170105
808376refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020520170105
809016refgcc -m64 -O -fomit-frame-pointer2017020520170105
812336refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020520170105
813696refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020520170105
814616refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020520170105
912704refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020520170105
927236refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020520170105
932824refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020520170105
934884refgcc -march=nocona -Os -fomit-frame-pointer2017020520170105
935924refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020520170105
936380refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020520170105
937000refgcc -funroll-loops -Os -fomit-frame-pointer2017020520170105
937092refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020520170105
938176refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020520170105
938492refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020520170105
938660refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020520170105
938828refgcc -m64 -Os -fomit-frame-pointer2017020520170105
939376refgcc -march=k8 -Os -fomit-frame-pointer2017020520170105
940548refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020520170105
940832refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020520170105
940972refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020520170105
941052refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020520170105
941068refgcc -march=barcelona -Os -fomit-frame-pointer2017020520170105
941656refgcc -Os -fomit-frame-pointer2017020520170105
946612refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020520170105
947380refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020520170105
948580refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020520170105
949584refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020520170105
950000refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020520170105
3120528refcc2017020520170105
3354928refgcc -funroll-loops2017020520170105
3369484refgcc2017020520170105

Compiler output

Implementation: crypto_aead/scream12v1/sse
Compiler: cc
scream.c: scream.c:185:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:186:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: C = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:190:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: B = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:191:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: D = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:198:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:199:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: scream.c:203:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:204:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: D ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: scream.c:211:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
cc sse
clang -O3 -fomit-frame-pointer -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/scream12v1/sse
Compiler: gcc
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
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: ...

Number of similar (compiler,implementation) pairs: 70, namely:
CompilerImplementations
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=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=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/scream12v1/sse
Compiler: gcc -m64 -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' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
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: scream.c: In function 'LBox16P':
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128' [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
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: ...

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