Implementation notes: amd64, gpu, crypto_aead/scream10v3

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: scream10v3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
6126323577 0 042981 784 928ssegcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019083020190816
6361223929 0 043237 784 928ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019083020190816
6662423577 0 042981 784 928ssegcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019083020190816
6697623577 0 042981 784 928ssegcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019083020190816
6970513253 0 030269 784 928ssegcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019083020190816
6978333059 0 054469 760 1160sseclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
7069833059 0 053685 760 1160sseclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019083020190816
7146413253 0 030269 784 928ssegcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019083020190816
7154413253 0 030269 784 928ssegcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019083020190816
7260833059 0 053685 760 1160sseclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019083020190816
7391233059 0 054469 760 1160sseclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019083020190816
7430813309 0 030325 784 928ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019083020190816
7577125749 0 045061 784 928ssegcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019083020190816
7611026197 0 045389 784 928ssegcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019083020190816
7941013566 0 030349 784 928ssegcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019083020190816
7951213566 0 030349 784 928ssegcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019083020190816
7974013566 0 030349 784 928ssegcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019083020190816
8090025749 0 045109 784 928ssegcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019083020190816
8204025749 0 045125 784 928ssegcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019083020190816
8210813582 0 030365 784 928ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019083020190816
8270113857 0 030917 784 928ssegcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019083020190816
8322913857 0 030917 784 928ssegcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019083020190816
8504413857 0 030917 784 928ssegcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019083020190816
8958414305 0 031325 784 928ssegcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019083020190816
9327013862 0 030637 784 928ssegcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019083020190816
9335113862 0 030637 784 928ssegcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019083020190816
9590813862 0 030637 784 928ssegcc_-m64_-march=core2_-O_-fomit-frame-pointer2019083020190816
9886414635 0 031421 784 928ssegcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019083020190816
3669847690 0 028237 760 1168refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019083020190816
3672577690 0 029021 760 1168refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019083020190816
3674677690 0 028237 760 1168refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019083020190816
3763299486 0 028789 784 936refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019083020190816
3764199113 0 031157 784 936refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019083020190816
3765459532 0 028805 784 936refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019083020190816
3767229476 0 028573 784 936refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019083020190816
3772269532 0 028741 784 936refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019083020190816
3773829486 0 028789 784 936refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019083020190816
3783087690 0 029021 760 1168refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
3833198900 0 028581 784 936refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
3834009796 0 030797 784 936refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
3834209796 0 030797 784 936refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
38388317800 0 028581 784 936refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
38463310675 0 030909 784 936refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019083020190816
38465110675 0 030909 784 936refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019083020190816
3858369486 0 028789 784 936refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019083020190816
38587510689 0 030309 784 936refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
38622010315 0 030485 784 936refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019083020190816
3866129113 0 031157 784 936refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019083020190816
3867209123 0 031413 784 936refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
3872529123 0 031413 784 936refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
3890849564 0 028821 784 936refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019083020190816
38976610564 0 030517 784 936refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019083020190816
39036010029 0 031581 784 936refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019083020190816
3913848905 0 028117 784 936refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019083020190816
3920169518 0 028237 784 936refgcc_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
3928529518 0 028237 784 936refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
3935107837 0 031421 760 880refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
39468410689 0 030309 784 936refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
3950128852 0 028229 784 936refgcc_-march=k8_-O3_-fomit-frame-pointer2019083020190816
39629210787 0 031101 784 936refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
39649610787 0 031101 784 936refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
39661210675 0 030909 784 936refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019083020190816
39668410315 0 030485 784 936refgcc_-funroll-loops_-O_-fomit-frame-pointer2019083020190816
39739610315 0 030485 784 936refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019083020190816
39822410711 0 030749 784 936refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019083020190816
39823810029 0 031581 784 936refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019083020190816
39950410564 0 030517 784 936refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019083020190816
40080410029 0 031581 784 936refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019083020190816
40139610277 0 030245 784 936refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
4018539740 0 028973 784 936refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019083020190816
40236410277 0 030245 784 936refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
4032069740 0 028973 784 936refgcc_-O3_-fomit-frame-pointer2019083020190816
40372810326 0 030349 784 936refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019083020190816
4037607837 0 031421 760 880refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
4040687837 0 031421 760 880refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
4069728852 0 028229 784 936refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019083020190816
40925610711 0 030749 784 936refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019083020190816
4244209740 0 028973 784 936refgcc_-m64_-O3_-fomit-frame-pointer2019083020190816
42637610326 0 030349 784 936refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019083020190816
4564387836 0 030093 760 880refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019083020190816
5675946589 0 023549 784 936refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019083020190816
5677896589 0 023549 784 936refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019083020190816
5680236516 0 023381 784 936refgcc_-march=k8_-O2_-fomit-frame-pointer2019083020190816
56808613080 0 023813 784 936refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
5753496324 0 022933 784 936refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019083020190816
5755866476 0 023053 784 936refgcc_-march=nocona_-O_-fomit-frame-pointer2019083020190816
5761056348 0 023069 784 936refgcc_-m64_-O_-fomit-frame-pointer2019083020190816
5777676347 0 023069 784 936refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019083020190816
57778212552 0 022973 784 936refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
5778186347 0 023069 784 936refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019083020190816
5780196347 0 023069 784 936refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019083020190816
5790546357 0 023069 784 936refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019083020190816
5805696605 0 023565 784 936refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019083020190816
5827126589 0 023549 784 936refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019083020190816
5851646628 0 023637 784 936refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019083020190816
5875926572 0 023533 784 936refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019083020190816
5883926454 0 022877 784 936refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
5890966454 0 022877 784 936refgcc_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
5911046348 0 023069 784 936refgcc_-O_-fomit-frame-pointer2019083020190816
5913126476 0 023053 784 936refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019083020190816
5913166324 0 022933 784 936refgcc_-march=k8_-O_-fomit-frame-pointer2019083020190816
5937486347 0 023069 784 936refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019083020190816
5939886347 0 023069 784 936refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019083020190816
5945086347 0 023069 784 936refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019083020190816
5947886276 0 022973 784 936refgcc_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
5998326516 0 023381 784 936refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019083020190816
6002206540 0 023813 784 936refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
6021246628 0 023637 784 936refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019083020190816
6032926628 0 023637 784 936refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019083020190816
6042046572 0 023533 784 936refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019083020190816
6048886572 0 023533 784 936refgcc_-O2_-fomit-frame-pointer2019083020190816
6049206572 0 023533 784 936refgcc_-m64_-O2_-fomit-frame-pointer2019083020190816
6088766348 0 023069 784 936refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019083020190816
6112126347 0 023069 784 936refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019083020190816
7768955836 0 021224 760 904refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
7788905731 0 021088 760 904refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019083020190816
7791365731 0 021088 760 904refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019083020190816
7799645731 0 021088 760 904refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019083020190816
7974045836 0 021216 760 904refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019083020190816
8007805836 0 021224 760 904refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
8054125836 0 021216 760 904refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019083020190816
8065285831 0 021200 760 904refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
8079325831 0 021200 760 904refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
9713945789 0 021128 760 904refgcc_-march=k8_-Os_-fomit-frame-pointer2019083020190816
9722165789 0 021136 760 904refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
9732815789 0 021128 760 904refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019083020190816
9739295789 0 021136 760 904refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019083020190816
9739925789 0 021136 760 904refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019083020190816
97561211578 0 021136 760 904refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
9762425684 0 021000 760 904refgcc_-m64_-Os_-fomit-frame-pointer2019083020190816
9769385684 0 021000 760 904refgcc_-Os_-fomit-frame-pointer2019083020190816
9781835684 0 021008 760 904refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019083020190816
9818405711 0 021040 760 904refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019083020190816
9988885789 0 021136 760 904refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019083020190816
10000005786 0 021128 760 904refgcc_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
10019885786 0 021128 760 904refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
10026525711 0 021040 760 904refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019083020190816
10032485711 0 021040 760 904refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019083020190816
10046965730 0 021056 760 904refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019083020190816
10329445684 0 021000 760 904refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019083020190816
19436558565 0 026967 768 896refgcc_-funroll-loops2019083020190816
19560968565 0 026967 768 896refcc2019083020190816
19606178565 0 026967 768 896refgcc2019083020190816

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:202: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:202: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:203: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:207: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:208: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:215: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:216: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:220: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:202:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: A = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:203:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: C = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:207:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: B = __builtin_ia32_pshufb128(table, t0);
scream.c: ^
scream.c: scream.c:208:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: D = __builtin_ia32_pshufb128(table, t1);
scream.c: ^
scream.c: scream.c:215:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:216:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: scream.c:220:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:221:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
scream.c: D ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: scream.c:228: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:202: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:202: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:203: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:207: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:208: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:215: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:216: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:220: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:202: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:202: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:203: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:207: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:208: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:215: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:216: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:220: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