Implementation notes: amd64, oki, crypto_aead/iscream12v2

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: iscream12v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
70468? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011020181123
70484? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011020181123
70584? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011020181123
70592? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019011020181123
73398? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011020181123
74804? ? ?? ? ?ssegcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019011020181123
74846? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019011020181123
74890? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019011020181123
74904? ? ?? ? ?ssegcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019011020181123
76320? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011020181123
76662? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011020181123
76882? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011020181123
76910? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011020181123
77222? ? ?? ? ?sseclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
77246? ? ?? ? ?sseclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019011020181123
77284? ? ?? ? ?sseclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019011020181123
77468? ? ?? ? ?sseclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
78042? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011020181123
78048? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011020181123
78286? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011020181123
78434? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011020181123
80652? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011020181123
81428? ? ?? ? ?ssegcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019011020181123
81514? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019011020181123
81518? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019011020181123
81556? ? ?? ? ?ssegcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019011020181123
82404? ? ?? ? ?ssegcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019011020181123
82460? ? ?? ? ?ssegcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019011020181123
82524? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019011020181123
82652? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019011020181123
82808? ? ?? ? ?ssegcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011020181123
82826? ? ?? ? ?ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011020181123
83074? ? ?? ? ?ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011020181123
83260? ? ?? ? ?ssegcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011020181123
83282? ? ?? ? ?ssegcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011020181123
83870? ? ?? ? ?ssegcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011020181123
87976? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019011020181123
88032? ? ?? ? ?ssegcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019011020181123
88042? ? ?? ? ?ssegcc_-m64_-march=core2_-O_-fomit-frame-pointer2019011020181123
88042? ? ?? ? ?ssegcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019011020181123
296180? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
296662? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
296808? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
296872? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
296944? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019011020181123
296998? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019011020181123
297360? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019011020181123
297604? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
297732? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011020181123
297852? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
297922? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011020181123
298330? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019011020181123
298384? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019011020181123
298510? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019011020181123
298782? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019011020181123
301004? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019011020181123
301262? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
301900? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019011020181123
302170? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
302904? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011020181123
310138? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019011020181123
310258? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011020181123
310676? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011020181123
310868? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019011020181123
310982? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019011020181123
311230? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019011020181123
311932? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011020181123
393324? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
393554? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019011020181123
395036? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019011020181123
395676? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
422050? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019011020181123
422138? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
422142? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
423814? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
538792? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019011020181123
538948? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019011020181123
539572? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
539748? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
540400? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019011020181123
540562? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019011020181123
540752? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019011020181123
541936? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
542094? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
544834? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019011020181123
544950? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019011020181123
545172? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019011020181123
546086? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019011020181123
546244? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011020181123
546960? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019011020181123
547174? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
547196? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
548296? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019011020181123
593860? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019011020181123
595450? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011020181123
595576? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019011020181123
595622? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011020181123
596232? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
596264? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019011020181123
596580? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019011020181123
597030? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011020181123
597110? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011020181123
597252? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011020181123
597480? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019011020181123
597508? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019011020181123
597596? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019011020181123
597762? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011020181123
598252? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
598324? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019011020181123
600630? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
600938? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
604672? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
604942? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019011020181123
605200? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019011020181123
605714? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
606508? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019011020181123
608032? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011020181123
608060? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019011020181123
608080? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019011020181123
608130? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011020181123
608158? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019011020181123
608388? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019011020181123
609490? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011020181123
609522? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019011020181123
609608? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019011020181123
610748? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011020181123
611002? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019011020181123
611316? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019011020181123
611500? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011020181123
741536? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
741608? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
742082? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019011020181123
742274? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019011020181123
742820? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011020181123
743104? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011020181123
744338? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019011020181123
744528? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011020181123
744900? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019011020181123
745436? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019011020181123
745638? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019011020181123
746088? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011020181123
746554? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011020181123
747052? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019011020181123
747568? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
747994? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019011020181123
748504? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011020181123
749658? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
1119440? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
1119928? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
1126612? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011020181123
1126892? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019011020181123
1127660? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
1127704? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
1127852? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019011020181123
1128264? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019011020181123
1129662? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019011020181123
1820862? ? ?? ? ?refcc2019011020181123
1866884? ? ?? ? ?refgcc2019011020181123
1878832? ? ?? ? ?refgcc_-funroll-loops2019011020181123

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: 0xbef4b0: v4i64 = X86ISD::VTRUNC 0xbef2e0
try.c: 0xbef2e0: v16i32 = vselect 0xbe15d0, 0xb97d90, 0xbef1b0
try.c: 0xbe15d0: v4i1 = X86ISD::PCMPGTM 0xbd95b0, 0xb72cc0
try.c: 0xbd95b0: v4i64 = X86ISD::VBROADCAST 0xb73050
try.c: 0xb73050: i64,ch = load<LD8[%uglygep72]> 0xad4db0, 0xb7fcf0, undef:i64
try.c: 0xb7fcf0: i64 = add 0xbda490, 0xb7c5e0
try.c: 0xbda490: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xbd6b50: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xb7c5e0: i64 = shl 0xbd6300, Constant:i8<3>
try.c: 0xbd6300: i64,ch = CopyFromReg 0xad4db0, Register:i64 %vreg50
try.c: 0xbda950: i64 = Register %vreg50
try.c: 0xb79c10: i8 = Constant<3>
try.c: 0xbd7410: i64 = undef
try.c: 0xb72cc0: v4i64,ch = CopyFromReg 0xad4db0, Register:v4i64 %vreg13
try.c: 0xb857a0: v4i64 = Register %vreg13
try.c: 0xb97d90: v16i32 = X86ISD::VBROADCAST 0xbd6560
try.c: 0xbd6560: i32,ch = load<LD4[ConstantPool]> 0xad4db0, 0xbeee20, undef:i64
try.c: 0xbeee20: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xb74a80: i64 = TargetConstantPool<i32 1> 0
try.c: 0xbd7410: i64 = undef
try.c: 0xbef1b0: 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: 0xbef080: i32 = Constant<0>
try.c: 0xbef080: i32 = Constant<0>
try.c: 0xbef080: i32 = Constant<0>
try.c: 0xbef080: 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: 0x25041e0: v4i64 = X86ISD::VTRUNC 0x2504010
try.c: 0x2504010: v16i32 = vselect 0x24f0c50, 0x249c840, 0x2503ee0
try.c: 0x24f0c50: v4i1 = X86ISD::PCMPGTM 0x24eaab0, 0x2484d70
try.c: 0x24eaab0: v4i64 = X86ISD::VBROADCAST 0x2485100
try.c: 0x2485100: i64,ch = load<LD8[%uglygep72]> 0x23e5dd0, 0x24d16b0, undef:i64
try.c: 0x24d16b0: i64 = add 0x24eb990, 0x248bc70
try.c: 0x24eb990: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x24df030: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x248bc70: i64 = shl 0x24de7e0, Constant:i8<3>
try.c: 0x24de7e0: i64,ch = CopyFromReg 0x23e5dd0, Register:i64 %vreg50
try.c: 0x24ebe50: i64 = Register %vreg50
try.c: 0x2499890: i8 = Constant<3>
try.c: 0x24e9120: i64 = undef
try.c: 0x2484d70: v4i64,ch = CopyFromReg 0x23e5dd0, Register:v4i64 %vreg13
try.c: 0x248fa60: v4i64 = Register %vreg13
try.c: 0x249c840: v16i32 = X86ISD::VBROADCAST 0x24dea40
try.c: 0x24dea40: i32,ch = load<LD4[ConstantPool]> 0x23e5dd0, 0x2503b50, undef:i64
try.c: 0x2503b50: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x2486b30: i64 = TargetConstantPool<i32 1> 0
try.c: 0x24e9120: i64 = undef
try.c: 0x2503ee0: 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: 0x2503db0: i32 = Constant<0>
try.c: 0x2503db0: i32 = Constant<0>
try.c: 0x2503db0: i32 = Constant<0>
try.c: 0x2503db0: 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:184: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:185: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:189: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:190: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:197: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:198: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:202: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:203: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:184:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: A = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:185:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: C = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:189:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: B = __builtin_ia32_pshufb128(table, t0);
iscream.c: ^
iscream.c: iscream.c:190:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: D = __builtin_ia32_pshufb128(table, t1);
iscream.c: ^
iscream.c: iscream.c:197:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: A ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:198:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: C ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:202:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: B ^= __builtin_ia32_pshufb128(table, in[0]);
iscream.c: ^
iscream.c: iscream.c:203:10: error: '__builtin_ia32_pshufb128' needs target feature ssse3
iscream.c: D ^= __builtin_ia32_pshufb128(table, in[2]);
iscream.c: ^
iscream.c: iscream.c:210: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: 0x15de220: v4i64 = X86ISD::VTRUNC 0x15de050
try.c: 0x15de050: v16i32 = vselect 0x15bd890, 0x1562480, 0x15ddf20
try.c: 0x15bd890: v4i1 = X86ISD::PCMPGTM 0x15c6b00, 0x1563230
try.c: 0x15c6b00: v4i64 = X86ISD::VBROADCAST 0x15635c0
try.c: 0x15635c0: i64,ch = load<LD8[%uglygep72]> 0x14c1dd0, 0x15707d0, undef:i64
try.c: 0x15707d0: i64 = add 0x15c79e0, 0x1522540
try.c: 0x15c79e0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x15c01d0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1522540: i64 = shl 0x15bf980, Constant:i8<3>
try.c: 0x15bf980: i64,ch = CopyFromReg 0x14c1dd0, Register:i64 %vreg50
try.c: 0x15c7ea0: i64 = Register %vreg50
try.c: 0x1544490: i8 = Constant<3>
try.c: 0x15c5170: i64 = undef
try.c: 0x1563230: v4i64,ch = CopyFromReg 0x14c1dd0, Register:v4i64 %vreg13
try.c: 0x1584f30: v4i64 = Register %vreg13
try.c: 0x1562480: v16i32 = X86ISD::VBROADCAST 0x15bfbe0
try.c: 0x15bfbe0: i32,ch = load<LD4[ConstantPool]> 0x14c1dd0, 0x15ddb90, undef:i64
try.c: 0x15ddb90: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1579500: i64 = TargetConstantPool<i32 1> 0
try.c: 0x15c5170: i64 = undef
try.c: 0x15ddf20: 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: 0x15dddf0: i32 = Constant<0>
try.c: 0x15dddf0: i32 = Constant<0>
try.c: 0x15dddf0: i32 = Constant<0>
try.c: 0x15dddf0: 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: 0x1ec5030: v4i64 = X86ISD::VTRUNC 0x1ec4e60
try.c: 0x1ec4e60: v16i32 = vselect 0x1ecc040, 0x1e59ef0, 0x1ec4d30
try.c: 0x1ecc040: v4i1 = X86ISD::PCMPGTM 0x1eaf530, 0x1e5aca0
try.c: 0x1eaf530: v4i64 = X86ISD::VBROADCAST 0x1e5b030
try.c: 0x1e5b030: i64,ch = load<LD8[%uglygep72]> 0x1da8dd0, 0x1eac0a0, undef:i64
try.c: 0x1eac0a0: i64 = add 0x1eb0410, 0x1e4e770
try.c: 0x1eb0410: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1ea9fe0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1e4e770: i64 = shl 0x1ea9790, Constant:i8<3>
try.c: 0x1ea9790: i64,ch = CopyFromReg 0x1da8dd0, Register:i64 %vreg50
try.c: 0x1eb08d0: i64 = Register %vreg50
try.c: 0x1e30140: i8 = Constant<3>
try.c: 0x1eadba0: i64 = undef
try.c: 0x1e5aca0: v4i64,ch = CopyFromReg 0x1da8dd0, Register:v4i64 %vreg13
try.c: 0x1e6cdc0: v4i64 = Register %vreg13
try.c: 0x1e59ef0: v16i32 = X86ISD::VBROADCAST 0x1ea99f0
try.c: 0x1ea99f0: i32,ch = load<LD4[ConstantPool]> 0x1da8dd0, 0x1ec49a0, undef:i64
try.c: 0x1ec49a0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1e55e90: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1eadba0: i64 = undef
try.c: 0x1ec4d30: 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: 0x1ec4c00: i32 = Constant<0>
try.c: 0x1ec4c00: i32 = Constant<0>
try.c: 0x1ec4c00: i32 = Constant<0>
try.c: 0x1ec4c00: 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:184: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:184: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:185: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:189: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:190: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:197: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:198: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:202: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:184: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:184: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:185: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:189: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:190: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:197: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:198: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:202: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:184: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:184: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:185: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:189: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:190: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:197: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:198: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:202: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