Implementation notes: amd64, oki, crypto_aead/elmd51270v1

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: elmd51270v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
202252? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112920181123
202270? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112920181123
202368? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112920181123
202418? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112920181123
202618? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112920181123
202798? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112920181123
204174? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
204200? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018112920181123
204210? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018112920181123
204214? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
204238? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
204290? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018112920181123
204310? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112920181123
204314? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112920181123
204498? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112920181123
204798? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
205260? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
205420? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
205906? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
205972? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
206896? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
206944? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018112920181123
206988? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018112920181123
207054? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
207794? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
207990? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
208296? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018112920181123
227292? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018112920181123
227338? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018112920181123
227404? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
227478? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
227756? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018112920181123
231980? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
232110? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
233588? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
233748? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
239706? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
239838? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018112920181123
239916? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
240012? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018112920181123
240210? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018112920181123
246454? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
246516? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
246544? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018112920181123
246838? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
268734? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
268826? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
269338? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112920181123
269366? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112920181123
270530? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2018112920181123
271410? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
271446? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
271556? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
277346? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112920181123
277406? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112920181123
277420? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112920181123
279362? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
279948? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018112920181123
281762? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112920181123
282914? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112920181123
283026? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112920181123
283910? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018112920181123
284024? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018112920181123
284032? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
284914? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
285826? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
288616? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112920181123
288828? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112920181123
288978? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112920181123
290922? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112920181123
294194? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112920181123
295614? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
295716? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
298688? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
298736? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
298780? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018112920181123
299482? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
303404? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
304114? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
304226? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
304248? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018112920181123
304720? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
304734? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
305244? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112920181123
305264? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112920181123
305438? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
305714? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112920181123
305768? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018112920181123
306488? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018112920181123
306572? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112920181123
306680? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112920181123
306896? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112920181123
307008? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112920181123
307078? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112920181123
307094? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112920181123
307136? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112920181123
316194? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
316528? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
317704? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112920181123
318644? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112920181123
323910? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
323934? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018112920181123
325292? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112920181123
325716? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112920181123
327460? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018112920181123
327968? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
330030? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112920181123
332626? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
333134? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
333844? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018112920181123
333868? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
334156? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018112920181123
340396? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112920181123
345958? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
346212? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018112920181123
346948? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018112920181123
928408? ? ?? ? ?refcc2018112920181123
941496? ? ?? ? ?refgcc_-funroll-loops2018112920181123
941714? ? ?? ? ?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: 0x23da170: v4i64 = X86ISD::VTRUNC 0x23d9fa0
try.c: 0x23d9fa0: v16i32 = vselect 0x23baf60, 0x235d740, 0x23d9e70
try.c: 0x23baf60: v4i1 = X86ISD::PCMPGTM 0x23c4a70, 0x235e4f0
try.c: 0x23c4a70: v4i64 = X86ISD::VBROADCAST 0x235e880
try.c: 0x235e880: i64,ch = load<LD8[%uglygep72]> 0x22bedd0, 0x23c0f30, undef:i64
try.c: 0x23c0f30: i64 = add 0x23c5950, 0x2340400
try.c: 0x23c5950: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x237bd10: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x2340400: i64 = shl 0x237b4c0, Constant:i8<3>
try.c: 0x237b4c0: i64,ch = CopyFromReg 0x22bedd0, Register:i64 %vreg50
try.c: 0x23c5e10: i64 = Register %vreg50
try.c: 0x2365800: i8 = Constant<3>
try.c: 0x23c30e0: i64 = undef
try.c: 0x235e4f0: v4i64,ch = CopyFromReg 0x22bedd0, Register:v4i64 %vreg13
try.c: 0x2386c90: v4i64 = Register %vreg13
try.c: 0x235d740: v16i32 = X86ISD::VBROADCAST 0x237b720
try.c: 0x237b720: i32,ch = load<LD4[ConstantPool]> 0x22bedd0, 0x23d9ae0, undef:i64
try.c: 0x23d9ae0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x23847b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x23c30e0: i64 = undef
try.c: 0x23d9e70: 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: 0x23d9d40: i32 = Constant<0>
try.c: 0x23d9d40: i32 = Constant<0>
try.c: 0x23d9d40: i32 = Constant<0>
try.c: 0x23d9d40: 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: 0x239eec0: v4i64 = X86ISD::VTRUNC 0x239ecf0
try.c: 0x239ecf0: v16i32 = vselect 0x238f4b0, 0x232a2b0, 0x239ebc0
try.c: 0x238f4b0: v4i1 = X86ISD::PCMPGTM 0x23887b0, 0x232b060
try.c: 0x23887b0: v4i64 = X86ISD::VBROADCAST 0x232b3f0
try.c: 0x232b3f0: i64,ch = load<LD8[%uglygep72]> 0x2283dd0, 0x237a400, undef:i64
try.c: 0x237a400: i64 = add 0x2389690, 0x2318ba0
try.c: 0x2389690: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x23827f0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x2318ba0: i64 = shl 0x2381fa0, Constant:i8<3>
try.c: 0x2381fa0: i64,ch = CopyFromReg 0x2283dd0, Register:i64 %vreg50
try.c: 0x2389b50: i64 = Register %vreg50
try.c: 0x230ada0: i8 = Constant<3>
try.c: 0x2386e20: i64 = undef
try.c: 0x232b060: v4i64,ch = CopyFromReg 0x2283dd0, Register:v4i64 %vreg13
try.c: 0x2323c30: v4i64 = Register %vreg13
try.c: 0x232a2b0: v16i32 = X86ISD::VBROADCAST 0x2382200
try.c: 0x2382200: i32,ch = load<LD4[ConstantPool]> 0x2283dd0, 0x239e830, undef:i64
try.c: 0x239e830: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x2348960: i64 = TargetConstantPool<i32 1> 0
try.c: 0x2386e20: i64 = undef
try.c: 0x239ebc0: 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: 0x239ea90: i32 = Constant<0>
try.c: 0x239ea90: i32 = Constant<0>
try.c: 0x239ea90: i32 = Constant<0>
try.c: 0x239ea90: 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