Implementation notes: amd64, gpu, crypto_aead/scream12v1

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: scream12v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
7246224201 0 043573 784 928ssegcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019083020190816
7295624201 0 043573 784 928ssegcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019083020190816
7299624201 0 043573 784 928ssegcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019083020190816
7718824473 0 043749 784 928ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019083020190816
8090713493 0 030477 784 928ssegcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019083020190816
8421033267 0 053861 760 1160sseclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019083020190816
8546833267 0 054645 760 1160sseclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
8566413493 0 030477 784 928ssegcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019083020190816
8776813565 0 030549 784 928ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019083020190816
8792013493 0 030477 784 928ssegcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019083020190816
8845826453 0 045781 784 928ssegcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019083020190816
8867726453 0 045765 784 928ssegcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019083020190816
9234014243 0 030989 784 928ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019083020190816
9243314227 0 030973 784 928ssegcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019083020190816
9272114227 0 030973 784 928ssegcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019083020190816
9343233267 0 054645 760 1160sseclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019083020190816
9523233267 0 053861 760 1160sseclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019083020190816
9634426453 0 045717 784 928ssegcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019083020190816
9706814177 0 031189 784 928ssegcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019083020190816
9737114177 0 031189 784 928ssegcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019083020190816
9762914177 0 031189 784 928ssegcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019083020190816
9798414227 0 030973 784 928ssegcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019083020190816
10101214561 0 031549 784 928ssegcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019083020190816
10863914542 0 031293 784 928ssegcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019083020190816
10873514542 0 031293 784 928ssegcc_-m64_-march=core2_-O_-fomit-frame-pointer2019083020190816
10873815311 0 032061 784 928ssegcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019083020190816
11169614542 0 031293 784 928ssegcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019083020190816
18036826885 0 046045 784 928ssegcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019083020190816
4267419416 0 028461 784 928refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019083020190816
4280829472 0 028693 784 928refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019083020190816
4287039449 0 028709 784 928refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019083020190816
4289919112 0 031349 784 928refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
4290399449 0 028709 784 928refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019083020190816
4302158822 0 028485 784 928refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
4347938231 0 028733 760 1160refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019083020190816
43570410592 0 030797 784 928refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019083020190816
43637210592 0 030797 784 928refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019083020190816
4367199730 0 030685 784 928refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
4367829730 0 030685 784 928refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
43699210592 0 030797 784 928refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019083020190816
4373379439 0 028109 784 928refgcc_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
4395369472 0 028629 784 928refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019083020190816
4401369504 0 028709 784 928refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019083020190816
44017210709 0 030701 784 928refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019083020190816
44022810767 0 031037 784 928refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
44066010709 0 030701 784 928refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019083020190816
4412449112 0 031349 784 928refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
4418169449 0 028709 784 928refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019083020190816
4418968830 0 028165 784 928refgcc_-march=k8_-O3_-fomit-frame-pointer2019083020190816
4435209136 0 031125 784 928refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019083020190816
4442049136 0 031125 784 928refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019083020190816
44500817644 0 028485 784 928refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019083020190816
4454438439 0 029725 760 1160refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
44564410592 0 030181 784 928refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
4460169650 0 028845 784 928refgcc_-O3_-fomit-frame-pointer2019083020190816
4463769650 0 028845 784 928refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019083020190816
4468848439 0 029725 760 1160refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019083020190816
4469088231 0 028733 760 1160refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019083020190816
44694310271 0 030181 784 928refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
44696810592 0 030181 784 928refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
44710010446 0 030341 784 928refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019083020190816
44757210446 0 030341 784 928refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019083020190816
44861410318 0 030285 784 928refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019083020190816
44883010343 0 030485 784 928refgcc_-funroll-loops_-O_-fomit-frame-pointer2019083020190816
44947510343 0 030485 784 928refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019083020190816
4498889439 0 028109 784 928refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019083020190816
4531118390 0 031933 760 872refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
4534178390 0 031933 760 872refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
4534728878 0 028053 784 928refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019083020190816
45348810767 0 031037 784 928refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
4547409947 0 031469 784 928refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019083020190816
4550558318 0 030541 760 872refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019083020190816
4572218390 0 031933 760 872refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019083020190816
4576648830 0 028165 784 928refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019083020190816
45840810271 0 030181 784 928refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
4585489947 0 031469 784 928refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019083020190816
4591369650 0 028845 784 928refgcc_-m64_-O3_-fomit-frame-pointer2019083020190816
46056010318 0 030285 784 928refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019083020190816
4608789947 0 031469 784 928refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019083020190816
46134810343 0 030485 784 928refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019083020190816
6609186501 0 023733 784 928refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
6619536512 0 023437 784 928refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019083020190816
6623286397 0 022781 784 928refgcc_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
6697536484 0 023037 784 928refgcc_-march=nocona_-O_-fomit-frame-pointer2019083020190816
67798013002 0 023733 784 928refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019083020190816
6799606512 0 023437 784 928refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019083020190816
6803136388 0 023069 784 928refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019083020190816
6805606397 0 022781 784 928refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019083020190816
6806136391 0 023069 784 928refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019083020190816
6814086388 0 023069 784 928refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019083020190816
6814476388 0 023069 784 928refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019083020190816
6816786369 0 022949 784 928refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019083020190816
6818916389 0 023069 784 928refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019083020190816
68242812636 0 022973 784 928refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
6850566501 0 023333 784 928refgcc_-march=k8_-O2_-fomit-frame-pointer2019083020190816
6866086543 0 023469 784 928refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019083020190816
6876886484 0 023037 784 928refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019083020190816
6877766535 0 023477 784 928refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019083020190816
6881006535 0 023477 784 928refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019083020190816
6885486535 0 023477 784 928refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019083020190816
6895206463 0 023389 784 928refgcc_-m64_-O2_-fomit-frame-pointer2019083020190816
6982286389 0 023069 784 928refgcc_-O_-fomit-frame-pointer2019083020190816
6983926389 0 023069 784 928refgcc_-m64_-O_-fomit-frame-pointer2019083020190816
6991646388 0 023069 784 928refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019083020190816
6996686388 0 023069 784 928refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019083020190816
6997846512 0 023437 784 928refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019083020190816
6998046388 0 023069 784 928refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019083020190816
7001886318 0 022973 784 928refgcc_-march=barcelona_-O_-fomit-frame-pointer2019083020190816
7046486501 0 023333 784 928refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019083020190816
7085926463 0 023389 784 928refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019083020190816
7085926463 0 023389 784 928refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019083020190816
7091006463 0 023389 784 928refgcc_-O2_-fomit-frame-pointer2019083020190816
7132446369 0 022949 784 928refgcc_-march=k8_-O_-fomit-frame-pointer2019083020190816
7137286388 0 023069 784 928refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019083020190816
102516011638 0 021168 760 896refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
10264175819 0 021160 760 896refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019083020190816
10265195744 0 021072 760 896refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019083020190816
10276445763 0 021088 760 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019083020190816
10277015819 0 021168 760 896refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019083020190816
10278245819 0 021168 760 896refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019083020190816
10281425744 0 021072 760 896refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019083020190816
10314725717 0 021032 760 896refgcc_-Os_-fomit-frame-pointer2019083020190816
10315445717 0 021032 760 896refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019083020190816
10334975717 0 021040 760 896refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019083020190816
10437785817 0 021144 760 896refgcc_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
10540205819 0 021160 760 896refgcc_-march=k8_-Os_-fomit-frame-pointer2019083020190816
10541555744 0 021072 760 896refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019083020190816
10554405817 0 021144 760 896refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
10554805819 0 021168 760 896refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019083020190816
10604565717 0 021032 760 896refgcc_-m64_-Os_-fomit-frame-pointer2019083020190816
10649205819 0 021168 760 896refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
11799995763 0 021120 760 896refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019083020190816
11805875763 0 021120 760 896refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019083020190816
11807525865 0 021256 760 896refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
11811875865 0 021248 760 896refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019083020190816
11814755865 0 021256 760 896refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019083020190816
11817185865 0 021248 760 896refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019083020190816
11844845763 0 021120 760 896refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019083020190816
11871245861 0 021232 760 896refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
12127925861 0 021232 760 896refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019083020190816
23485868605 0 026999 768 888refgcc2019083020190816
23525018605 0 026999 768 888refgcc_-funroll-loops2019083020190816
24105448605 0 026999 768 888refcc2019083020190816

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