Implementation notes: amd64, oki, crypto_aead/cba3

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: cba3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
188420? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018112920181123
188454? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
188502? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
188578? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
188596? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112920181123
188640? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
188812? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018112920181123
188814? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
188826? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
188848? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
188868? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
188990? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
189050? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112920181123
189102? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112920181123
189138? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
189210? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112920181123
189218? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112920181123
189262? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112920181123
189330? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112920181123
189676? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112920181123
189682? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112920181123
189870? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018112920181123
190026? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
190168? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018112920181123
190414? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018112920181123
190536? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
190544? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018112920181123
191614? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
191654? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
192164? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018112920181123
192648? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
192692? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018112920181123
192964? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
192984? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
193010? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
193166? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018112920181123
193368? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
193402? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112920181123
193670? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018112920181123
194220? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
194274? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
194326? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018112920181123
194406? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
194464? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
194478? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
194548? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018112920181123
194690? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018112920181123
195642? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
195948? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112920181123
196102? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2018112920181123
196258? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
196348? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
196380? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
199030? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
199082? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
199606? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112920181123
199662? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112920181123
199674? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112920181123
200060? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112920181123
200692? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
200782? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112920181123
200842? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112920181123
200912? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
200940? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112920181123
201038? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018112920181123
201054? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018112920181123
201220? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
201298? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
201398? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018112920181123
201440? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112920181123
201874? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112920181123
201922? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112920181123
201948? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018112920181123
201956? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
202070? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112920181123
202090? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112920181123
202106? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112920181123
202158? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018112920181123
202162? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018112920181123
202224? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
202494? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112920181123
202546? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112920181123
202552? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112920181123
202560? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112920181123
202830? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
202934? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
203104? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018112920181123
203126? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
204306? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112920181123
204358? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112920181123
204412? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
204448? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112920181123
204456? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112920181123
204466? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018112920181123
204736? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018112920181123
204776? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112920181123
204826? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112920181123
204962? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112920181123
205124? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018112920181123
205202? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112920181123
205270? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112920181123
205330? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
205350? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
205376? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
205572? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112920181123
205576? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
206026? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
206408? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018112920181123
206472? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018112920181123
206802? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
206942? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
207066? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018112920181123
207144? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
207300? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
207388? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
207508? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
342154? ? ?? ? ?refcc2018112920181123
346770? ? ?? ? ?refgcc2018112920181123
347430? ? ?? ? ?refgcc_-funroll-loops2018112920181123

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: 0x29274e0: v4i64 = X86ISD::VTRUNC 0x2927310
try.c: 0x2927310: v16i32 = vselect 0x2923f50, 0x28a5630, 0x29271e0
try.c: 0x2923f50: v4i1 = X86ISD::PCMPGTM 0x28c70d0, 0x28a63e0
try.c: 0x28c70d0: v4i64 = X86ISD::VBROADCAST 0x28a6770
try.c: 0x28a6770: i64,ch = load<LD8[%uglygep72]> 0x280adc0, 0x2901f60, undef:i64
try.c: 0x2901f60: i64 = add 0x290fc90, 0x28a8c80
try.c: 0x290fc90: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2903300: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x28a8c80: i64 = shl 0x2902ab0, Constant:i8<3>
try.c: 0x2902ab0: i64,ch = CopyFromReg 0x280adc0, Register:i64 %vreg50
try.c: 0x2910150: i64 = Register %vreg50
try.c: 0x28aa280: i8 = Constant<3>
try.c: 0x290e430: i64 = undef
try.c: 0x28a63e0: v4i64,ch = CopyFromReg 0x280adc0, Register:v4i64 %vreg13
try.c: 0x28c05f0: v4i64 = Register %vreg13
try.c: 0x28a5630: v16i32 = X86ISD::VBROADCAST 0x2902d10
try.c: 0x2902d10: i32,ch = load<LD4[ConstantPool]> 0x280adc0, 0x2926e50, undef:i64
try.c: 0x2926e50: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x28a81a0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x290e430: i64 = undef
try.c: 0x29271e0: 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: 0x29270b0: i32 = Constant<0>
try.c: 0x29270b0: i32 = Constant<0>
try.c: 0x29270b0: i32 = Constant<0>
try.c: 0x29270b0: 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: 0x2585ef0: v4i64 = X86ISD::VTRUNC 0x2585d20
try.c: 0x2585d20: v16i32 = vselect 0x2582960, 0x24ed280, 0x2585bf0
try.c: 0x2582960: v4i1 = X86ISD::PCMPGTM 0x256fff0, 0x2504340
try.c: 0x256fff0: v4i64 = X86ISD::VBROADCAST 0x25046d0
try.c: 0x25046d0: i64,ch = load<LD8[%uglygep72]> 0x2469dd0, 0x2558260, undef:i64
try.c: 0x2558260: i64 = add 0x2570ed0, 0x250e9a0
try.c: 0x2570ed0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x255d750: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x250e9a0: i64 = shl 0x255cf00, Constant:i8<3>
try.c: 0x255cf00: i64,ch = CopyFromReg 0x2469dd0, Register:i64 %vreg50
try.c: 0x2571390: i64 = Register %vreg50
try.c: 0x2516ef0: i8 = Constant<3>
try.c: 0x256de50: i64 = undef
try.c: 0x2504340: v4i64,ch = CopyFromReg 0x2469dd0, Register:v4i64 %vreg13
try.c: 0x2508330: v4i64 = Register %vreg13
try.c: 0x24ed280: v16i32 = X86ISD::VBROADCAST 0x255d160
try.c: 0x255d160: i32,ch = load<LD4[ConstantPool]> 0x2469dd0, 0x2585860, undef:i64
try.c: 0x2585860: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x251b080: i64 = TargetConstantPool<i32 1> 0
try.c: 0x256de50: i64 = undef
try.c: 0x2585bf0: 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: 0x2585ac0: i32 = Constant<0>
try.c: 0x2585ac0: i32 = Constant<0>
try.c: 0x2585ac0: i32 = Constant<0>
try.c: 0x2585ac0: 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