Implementation notes: amd64, oki, crypto_aead/scream10v3

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: scream10v3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
59996? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011020181123
60150? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019011020181123
60166? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011020181123
63962? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011020181123
64068? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011020181123
64114? ? ?? ? ?ssegcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019011020181123
64172? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019011020181123
64250? ? ?? ? ?ssegcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019011020181123
64290? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019011020181123
65458? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011020181123
65486? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011020181123
65530? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011020181123
65636? ? ?? ? ?sseclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019011020181123
65688? ? ?? ? ?sseclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
65708? ? ?? ? ?sseclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
65788? ? ?? ? ?sseclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019011020181123
66264? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011020181123
66342? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011020181123
66528? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011020181123
69738? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011020181123
69750? ? ?? ? ?ssegcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019011020181123
69900? ? ?? ? ?ssegcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019011020181123
69962? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019011020181123
70034? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019011020181123
70120? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019011020181123
70178? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019011020181123
70186? ? ?? ? ?ssegcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019011020181123
70272? ? ?? ? ?ssegcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019011020181123
71002? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011020181123
71162? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011020181123
71288? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011020181123
71346? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011020181123
73422? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011020181123
74256? ? ?? ? ?ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011020181123
74296? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011020181123
75092? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011020181123
75316? ? ?? ? ?ssegcc_-m64_-march=core2_-O_-fomit-frame-pointer2019011020181123
75336? ? ?? ? ?ssegcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019011020181123
75440? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019011020181123
75510? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019011020181123
275022? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
275034? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
275416? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011020181123
275636? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
275750? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011020181123
275970? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019011020181123
276262? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
276342? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019011020181123
276842? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019011020181123
277024? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019011020181123
277512? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019011020181123
281304? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019011020181123
281492? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
281496? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019011020181123
281538? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011020181123
281670? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019011020181123
281864? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
282164? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
282286? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
282496? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019011020181123
284426? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
284644? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019011020181123
284648? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019011020181123
285220? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
285334? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019011020181123
285662? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
285810? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
286490? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019011020181123
287318? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019011020181123
287496? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
287536? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019011020181123
287696? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019011020181123
287830? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
289314? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019011020181123
289622? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019011020181123
291588? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019011020181123
291594? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011020181123
291772? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019011020181123
293778? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019011020181123
293808? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019011020181123
293828? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011020181123
294830? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019011020181123
295062? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019011020181123
295436? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011020181123
295636? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011020181123
402974? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019011020181123
403380? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
403790? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
404532? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019011020181123
422652? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011020181123
423284? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011020181123
423584? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
424068? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019011020181123
425104? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011020181123
425158? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011020181123
425342? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019011020181123
425706? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
425898? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011020181123
426004? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
426502? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019011020181123
426644? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
426746? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019011020181123
427220? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011020181123
427522? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019011020181123
428248? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019011020181123
428984? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019011020181123
430026? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019011020181123
431714? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019011020181123
432900? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
433158? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019011020181123
433374? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019011020181123
433432? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019011020181123
434060? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011020181123
434082? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019011020181123
434098? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
434176? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019011020181123
434180? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019011020181123
434354? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019011020181123
434416? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011020181123
435314? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011020181123
435750? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019011020181123
437366? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011020181123
437594? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011020181123
438148? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019011020181123
438510? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019011020181123
448846? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019011020181123
449046? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
449066? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
449578? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
622768? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011020181123
624432? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019011020181123
624590? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019011020181123
624988? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019011020181123
625468? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
625530? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011020181123
625752? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
626312? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019011020181123
626358? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011020181123
626962? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019011020181123
626970? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011020181123
627572? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
627684? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011020181123
628260? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
628696? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019011020181123
629784? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011020181123
629958? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019011020181123
630148? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019011020181123
815956? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
816566? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
817034? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019011020181123
817110? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011020181123
817244? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019011020181123
817370? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019011020181123
817654? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
817656? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019011020181123
818032? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
1462104? ? ?? ? ?refgcc2019011020181123
1463210? ? ?? ? ?refgcc_-funroll-loops2019011020181123
1482768? ? ?? ? ?refcc2019011020181123

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0xa4a060: v4i64 = X86ISD::VTRUNC 0xa49e90
try.c: 0xa49e90: v16i32 = vselect 0xa64120, 0x9f6810, 0xa49d60
try.c: 0xa64120: v4i1 = X86ISD::PCMPGTM 0xa45ac0, 0x9f75c0
try.c: 0xa45ac0: v4i64 = X86ISD::VBROADCAST 0x9f7950
try.c: 0x9f7950: i64,ch = load<LD8[%uglygep72]> 0x93fdd0, 0xa015a0, undef:i64
try.c: 0xa015a0: i64 = add 0xa469a0, 0x9da730
try.c: 0xa469a0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xa3c210: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x9da730: i64 = shl 0xa3b9c0, Constant:i8<3>
try.c: 0xa3b9c0: i64,ch = CopyFromReg 0x93fdd0, Register:i64 %vreg50
try.c: 0xa46e60: i64 = Register %vreg50
try.c: 0x9dbd30: i8 = Constant<3>
try.c: 0xa44130: i64 = undef
try.c: 0x9f75c0: v4i64,ch = CopyFromReg 0x93fdd0, Register:v4i64 %vreg13
try.c: 0x9de350: v4i64 = Register %vreg13
try.c: 0x9f6810: v16i32 = X86ISD::VBROADCAST 0xa3bc20
try.c: 0xa3bc20: i32,ch = load<LD4[ConstantPool]> 0x93fdd0, 0xa499d0, undef:i64
try.c: 0xa499d0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x9ec480: i64 = TargetConstantPool<i32 1> 0
try.c: 0xa44130: i64 = undef
try.c: 0xa49d60: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0xa49c30: i32 = Constant<0>
try.c: 0xa49c30: i32 = Constant<0>
try.c: 0xa49c30: i32 = Constant<0>
try.c: 0xa49c30: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x1e70cf0: v4i64 = X86ISD::VTRUNC 0x1e70b20
try.c: 0x1e70b20: v16i32 = vselect 0x1e5f4c0, 0x1df40a0, 0x1e709f0
try.c: 0x1e5f4c0: v4i1 = X86ISD::PCMPGTM 0x1e575d0, 0x1dfc360
try.c: 0x1e575d0: v4i64 = X86ISD::VBROADCAST 0x1dfc6f0
try.c: 0x1dfc6f0: i64,ch = load<LD8[%uglygep72]> 0x1d52dc0, 0x1e3f160, undef:i64
try.c: 0x1e3f160: i64 = add 0x1e584b0, 0x1ded760
try.c: 0x1e584b0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1e54c50: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1ded760: i64 = shl 0x1e54400, Constant:i8<3>
try.c: 0x1e54400: i64,ch = CopyFromReg 0x1d52dc0, Register:i64 %vreg50
try.c: 0x1e58970: i64 = Register %vreg50
try.c: 0x1deed60: i8 = Constant<3>
try.c: 0x1e55430: i64 = undef
try.c: 0x1dfc360: v4i64,ch = CopyFromReg 0x1d52dc0, Register:v4i64 %vreg13
try.c: 0x1e08770: v4i64 = Register %vreg13
try.c: 0x1df40a0: v16i32 = X86ISD::VBROADCAST 0x1e54660
try.c: 0x1e54660: i32,ch = load<LD4[ConstantPool]> 0x1d52dc0, 0x1e70660, undef:i64
try.c: 0x1e70660: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1dfe120: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1e55430: i64 = undef
try.c: 0x1e709f0: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x1e708c0: i32 = Constant<0>
try.c: 0x1e708c0: i32 = Constant<0>
try.c: 0x1e708c0: i32 = Constant<0>
try.c: 0x1e708c0: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Compiler output

