Implementation notes: amd64, oki, crypto_encrypt/mcnie3q2562

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_encrypt
Primitive: mcnie3q2562
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
13798606? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019012220181123
13819332? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012220181123
13848234? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019012220181123
13913060? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012220181123
13917682? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019012220181123
13927750? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012220181123
13929122? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019012220181123
13933970? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019012220181123
13952018? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019012220181123
13972496? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012220181123
13982398? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019012220181123
13990532? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019012220181123
14066854? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019012220181123
14093550? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019012220181123
14297900? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012220181123
14301976? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019012220181123
14311196? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019012220181123
14317714? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019012220181123
14327008? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019012220181123
14327332? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012220181123
14331390? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019012220181123
14332776? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019012220181123
14347510? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012220181123
14370048? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019012220181123
14374386? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019012220181123
14375556? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019012220181123
14377504? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012220181123
14378000? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019012220181123
14380268? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019012220181123
14385922? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012220181123
14388128? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019012220181123
14399396? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012220181123
14400360? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019012220181123
14406202? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019012220181123
14410020? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019012220181123
14434616? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019012220181123
14455250? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019012220181123
14497146? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019012220181123
14967990? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012220181123
14988002? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012220181123
15012642? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012220181123
15033374? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012220181123
15047086? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019012220181123
15050178? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019012220181123
15322416? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012220181123
15340960? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012220181123
21610716? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012220181123
21666274? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019012220181123
21709052? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019012220181123
22161850? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012220181123
22732762? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019012220181123
22742416? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019012220181123
22752994? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019012220181123
23499716? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019012220181123
23522904? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019012220181123
24475032? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019012220181123
24500226? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019012220181123
24792758? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019012220181123
24825296? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019012220181123
24834732? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019012220181123
24845404? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019012220181123
30742630? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019012220181123
30753852? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019012220181123
30776286? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019012220181123
31372788? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012220181123
52130956? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012220181123
52141170? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019012220181123
52578428? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019012220181123
52594916? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012220181123
52900706? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019012220181123
52915036? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019012220181123
52924724? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019012220181123
52946932? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012220181123
52987054? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019012220181123
52995286? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012220181123
53012668? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019012220181123
53058272? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012220181123
53293072? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019012220181123
53317916? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012220181123
53335604? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019012220181123
53392382? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012220181123
53417082? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019012220181123
53425426? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019012220181123
53782406? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019012220181123
53811418? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012220181123
53895738? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019012220181123
53907070? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012220181123
53912802? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019012220181123
53930638? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012220181123
54971516? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019012220181123
54978724? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019012220181123
54984018? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019012220181123
54985298? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019012220181123
54994836? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019012220181123
54997220? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019012220181123
54997744? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019012220181123
55000262? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019012220181123
55003982? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019012220181123
55006850? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019012220181123
55012138? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019012220181123
55035144? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019012220181123
55040428? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019012220181123
55314702? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019012220181123
55324448? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019012220181123
55377930? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019012220181123
55474076? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019012220181123
55484300? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019012220181123
55533728? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019012220181123
55550202? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019012220181123
55604624? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019012220181123
55656476? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019012220181123
55924308? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019012220181123
56321020? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019012220181123
56335578? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019012220181123
56394364? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019012220181123
56398148? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019012220181123
86671784? ? ?? ? ?refcc2019012220181123
87110698? ? ?? ? ?refgcc2019012220181123
87170036? ? ?? ? ?refgcc_-funroll-loops2019012220181123

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: 0x2357ec0: v4i64 = X86ISD::VTRUNC 0x2357cf0
try.c: 0x2357cf0: v16i32 = vselect 0x2373fa0, 0x22eb8d0, 0x2357bc0
try.c: 0x2373fa0: v4i1 = X86ISD::PCMPGTM 0x2353920, 0x22ecbc0
try.c: 0x2353920: v4i64 = X86ISD::VBROADCAST 0x22ecf50
try.c: 0x22ecf50: i64,ch = load<LD8[%uglygep72]> 0x224edd0, 0x234ef90, undef:i64
try.c: 0x234ef90: i64 = add 0x2354800, 0x22e6e30
try.c: 0x2354800: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2343670: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x22e6e30: i64 = shl 0x2342e20, Constant:i8<3>
try.c: 0x2342e20: i64,ch = CopyFromReg 0x224edd0, Register:i64 %vreg50
try.c: 0x2354cc0: i64 = Register %vreg50
try.c: 0x22f4290: i8 = Constant<3>
try.c: 0x234a930: i64 = undef
try.c: 0x22ecbc0: v4i64,ch = CopyFromReg 0x224edd0, Register:v4i64 %vreg13
try.c: 0x2300b60: v4i64 = Register %vreg13
try.c: 0x22eb8d0: v16i32 = X86ISD::VBROADCAST 0x2343080
try.c: 0x2343080: i32,ch = load<LD4[ConstantPool]> 0x224edd0, 0x2357830, undef:i64
try.c: 0x2357830: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x22fe680: i64 = TargetConstantPool<i32 1> 0
try.c: 0x234a930: i64 = undef
try.c: 0x2357bc0: 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: 0x2357a90: i32 = Constant<0>
try.c: 0x2357a90: i32 = Constant<0>
try.c: 0x2357a90: i32 = Constant<0>
try.c: 0x2357a90: 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: 0x25731c0: v4i64 = X86ISD::VTRUNC 0x2572ff0
try.c: 0x2572ff0: v16i32 = vselect 0x256fc30, 0x24f6240, 0x2572ec0
try.c: 0x256fc30: v4i1 = X86ISD::PCMPGTM 0x255baa0, 0x24f6ff0
try.c: 0x255baa0: v4i64 = X86ISD::VBROADCAST 0x24f7380
try.c: 0x24f7380: i64,ch = load<LD8[%uglygep72]> 0x2455db0, 0x2512ca0, undef:i64
try.c: 0x2512ca0: i64 = add 0x255c980, 0x24d8bb0
try.c: 0x255c980: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x254db30: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x24d8bb0: i64 = shl 0x254d2e0, Constant:i8<3>
try.c: 0x254d2e0: i64,ch = CopyFromReg 0x2455db0, Register:i64 %vreg50
try.c: 0x255ce40: i64 = Register %vreg50
try.c: 0x24fc2e0: i8 = Constant<3>
try.c: 0x255a110: i64 = undef
try.c: 0x24f6ff0: v4i64,ch = CopyFromReg 0x2455db0, Register:v4i64 %vreg13
try.c: 0x2506590: v4i64 = Register %vreg13
try.c: 0x24f6240: v16i32 = X86ISD::VBROADCAST 0x254d540
try.c: 0x254d540: i32,ch = load<LD4[ConstantPool]> 0x2455db0, 0x2572b30, undef:i64
try.c: 0x2572b30: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x251c070: i64 = TargetConstantPool<i32 1> 0
try.c: 0x255a110: i64 = undef
try.c: 0x2572ec0: 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: 0x2572d90: i32 = Constant<0>
try.c: 0x2572d90: i32 = Constant<0>
try.c: 0x2572d90: i32 = Constant<0>
try.c: 0x2572d90: 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