Implementation notes: amd64, oki, crypto_aead/ifeedaes128n104v1

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: ifeedaes128n104v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
289432? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018112920181123
289440? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
290736? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
290860? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
291058? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018112920181123
291154? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
291196? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
291268? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
293170? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
293256? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018112920181123
293524? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
293826? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
294480? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018112920181123
294756? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
294846? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
294888? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
306852? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018112920181123
306990? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
307018? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018112920181123
308630? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112920181123
308798? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112920181123
308948? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112920181123
309252? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112920181123
309806? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112920181123
310288? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112920181123
310584? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
310618? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
310998? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
311090? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018112920181123
311152? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
311272? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018112920181123
311376? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
315196? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018112920181123
315206? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
315392? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112920181123
315426? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018112920181123
315452? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112920181123
315956? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
316132? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
316184? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112920181123
318710? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
318744? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018112920181123
318996? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018112920181123
319104? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
319594? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018112920181123
426854? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112920181123
426928? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
426992? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112920181123
428434? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
445534? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
445544? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
446818? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
461306? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2018112920181123
495204? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
495286? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
496730? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
496732? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018112920181123
517640? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
518022? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
518748? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
519240? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018112920181123
534674? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
535922? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
540868? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018112920181123
541020? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
541044? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112920181123
541046? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112920181123
541130? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018112920181123
541480? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112920181123
542020? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112920181123
542442? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112920181123
542950? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112920181123
555754? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018112920181123
555980? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112920181123
556136? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112920181123
556314? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112920181123
556360? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
562708? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112920181123
563246? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112920181123
565718? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112920181123
583716? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018112920181123
583880? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018112920181123
584594? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
590526? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112920181123
590718? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112920181123
590856? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112920181123
590902? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112920181123
591178? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112920181123
591766? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112920181123
616846? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
617210? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018112920181123
618840? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018112920181123
623638? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
627820? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
628148? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
628160? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018112920181123
628184? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
629068? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
661786? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112920181123
667350? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
667782? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112920181123
668006? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018112920181123
668976? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112920181123
670774? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018112920181123
671576? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112920181123
672428? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112920181123
674300? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112920181123
675636? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
675752? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112920181123
675876? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
675896? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
676154? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018112920181123
676460? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112920181123
681688? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
681926? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
697972? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112920181123
2152448? ? ?? ? ?refcc2018112920181123
2154564? ? ?? ? ?refgcc2018112920181123
2155274? ? ?? ? ?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: 0x1962110: v4i64 = X86ISD::VTRUNC 0x1961f40
try.c: 0x1961f40: v16i32 = vselect 0x195eb80, 0x18e2470, 0x1961e10
try.c: 0x195eb80: v4i1 = X86ISD::PCMPGTM 0x194c210, 0x190b0c0
try.c: 0x194c210: v4i64 = X86ISD::VBROADCAST 0x190b450
try.c: 0x190b450: i64,ch = load<LD8[%uglygep72]> 0x1845dd0, 0x1901020, undef:i64
try.c: 0x1901020: i64 = add 0x194d0f0, 0x18c7460
try.c: 0x194d0f0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x192b670: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x18c7460: i64 = shl 0x192ae20, Constant:i8<3>
try.c: 0x192ae20: i64,ch = CopyFromReg 0x1845dd0, Register:i64 %vreg50
try.c: 0x194d5b0: i64 = Register %vreg50
try.c: 0x18fbfe0: i8 = Constant<3>
try.c: 0x194a880: i64 = undef
try.c: 0x190b0c0: v4i64,ch = CopyFromReg 0x1845dd0, Register:v4i64 %vreg13
try.c: 0x18e5ec0: v4i64 = Register %vreg13
try.c: 0x18e2470: v16i32 = X86ISD::VBROADCAST 0x192b080
try.c: 0x192b080: i32,ch = load<LD4[ConstantPool]> 0x1845dd0, 0x1961a80, undef:i64
try.c: 0x1961a80: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x190ce80: i64 = TargetConstantPool<i32 1> 0
try.c: 0x194a880: i64 = undef
try.c: 0x1961e10: 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: 0x1961ce0: i32 = Constant<0>
try.c: 0x1961ce0: i32 = Constant<0>
try.c: 0x1961ce0: i32 = Constant<0>
try.c: 0x1961ce0: 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: 0x1050f40: v4i64 = X86ISD::VTRUNC 0x1050d70
try.c: 0x1050d70: v16i32 = vselect 0x104d9b0, 0xfd02c0, 0x1050c40
try.c: 0x104d9b0: v4i1 = X86ISD::PCMPGTM 0x103b040, 0xfb6920
try.c: 0x103b040: v4i64 = X86ISD::VBROADCAST 0xfb6cb0
try.c: 0xfb6cb0: i64,ch = load<LD8[%uglygep72]> 0xf33dd0, 0xfddd40, undef:i64
try.c: 0xfddd40: i64 = add 0x103bf20, 0xfe93b0
try.c: 0x103bf20: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xfe0ac0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xfe93b0: i64 = shl 0xfe0270, Constant:i8<3>
try.c: 0xfe0270: i64,ch = CopyFromReg 0xf33dd0, Register:i64 %vreg50
try.c: 0x103c3e0: i64 = Register %vreg50
try.c: 0xfbb730: i8 = Constant<3>
try.c: 0x1038ea0: i64 = undef
try.c: 0xfb6920: v4i64,ch = CopyFromReg 0xf33dd0, Register:v4i64 %vreg13
try.c: 0xffc5e0: v4i64 = Register %vreg13
try.c: 0xfd02c0: v16i32 = X86ISD::VBROADCAST 0xfe04d0
try.c: 0xfe04d0: i32,ch = load<LD4[ConstantPool]> 0xf33dd0, 0x10508b0, undef:i64
try.c: 0x10508b0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xfd4250: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1038ea0: i64 = undef
try.c: 0x1050c40: 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: 0x1050b10: i32 = Constant<0>
try.c: 0x1050b10: i32 = Constant<0>
try.c: 0x1050b10: i32 = Constant<0>
try.c: 0x1050b10: 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