Implementation: sse
Security model: unknown
Compiler: cc
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:202:8: error: incompatible types when assigning to type 'v16qi' 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' 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' 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' 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' 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' 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' involves truncation
scream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
scream.c: ^
scream.c: scream.c:221:7: error: conversion of scalar 'int' to vector 'v16qi' involves truncation
scream.c: D ^= __builtin_ia32_pshufb128(table, in[2]);
scream.c: ^
scream.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc 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: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x20371e0: v4i64 = X86ISD::VTRUNC 0x2037010
try.c: 0x2037010: v16i32 = vselect 0x20405f0, 0x1fb1e10, 0x2036ee0
try.c: 0x20405f0: v4i1 = X86ISD::PCMPGTM 0x20216e0, 0x1fcb930
try.c: 0x20216e0: v4i64 = X86ISD::VBROADCAST 0x1fcbcc0
try.c: 0x1fcbcc0: i64,ch = load<LD8[%uglygep72]> 0x1f1adb0, 0x200f480, undef:i64
try.c: 0x200f480: i64 = add 0x20225c0, 0x1fcdf20
try.c: 0x20225c0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2019040: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1fcdf20: i64 = shl 0x20187f0, Constant:i8<3>
try.c: 0x20187f0: i64,ch = CopyFromReg 0x1f1adb0, Register:i64 %vreg50
try.c: 0x2022a80: i64 = Register %vreg50
try.c: 0x1f9b820: i8 = Constant<3>
try.c: 0x201fd50: i64 = undef
try.c: 0x1fcb930: v4i64,ch = CopyFromReg 0x1f1adb0, Register:v4i64 %vreg13
try.c: 0x1fbbec0: v4i64 = Register %vreg13
try.c: 0x1fb1e10: v16i32 = X86ISD::VBROADCAST 0x2018a50
try.c: 0x2018a50: i32,ch = load<LD4[ConstantPool]> 0x1f1adb0, 0x2036b50, undef:i64
try.c: 0x2036b50: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1fb99e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x201fd50: i64 = undef
try.c: 0x2036ee0: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x2036db0: i32 = Constant<0>
try.c: 0x2036db0: i32 = Constant<0>
try.c: 0x2036db0: i32 = Constant<0>
try.c: 0x2036db0: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments sse

