Implementation notes: amd64, gpu, crypto_aead/scream10v2

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: scream10v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
6006323441 0 042845 784 928ssegcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019083020190816
6321623761 0 043069 784 928ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019083020190816
6528023441 0 042845 784 928ssegcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019083020190816
6759623441 0 042845 784 928ssegcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019083020190816
6767112997 0 030013 784 928ssegcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019083020190816
6768012997 0 030013 784 928ssegcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019083020190816
6787212997 0 030013 784 928ssegcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019083020190816
6915932979 0 053605 760 1160sseclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019083020190816
6943532979 0 054389 760 1160sseclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
7355425645 0 045005 784 928ssegcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019083020190816
7392413069 0 030085 784 928ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019083020190816
7425626109 0 045301 784 928ssegcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019083020190816
7616832979 0 053605 760 1160sseclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019083020190816
7647625645 0 045021 784 928ssegcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019083020190816
7734313448 0 030221 784 928ssegcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019083020190816
7746313448 0 030221 784 928ssegcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019083020190816
7758613448 0 030221 784 928ssegcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019083020190816
7780813464 0 030237 784 928ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019083020190816
8020032979 0 054389 760 1160sseclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019083020190816
8033713633 0 030693 784 928ssegcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019083020190816
8064913633 0 030693 784 928ssegcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019083020190816
8065225645 0 044957 784 928ssegcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019083020190816
8660814081 0 031101 784 928ssegcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019083020190816
9156913758 0 030541 784 928ssegcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019083020190816
9244813758 0 030541 784 928ssegcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019083020190816
9395613758 0 030541 784 928ssegcc_-m64_-march=core2_-O_-fomit-frame-pointer2019083020190816
9926014531 0 031309 784 928ssegcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019083020190816
15214513633 0 030693 784 928ssegcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019083020190816
36100810528 0 030765 784 928refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019083020190816
36101410528 0 030765 784 928refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019083020190816
3617859325 0 028533 784 928refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019083020190816
3620439263 0 028565 784 928refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019083020190816
3630219269 0 028365 784 928refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019083020190816
3630399263 0 028565 784 928refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019083020190816
3630579263 0 028565 784 928refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019083020190816
3643628977 0 031253 784 928refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
3646988742 0 027957 784 928refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019083020190816
3653348967 0 030997 784 928refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019083020190816
36607510688 0 031005 784 928refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
3660967517 0 028061 760 1160refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019083020190816
36648010596 0 030637 784 928refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019083020190816
3665527517 0 028845 760 1160refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019083020190816
3667658745 0 028421 784 928refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
3668857517 0 028845 760 1160refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
37110410528 0 030765 784 928refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019083020190816
37272910324 0 030277 784 928refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019083020190816
37454410543 0 030165 784 928refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
3748689357 0 028613 784 928refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019083020190816
3750448977 0 031253 784 928refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
3756167517 0 028061 760 1160refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019083020190816
37620010688 0 031005 784 928refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
37659210596 0 030637 784 928refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019083020190816
3768528967 0 030997 784 928refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019083020190816
3774088713 0 028085 784 928refgcc_-march=k8_-O3_-fomit-frame-pointer2019083020190816
3783848713 0 028085 784 928refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019083020190816
3789009567 0 030557 784 928refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
3798129567 0 030557 784 928refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
3804579784 0 031325 784 928refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019083020190816
38166010197 0 030373 784 928refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019083020190816
3818407695 0 031277 760 872refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
3818649784 0 031325 784 928refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019083020190816
3821379521 0 028749 784 928refgcc_-m64_-O3_-fomit-frame-pointer2019083020190816
3821969325 0 028597 784 928refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019083020190816
38232910126 0 030101 784 928refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
38253010126 0 030101 784 928refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
3825969275 0 027981 784 928refgcc_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
3827887695 0 031277 760 872refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
38291710175 0 030205 784 928refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019083020190816
38352010324 0 030277 784 928refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019083020190816
3836437686 0 029949 760 872refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019083020190816
38370610175 0 030205 784 928refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019083020190816
38425610543 0 030165 784 928refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
38999217490 0 028421 784 928refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
3922967695 0 031277 760 872refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
3925569275 0 027981 784 928refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
3925689784 0 031325 784 928refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019083020190816
39262810197 0 030373 784 928refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019083020190816
3927929521 0 028749 784 928refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019083020190816
39280810197 0 030373 784 928refgcc_-funroll-loops_-O_-fomit-frame-pointer2019083020190816
3935649521 0 028749 784 928refgcc_-O3_-fomit-frame-pointer2019083020190816
56001312952 0 023749 784 928refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
5642886364 0 022797 784 928refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
5675076366 0 022941 784 928refgcc_-march=nocona_-O_-fomit-frame-pointer2019083020190816
5695596436 0 023301 784 928refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019083020190816
5760886476 0 023749 784 928refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
5762246485 0 023437 784 928refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019083020190816
5777646250 0 022853 784 928refgcc_-march=k8_-O_-fomit-frame-pointer2019083020190816
5779746250 0 022853 784 928refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019083020190816
5784726524 0 023525 784 928refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019083020190816
5790286524 0 023525 784 928refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019083020190816
5792646485 0 023437 784 928refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019083020190816
5795556270 0 022989 784 928refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019083020190816
5795946202 0 022893 784 928refgcc_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
5814966436 0 023301 784 928refgcc_-march=k8_-O2_-fomit-frame-pointer2019083020190816
5843806468 0 023421 784 928refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019083020190816
5845886468 0 023421 784 928refgcc_-O2_-fomit-frame-pointer2019083020190816
5924606485 0 023437 784 928refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019083020190816
5931286485 0 023437 784 928refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019083020190816
5944726270 0 022989 784 928refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019083020190816
5948606270 0 022989 784 928refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019083020190816
5949006364 0 022797 784 928refgcc_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
5949366270 0 022989 784 928refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019083020190816
5950526524 0 023525 784 928refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019083020190816
5952446273 0 022989 784 928refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019083020190816
5955726270 0 022989 784 928refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019083020190816
5963086271 0 022989 784 928refgcc_-O_-fomit-frame-pointer2019083020190816
59659212404 0 022893 784 928refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
5969406271 0 022989 784 928refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019083020190816
6009246468 0 023421 784 928refgcc_-m64_-O2_-fomit-frame-pointer2019083020190816
6009566468 0 023421 784 928refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019083020190816
6113886270 0 022989 784 928refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019083020190816
6120286270 0 022989 784 928refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019083020190816
6136606271 0 022989 784 928refgcc_-m64_-O_-fomit-frame-pointer2019083020190816
6161806366 0 022941 784 928refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019083020190816
8664695743 0 021088 760 896refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019083020190816
8672315743 0 021088 760 896refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
8679695743 0 021088 760 896refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019083020190816
8680355665 0 020992 760 896refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019083020190816
8680955743 0 021088 760 896refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019083020190816
86817011486 0 021088 760 896refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
8682815743 0 021080 760 896refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019083020190816
8687045665 0 020992 760 896refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019083020190816
8693225665 0 020992 760 896refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019083020190816
8738585638 0 020960 760 896refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019083020190816
8891645743 0 021080 760 896refgcc_-march=k8_-Os_-fomit-frame-pointer2019083020190816
8911325741 0 021080 760 896refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
8926645638 0 020952 760 896refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019083020190816
8927885638 0 020952 760 896refgcc_-Os_-fomit-frame-pointer2019083020190816
8998325684 0 021024 760 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019083020190816
9181605741 0 021080 760 896refgcc_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
9184965638 0 020952 760 896refgcc_-m64_-Os_-fomit-frame-pointer2019083020190816
9895595795 0 021168 760 896refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019083020190816
9899795795 0 021176 760 896refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
9905825795 0 021168 760 896refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019083020190816
9915455791 0 021168 760 896refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
9956195690 0 021040 760 896refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019083020190816
9980915690 0 021040 760 896refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019083020190816
9987335690 0 021040 760 896refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019083020190816
10152805795 0 021176 760 896refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
10483365791 0 021168 760 896refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
20689448493 0 026887 768 888refcc2019083020190816
20689848493 0 026887 768 888refgcc_-funroll-loops2019083020190816
21210208493 0 026887 768 888refgcc2019083020190816

Test failure

Implementation: ref
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer sse
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer sse
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer sse
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer sse
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-avx -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: sse
Security model: unknown
Compiler: cc
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
scream.c: __builtin_ia32_psubb128
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: ...

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: sse
Security model: unknown
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: sse
Security model: unknown
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'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
scream.c: __builtin_ia32_psubb128
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: In function 'LBox16P':
scream.c: scream.c:185:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
scream.c: __builtin_ia32_psubb128
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: ...

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