Implementation notes: amd64, glyme, crypto_aead/scream12v2

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_aead
Primitive: scream12v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
95892ssegcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020520170105
95896ssegcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020520170105
95904ssegcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020520170105
96004ssegcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020520170105
96008ssegcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020520170105
100036ssegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020520170105
103752ssegcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020520170105
103852ssegcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020520170105
103876ssegcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020520170105
103876ssegcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020520170105
105420ssegcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020520170105
107468ssegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020520170105
111308sseclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020520170105
111376sseclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020520170105
116412ssegcc -m64 -march=core2 -O -fomit-frame-pointer2017020520170105
116416ssegcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020520170105
116416ssegcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020520170105
116556ssegcc -m64 -march=corei7 -O -fomit-frame-pointer2017020520170105
116652ssegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020520170105
116676ssegcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020520170105
155584ssegcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020520170105
156172ssegcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020520170105
156364ssegcc -m64 -march=core2 -Os -fomit-frame-pointer2017020520170105
156440ssegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020520170105
156784ssegcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020520170105
156992ssegcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020520170105
579916refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020520170105
581448refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020520170105
584084refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020520170105
584084refgcc -march=nocona -O3 -fomit-frame-pointer2017020520170105
587628refgcc -march=barcelona -O3 -fomit-frame-pointer2017020520170105
587996refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020520170105
587996refgcc -march=k8 -O3 -fomit-frame-pointer2017020520170105
590744refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020520170105
593456refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020520170105
593460refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020520170105
593892refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020520170105
594048refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020520170105
598980refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020520170105
604412refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020520170105
604416refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020520170105
604624refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020520170105
604676refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020520170105
604696refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020520170105
606860refgcc -O3 -fomit-frame-pointer2017020520170105
606860refgcc -m64 -O3 -fomit-frame-pointer2017020520170105
606884refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020520170105
609784refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020520170105
609784refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020520170105
610768refgcc -funroll-loops -O3 -fomit-frame-pointer2017020520170105
672716refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020520170105
672816refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020520170105
673204refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020520170105
674808refclang -O3 -fomit-frame-pointer -Qunused-arguments2017020520170105
677760refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020520170105
677764refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020520170105
678744refgcc -funroll-loops -O2 -fomit-frame-pointer2017020520170105
678808refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020520170105
679388refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020520170105
679884refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020520170105
679892refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020520170105
681352refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020520170105
681984refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020520170105
682248refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020520170105
684956refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020520170105
691780refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020520170105
692364refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020520170105
697228refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020520170105
697420refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020520170105
698084refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020520170105
699732refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020520170105
701780refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020520170105
701868refgcc -funroll-loops -O -fomit-frame-pointer2017020520170105
701868refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020520170105
783480refgcc -march=nocona -O2 -fomit-frame-pointer2017020520170105
783584refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020520170105
786744refgcc -march=k8 -O2 -fomit-frame-pointer2017020520170105
789864refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020520170105
791256refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020520170105
792380refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020520170105
794104refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020520170105
795948refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020520170105
796720refgcc -O2 -fomit-frame-pointer2017020520170105
796772refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020520170105
796776refgcc -m64 -O2 -fomit-frame-pointer2017020520170105
797468refgcc -march=barcelona -O2 -fomit-frame-pointer2017020520170105
797760refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020520170105
798120refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020520170105
798328refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020520170105
798712refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020520170105
800580refgcc -march=k8 -O -fomit-frame-pointer2017020520170105
801356refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020520170105
801484refgcc -march=nocona -O -fomit-frame-pointer2017020520170105
802492refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020520170105
804896refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020520170105
805680refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020520170105
806244refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020520170105
807400refgcc -O -fomit-frame-pointer2017020520170105
808100refgcc -m64 -O -fomit-frame-pointer2017020520170105
808100refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020520170105
810116refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020520170105
811460refgcc -march=barcelona -O -fomit-frame-pointer2017020520170105
812344refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020520170105
823708refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020520170105
929680refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020520170105
929680refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020520170105
931220refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020520170105
931552refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020520170105
931564refgcc -funroll-loops -Os -fomit-frame-pointer2017020520170105
932564refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020520170105
932608refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020520170105
933088refgcc -Os -fomit-frame-pointer2017020520170105
933168refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020520170105
933844refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020520170105
936284refgcc -march=nocona -Os -fomit-frame-pointer2017020520170105
937816refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020520170105
940796refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020520170105
941932refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020520170105
942000refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020520170105
942000refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020520170105
942136refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020520170105
942264refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020520170105
942380refgcc -march=barcelona -Os -fomit-frame-pointer2017020520170105
942812refgcc -march=k8 -Os -fomit-frame-pointer2017020520170105
942956refgcc -m64 -Os -fomit-frame-pointer2017020520170105
944028refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020520170105
950032refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020520170105
950836refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020520170105
3085048refcc2017020520170105
3361008refgcc2017020520170105
3372540refgcc -funroll-loops2017020520170105

Compiler output

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