Implementation notes: amd64, katana, crypto_aead/scream12v1

Computer: katana
Architecture: amd64
CPU ID: GenuineIntel-000006f6-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_aead
Primitive: scream12v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
145584? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2016102820161009
145808? ? ?? ? ?ssegcc_-m64_-march=core2_-O3_-fomit-frame-pointer2016102820161009
147696? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2016102820161009
152848? ? ?? ? ?sseclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2016102820161009
152880? ? ?? ? ?sseclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102820161009
154184? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2016102820161009
154656? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2016102820161009
155280? ? ?? ? ?ssegcc_-m64_-march=core2_-O2_-fomit-frame-pointer2016102820161009
155312? ? ?? ? ?ssegcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2016102820161009
155488? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2016102820161009
158704? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2016102820161009
166024? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2016102820161009
166088? ? ?? ? ?ssegcc_-m64_-march=core2_-O_-fomit-frame-pointer2016102820161009
166168? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2016102820161009
166256? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2016102820161009
166464? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2016102820161009
167280? ? ?? ? ?ssegcc_-m64_-march=corei7_-O_-fomit-frame-pointer2016102820161009
619344? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2016102820161009
620056? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2016102820161009
620360? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2016102820161009
620456? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2016102820161009
627256? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2016102820161009
627480? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2016102820161009
627584? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2016102820161009
627712? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2016102820161009
631760? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2016102820161009
631824? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2016102820161009
632072? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2016102820161009
632504? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2016102820161009
635416? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2016102820161009
637600? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2016102820161009
641296? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2016102820161009
641480? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2016102820161009
642848? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2016102820161009
643032? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2016102820161009
643608? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2016102820161009
645976? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2016102820161009
652128? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2016102820161009
668344? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2016102820161009
671168? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2016102820161009
676768? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2016102820161009
677504? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2016102820161009
679504? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2016102820161009
680424? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2016102820161009
681000? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2016102820161009
681640? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2016102820161009
681680? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2016102820161009
718904? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2016102820161009
719528? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2016102820161009
729584? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2016102820161009
729944? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2016102820161009
729976? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2016102820161009
730176? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2016102820161009
730496? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2016102820161009
730568? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2016102820161009
731224? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2016102820161009
766288? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2016102820161009
767512? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102820161009
767664? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102820161009
767664? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102820161009
767784? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102820161009
768392? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2016102820161009
770216? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2016102820161009
771032? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2016102820161009
781136? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2016102820161009
781160? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2016102820161009
781368? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2016102820161009
781432? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2016102820161009
781696? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2016102820161009
781784? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2016102820161009
788152? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2016102820161009
788280? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2016102820161009
789256? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2016102820161009
791144? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2016102820161009
793376? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2016102820161009
794896? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2016102820161009
795328? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2016102820161009
799080? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2016102820161009
803224? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2016102820161009
803544? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2016102820161009
806496? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2016102820161009
807208? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2016102820161009
809608? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2016102820161009
810144? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2016102820161009
810216? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2016102820161009
810744? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2016102820161009
811168? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2016102820161009
811536? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2016102820161009
817152? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2016102820161009
817296? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2016102820161009
817304? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2016102820161009
822504? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2016102820161009
878816? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2016102820161009
896944? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016102820161009
899448? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2016102820161009
899576? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2016102820161009
900272? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2016102820161009
900328? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2016102820161009
900368? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2016102820161009
905880? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2016102820161009
912928? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2016102820161009
912936? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2016102820161009
913608? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016102820161009
914816? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2016102820161009
915176? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2016102820161009
915416? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2016102820161009
923208? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2016102820161009
924208? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2016102820161009
970520? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2016102820161009
972384? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2016102820161009
981000? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2016102820161009
988240? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2016102820161009
990024? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2016102820161009
991056? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2016102820161009
993976? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2016102820161009
1005904? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2016102820161009
2590464? ? ?? ? ?refcc2016102820161009
2592912? ? ?? ? ?refgcc_-funroll-loops2016102820161009
2596024? ? ?? ? ?refgcc2016102820161009

Test failure

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

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -m64 -march=core2 -Os -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer sse
gcc -m64 -march=corei7 -Os -fomit-frame-pointer sse
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer sse
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv sse

Compiler output

Implementation: crypto_aead/scream12v1/sse
Compiler: cc
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: 71, 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=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: clang -O3 -fomit-frame-pointer -Qunused-arguments
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: 4, namely:
CompilerImplementations
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 -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