Compiler output

Implementation: sse
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x2362380: v4i64 = X86ISD::VTRUNC 0x23621b0
try.c: 0x23621b0: v16i32 = vselect 0x235edf0, 0x22eb690, 0x2362080
try.c: 0x235edf0: v4i1 = X86ISD::PCMPGTM 0x2349c50, 0x2309890
try.c: 0x2349c50: v4i64 = X86ISD::VBROADCAST 0x2309c20
try.c: 0x2309c20: i64,ch = load<LD8[%uglygep72]> 0x2244dd0, 0x2329f00, undef:i64
try.c: 0x2329f00: i64 = add 0x234ab30, 0x22e0420
try.c: 0x234ab30: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2338960: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x22e0420: i64 = shl 0x2338110, Constant:i8<3>
try.c: 0x2338110: i64,ch = CopyFromReg 0x2244dd0, Register:i64 %vreg50
try.c: 0x234aff0: i64 = Register %vreg50
try.c: 0x22dd9e0: i8 = Constant<3>
try.c: 0x23482c0: i64 = undef
try.c: 0x2309890: v4i64,ch = CopyFromReg 0x2244dd0, Register:v4i64 %vreg13
try.c: 0x22e5c60: v4i64 = Register %vreg13
try.c: 0x22eb690: v16i32 = X86ISD::VBROADCAST 0x2338370
try.c: 0x2338370: i32,ch = load<LD4[ConstantPool]> 0x2244dd0, 0x2361cf0, undef:i64
try.c: 0x2361cf0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x22e2f70: i64 = TargetConstantPool<i32 1> 0
try.c: 0x23482c0: i64 = undef
try.c: 0x2362080: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x2361f50: i32 = Constant<0>
try.c: 0x2361f50: i32 = Constant<0>
try.c: 0x2361f50: i32 = Constant<0>
try.c: 0x2361f50: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments sse

Compiler output

Implementation: sse
Security model: unknown
Compiler: gcc
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: 70, namely:
CompilerImplementations
gcc sse
gcc -O2 -fomit-frame-pointer sse
gcc -O3 -fomit-frame-pointer sse
gcc -O -fomit-frame-pointer sse
gcc -Os -fomit-frame-pointer sse
gcc -fno-schedule-insns -O2 -fomit-frame-pointer sse
gcc -fno-schedule-insns -O3 -fomit-frame-pointer sse
gcc -fno-schedule-insns -O -fomit-frame-pointer sse
gcc -fno-schedule-insns -Os -fomit-frame-pointer sse
gcc -funroll-loops sse
gcc -funroll-loops -O2 -fomit-frame-pointer sse
gcc -funroll-loops -O3 -fomit-frame-pointer sse
gcc -funroll-loops -O -fomit-frame-pointer sse
gcc -funroll-loops -Os -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer sse
gcc -m64 -O2 -fomit-frame-pointer sse
gcc -m64 -O3 -fomit-frame-pointer sse
gcc -m64 -O -fomit-frame-pointer sse
gcc -m64 -Os -fomit-frame-pointer sse
gcc -m64 -march=k8 -O2 -fomit-frame-pointer sse
gcc -m64 -march=k8 -O3 -fomit-frame-pointer sse
gcc -m64 -march=k8 -O -fomit-frame-pointer sse
gcc -m64 -march=k8 -Os -fomit-frame-pointer sse
gcc -m64 -march=nocona -O2 -fomit-frame-pointer sse
gcc -m64 -march=nocona -O3 -fomit-frame-pointer sse
gcc -m64 -march=nocona -O -fomit-frame-pointer sse
gcc -m64 -march=nocona -Os -fomit-frame-pointer sse
gcc -march=barcelona -O2 -fomit-frame-pointer sse
gcc -march=barcelona -O3 -fomit-frame-pointer sse
gcc -march=barcelona -O -fomit-frame-pointer sse
gcc -march=barcelona -Os -fomit-frame-pointer sse
gcc -march=k8 -O2 -fomit-frame-pointer sse
gcc -march=k8 -O3 -fomit-frame-pointer sse
gcc -march=k8 -O -fomit-frame-pointer sse
gcc -march=k8 -Os -fomit-frame-pointer sse
gcc -march=nocona -O2 -fomit-frame-pointer sse
gcc -march=nocona -O3 -fomit-frame-pointer sse
gcc -march=nocona -O -fomit-frame-pointer sse
gcc -march=nocona -Os -fomit-frame-pointer sse

Compiler output

Implementation: 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