Implementation notes: amd64, oki, crypto_aead/iscream14v1

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: iscream14v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
81562? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011020181123
81580? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011020181123
81590? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019011020181123
81906? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011020181123
85318? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011020181123
86876? ? ?? ? ?ssegcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019011020181123
87360? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019011020181123
87362? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019011020181123
87376? ? ?? ? ?ssegcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019011020181123
88730? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011020181123
88920? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011020181123
89048? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011020181123
89072? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011020181123
89810? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011020181123
89824? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011020181123
90038? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011020181123
90772? ? ?? ? ?sseclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019011020181123
90782? ? ?? ? ?sseclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
90900? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011020181123
90952? ? ?? ? ?sseclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
90992? ? ?? ? ?sseclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019011020181123
93408? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011020181123
94478? ? ?? ? ?ssegcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019011020181123
94958? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019011020181123
95002? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019011020181123
95130? ? ?? ? ?ssegcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019011020181123
95416? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019011020181123
95418? ? ?? ? ?ssegcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019011020181123
95430? ? ?? ? ?ssegcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019011020181123
95468? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019011020181123
95756? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011020181123
95848? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011020181123
96266? ? ?? ? ?ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011020181123
96424? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011020181123
96520? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011020181123
96540? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011020181123
102024? ? ?? ? ?ssegcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019011020181123
102202? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019011020181123
102284? ? ?? ? ?ssegcc_-m64_-march=core2_-O_-fomit-frame-pointer2019011020181123
102688? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019011020181123
339478? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
339784? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
339790? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
340010? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019011020181123
340020? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019011020181123
340192? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019011020181123
340538? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
340586? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
340910? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011020181123
341342? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019011020181123
341466? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
341538? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019011020181123
341586? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011020181123
341602? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019011020181123
342300? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019011020181123
344760? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
344866? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019011020181123
344910? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
345306? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011020181123
345642? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019011020181123
351378? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019011020181123
352658? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011020181123
352840? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019011020181123
353924? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011020181123
354022? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019011020181123
354114? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019011020181123
354278? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011020181123
453248? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
453690? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019011020181123
453702? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
456460? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019011020181123
486304? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
486498? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
486956? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019011020181123
487362? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
620174? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
620982? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
622588? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
622696? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
622822? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019011020181123
622966? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019011020181123
623028? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019011020181123
623184? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019011020181123
623220? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019011020181123
628440? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019011020181123
628458? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019011020181123
629634? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019011020181123
629636? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011020181123
629900? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
629986? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
631220? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019011020181123
631336? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019011020181123
631912? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019011020181123
686010? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
686426? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019011020181123
686608? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011020181123
686936? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019011020181123
686938? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019011020181123
687528? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011020181123
687572? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011020181123
687630? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
688368? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011020181123
688702? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011020181123
689342? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019011020181123
689672? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019011020181123
689746? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019011020181123
690688? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019011020181123
690852? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019011020181123
691434? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
692482? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011020181123
693874? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
694356? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019011020181123
694476? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019011020181123
699964? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019011020181123
700134? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011020181123
700416? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019011020181123
700424? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011020181123
700438? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019011020181123
700440? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019011020181123
700582? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011020181123
700866? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011020181123
702038? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019011020181123
702040? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019011020181123
702886? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011020181123
703000? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019011020181123
703328? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019011020181123
704796? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
704826? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
705378? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019011020181123
858384? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011020181123
859220? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
859246? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
859260? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019011020181123
859374? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019011020181123
859398? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019011020181123
859526? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019011020181123
859724? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011020181123
860236? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011020181123
861346? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011020181123
861802? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011020181123
862506? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019011020181123
864284? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011020181123
864374? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019011020181123
864442? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019011020181123
864478? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019011020181123
865896? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
866054? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
1301018? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
1301332? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
1307886? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019011020181123
1307938? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019011020181123
1309310? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011020181123
1310360? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019011020181123
1310378? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
1310746? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
1313776? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019011020181123
2095436? ? ?? ? ?refcc2019011020181123
2151250? ? ?? ? ?refgcc_-funroll-loops2019011020181123
2152654? ? ?? ? ?refgcc2019011020181123

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: 0x1d71bd0: v4i64 = X86ISD::VTRUNC 0x1d71a00
try.c: 0x1d71a00: v16i32 = vselect 0x1d8e3d0, 0x1d14fb0, 0x1d718d0
try.c: 0x1d8e3d0: v4i1 = X86ISD::PCMPGTM 0x1d6e640, 0x1d15d60
try.c: 0x1d6e640: v4i64 = X86ISD::VBROADCAST 0x1d160f0
try.c: 0x1d160f0: i64,ch = load<LD8[%uglygep72]> 0x1c69dd0, 0x1d2b570, undef:i64
try.c: 0x1d2b570: i64 = add 0x1d6f520, 0x1cca1b0
try.c: 0x1d6f520: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1d66f20: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1cca1b0: i64 = shl 0x1d666d0, Constant:i8<3>
try.c: 0x1d666d0: i64,ch = CopyFromReg 0x1c69dd0, Register:i64 %vreg50
try.c: 0x1d6f9e0: i64 = Register %vreg50
try.c: 0x1d16dd0: i8 = Constant<3>
try.c: 0x1d6ccb0: i64 = undef
try.c: 0x1d15d60: v4i64,ch = CopyFromReg 0x1c69dd0, Register:v4i64 %vreg13
try.c: 0x1d09120: v4i64 = Register %vreg13
try.c: 0x1d14fb0: v16i32 = X86ISD::VBROADCAST 0x1d66930
try.c: 0x1d66930: i32,ch = load<LD4[ConstantPool]> 0x1c69dd0, 0x1d71540, undef:i64
try.c: 0x1d71540: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1d20170: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1d6ccb0: i64 = undef
try.c: 0x1d718d0: 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: 0x1d717a0: i32 = Constant<0>
try.c: 0x1d717a0: i32 = Constant<0>
try.c: 0x1d717a0: i32 = Constant<0>
try.c: 0x1d717a0: 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: 0x256e0d0: v4i64 = X86ISD::VTRUNC 0x256df00
try.c: 0x256df00: v16i32 = vselect 0x255d9e0, 0x24e5f30, 0x256ddd0
try.c: 0x255d9e0: v4i1 = X86ISD::PCMPGTM 0x25559b0, 0x24ee050
try.c: 0x25559b0: v4i64 = X86ISD::VBROADCAST 0x24ee3e0
try.c: 0x24ee3e0: i64,ch = load<LD8[%uglygep72]> 0x244fdd0, 0x25444f0, undef:i64
try.c: 0x25444f0: i64 = add 0x2556890, 0x2503dd0
try.c: 0x2556890: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x254b8f0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x2503dd0: i64 = shl 0x254b0a0, Constant:i8<3>
try.c: 0x254b0a0: i64,ch = CopyFromReg 0x244fdd0, Register:i64 %vreg50
try.c: 0x2556d50: i64 = Register %vreg50
try.c: 0x24fda60: i8 = Constant<3>
try.c: 0x2554020: i64 = undef
try.c: 0x24ee050: v4i64,ch = CopyFromReg 0x244fdd0, Register:v4i64 %vreg13
try.c: 0x24e9650: v4i64 = Register %vreg13
try.c: 0x24e5f30: v16i32 = X86ISD::VBROADCAST 0x254b300
try.c: 0x254b300: i32,ch = load<LD4[ConstantPool]> 0x244fdd0, 0x256da40, undef:i64
try.c: 0x256da40: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x24fff20: i64 = TargetConstantPool<i32 1> 0
try.c: 0x2554020: i64 = undef
try.c: 0x256ddd0: 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: 0x256dca0: i32 = Constant<0>
try.c: 0x256dca0: i32 = Constant<0>
try.c: 0x256dca0: i32 = Constant<0>
try.c: 0x256dca0: 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
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:203:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:204:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:208:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:209:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:216:7: error: conversion of scalar 'int' to vector 'v16qi' involves truncation
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:217:7: error: conversion of scalar 'int' to vector 'v16qi' involves truncation
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:221:7: error: conversion of scalar 'int' to vector 'v16qi' involves truncation
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:222:7: error: conversion of scalar 'int' to vector 'v16qi' involves truncation
iscream.c: D ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.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
iscream.c: iscream.c:203:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:204:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:208:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:209:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:216:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:217:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:221:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:222:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: D ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:229:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.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: 0x250bc40: v4i64 = X86ISD::VTRUNC 0x250ba70
try.c: 0x250ba70: v16i32 = vselect 0x25021a0, 0x24970f0, 0x250b940
try.c: 0x25021a0: v4i1 = X86ISD::PCMPGTM 0x24f4520, 0x248c3b0
try.c: 0x24f4520: v4i64 = X86ISD::VBROADCAST 0x248c740
try.c: 0x248c740: i64,ch = load<LD8[%uglygep72]> 0x23efde0, 0x24ec590, undef:i64
try.c: 0x24ec590: i64 = add 0x24f5400, 0x2485210
try.c: 0x24f5400: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x24ed930: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x2485210: i64 = shl 0x24ed0e0, Constant:i8<3>
try.c: 0x24ed0e0: i64,ch = CopyFromReg 0x23efde0, Register:i64 %vreg50
try.c: 0x24f58c0: i64 = Register %vreg50
try.c: 0x249cb40: i8 = Constant<3>
try.c: 0x24f2b90: i64 = undef
try.c: 0x248c3b0: v4i64,ch = CopyFromReg 0x23efde0, Register:v4i64 %vreg13
try.c: 0x24b08e0: v4i64 = Register %vreg13
try.c: 0x24970f0: v16i32 = X86ISD::VBROADCAST 0x24ed340
try.c: 0x24ed340: i32,ch = load<LD4[ConstantPool]> 0x23efde0, 0x250b5b0, undef:i64
try.c: 0x250b5b0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x24ae400: i64 = TargetConstantPool<i32 1> 0
try.c: 0x24f2b90: i64 = undef
try.c: 0x250b940: 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: 0x250b810: i32 = Constant<0>
try.c: 0x250b810: i32 = Constant<0>
try.c: 0x250b810: i32 = Constant<0>
try.c: 0x250b810: 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: 0x1d041a0: v4i64 = X86ISD::VTRUNC 0x1d03fd0
try.c: 0x1d03fd0: v16i32 = vselect 0x1cd84f0, 0x1c83680, 0x1d03ea0
try.c: 0x1cd84f0: v4i1 = X86ISD::PCMPGTM 0x1cee6a0, 0x1c84430
try.c: 0x1cee6a0: v4i64 = X86ISD::VBROADCAST 0x1c847c0
try.c: 0x1c847c0: i64,ch = load<LD8[%uglygep72]> 0x1be7dd0, 0x1c80360, undef:i64
try.c: 0x1c80360: i64 = add 0x1cef580, 0x1c481d0
try.c: 0x1cef580: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1ce1710: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1c481d0: i64 = shl 0x1ce0ec0, Constant:i8<3>
try.c: 0x1ce0ec0: i64,ch = CopyFromReg 0x1be7dd0, Register:i64 %vreg50
try.c: 0x1cefa40: i64 = Register %vreg50
try.c: 0x1c6a930: i8 = Constant<3>
try.c: 0x1cecd10: i64 = undef
try.c: 0x1c84430: v4i64,ch = CopyFromReg 0x1be7dd0, Register:v4i64 %vreg13
try.c: 0x1c9acb0: v4i64 = Register %vreg13
try.c: 0x1c83680: v16i32 = X86ISD::VBROADCAST 0x1ce1120
try.c: 0x1ce1120: i32,ch = load<LD4[ConstantPool]> 0x1be7dd0, 0x1d03b10, undef:i64
try.c: 0x1d03b10: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1c987d0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1cecd10: i64 = undef
try.c: 0x1d03ea0: 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: 0x1d03d70: i32 = Constant<0>
try.c: 0x1d03d70: i32 = Constant<0>
try.c: 0x1d03d70: i32 = Constant<0>
try.c: 0x1d03d70: 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
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:203:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
iscream.c: __builtin_ia32_psubb128
iscream.c: iscream.c:203:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:204:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:208:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:209:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:216:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^~
iscream.c: iscream.c:217:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^~
iscream.c: iscream.c:221:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.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
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:203:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
iscream.c: __builtin_ia32_psubb128
iscream.c: iscream.c:203:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:204:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:208:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:209:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:216:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^~
iscream.c: iscream.c:217:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^~
iscream.c: iscream.c:221:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ...
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:203:10: warning: implicit declaration of function '__builtin_ia32_pshufb128'; did you mean '__builtin_ia32_psubb128'? [-Wimplicit-function-declaration]
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^~~~~~~~~~~~~~~~~~~~~~~~
iscream.c: __builtin_ia32_psubb128
iscream.c: iscream.c:203:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:204:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:208:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:209:8: error: incompatible types when assigning to type 'v16qi {aka __vector(16) char}' from type 'int'
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:216:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^~
iscream.c: iscream.c:217:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^~
iscream.c: iscream.c:221:7: error: conversion of scalar 'int' to vector 'v16qi {aka __vector(16) char}' involves truncation
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.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