Implementation notes: amd64, oki, crypto_aead/elmd101271v2

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: elmd101271v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
314284? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018112920181123
314366? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
315614? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
315918? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112920181123
316162? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112920181123
316188? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112920181123
316332? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
317440? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112920181123
317648? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112920181123
317744? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112920181123
318226? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018112920181123
318490? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
318746? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
318936? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
319038? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018112920181123
319100? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
319132? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112920181123
319140? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018112920181123
319206? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112920181123
319386? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
319588? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
319680? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112920181123
320132? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
320142? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
322422? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018112920181123
322478? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018112920181123
322516? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
344886? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018112920181123
345068? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
345244? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
345306? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018112920181123
345686? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018112920181123
350210? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
350650? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
351416? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
352148? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
353660? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
353788? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018112920181123
353838? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018112920181123
354036? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018112920181123
354738? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
359292? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
359440? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018112920181123
359628? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
359816? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
383008? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112920181123
383170? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
383314? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112920181123
383386? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
385396? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
386154? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112920181123
386156? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112920181123
386264? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
386456? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
386802? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112920181123
387160? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112920181123
387724? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2018112920181123
391662? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018112920181123
391790? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
391922? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
391970? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018112920181123
392132? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018112920181123
396148? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
396746? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112920181123
397942? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
399254? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112920181123
399316? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112920181123
399352? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112920181123
399414? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112920181123
408390? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112920181123
409574? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112920181123
410010? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112920181123
410064? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112920181123
410086? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112920181123
410136? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112920181123
410156? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112920181123
410282? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112920181123
410566? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
411320? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
411588? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018112920181123
411608? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
411780? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
413834? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
415706? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
415826? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
419090? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
419144? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
419162? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018112920181123
419384? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112920181123
419392? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
419404? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112920181123
419430? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112920181123
420536? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018112920181123
420952? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018112920181123
421310? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
422234? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112920181123
422298? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112920181123
422986? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112920181123
428754? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
428872? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
429258? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112920181123
429278? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112920181123
432802? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
433544? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
433786? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
434228? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018112920181123
438894? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018112920181123
439374? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
442154? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112920181123
446700? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112920181123
447300? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
447508? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018112920181123
448048? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018112920181123
451070? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018112920181123
451074? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018112920181123
451240? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
991252? ? ?? ? ?refcc2018112920181123
999648? ? ?? ? ?refgcc_-funroll-loops2018112920181123
1003256? ? ?? ? ?refgcc2018112920181123

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: 0x1c68050: v4i64 = X86ISD::VTRUNC 0x1c67e80
try.c: 0x1c67e80: v16i32 = vselect 0x1c52950, 0x1bf2940, 0x1c67d50
try.c: 0x1c52950: v4i1 = X86ISD::PCMPGTM 0x1c49a90, 0x1bf36f0
try.c: 0x1c49a90: v4i64 = X86ISD::VBROADCAST 0x1bf3a80
try.c: 0x1bf3a80: i64,ch = load<LD8[%uglygep72]> 0x1b4cdd0, 0x1be7f10, undef:i64
try.c: 0x1be7f10: i64 = add 0x1c51810, 0x1bd2d80
try.c: 0x1c51810: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1c078f0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1bd2d80: i64 = shl 0x1c070a0, Constant:i8<3>
try.c: 0x1c070a0: i64,ch = CopyFromReg 0x1b4cdd0, Register:i64 %vreg50
try.c: 0x1c51cd0: i64 = Register %vreg50
try.c: 0x1be2700: i8 = Constant<3>
try.c: 0x1c4ffb0: i64 = undef
try.c: 0x1bf36f0: v4i64,ch = CopyFromReg 0x1b4cdd0, Register:v4i64 %vreg13
try.c: 0x1beb2e0: v4i64 = Register %vreg13
try.c: 0x1bf2940: v16i32 = X86ISD::VBROADCAST 0x1c07300
try.c: 0x1c07300: i32,ch = load<LD4[ConstantPool]> 0x1b4cdd0, 0x1c679c0, undef:i64
try.c: 0x1c679c0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1c0e800: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1c4ffb0: i64 = undef
try.c: 0x1c67d50: 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: 0x1c67c20: i32 = Constant<0>
try.c: 0x1c67c20: i32 = Constant<0>
try.c: 0x1c67c20: i32 = Constant<0>
try.c: 0x1c67c20: 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: 0x22c8a00: v4i64 = X86ISD::VTRUNC 0x22c8830
try.c: 0x22c8830: v16i32 = vselect 0x22c5470, 0x22496f0, 0x22c8700
try.c: 0x22c5470: v4i1 = X86ISD::PCMPGTM 0x22b02d0, 0x224a4a0
try.c: 0x22b02d0: v4i64 = X86ISD::VBROADCAST 0x224a830
try.c: 0x224a830: i64,ch = load<LD8[%uglygep72]> 0x21aadd0, 0x2290070, undef:i64
try.c: 0x2290070: i64 = add 0x22b11b0, 0x2250d70
try.c: 0x22b11b0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x229aa30: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x2250d70: i64 = shl 0x229a1e0, Constant:i8<3>
try.c: 0x229a1e0: i64,ch = CopyFromReg 0x21aadd0, Register:i64 %vreg50
try.c: 0x22b1670: i64 = Register %vreg50
try.c: 0x225ff20: i8 = Constant<3>
try.c: 0x22ae940: i64 = undef
try.c: 0x224a4a0: v4i64,ch = CopyFromReg 0x21aadd0, Register:v4i64 %vreg13
try.c: 0x2245aa0: v4i64 = Register %vreg13
try.c: 0x22496f0: v16i32 = X86ISD::VBROADCAST 0x229a440
try.c: 0x229a440: i32,ch = load<LD4[ConstantPool]> 0x21aadd0, 0x22c8370, undef:i64
try.c: 0x22c8370: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x224c260: i64 = TargetConstantPool<i32 1> 0
try.c: 0x22ae940: i64 = undef
try.c: 0x22c8700: 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: 0x22c85d0: i32 = Constant<0>
try.c: 0x22c85d0: i32 = Constant<0>
try.c: 0x22c85d0: i32 = Constant<0>
try.c: 0x22c85d0: 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