Implementation notes: amd64, oki, crypto_aead/ifeedaes128n96v1

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: ifeedaes128n96v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
290546? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
290596? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
290770? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
290786? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018112920181123
291218? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
291500? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018112920181123
291804? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
291834? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
293112? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
293180? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
293290? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018112920181123
293468? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
294480? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
294602? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018112920181123
294716? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
294820? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
307026? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018112920181123
307128? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018112920181123
307254? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
308618? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112920181123
308868? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112920181123
308912? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112920181123
309408? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112920181123
309498? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112920181123
309740? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112920181123
310302? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
310402? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
310456? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
310904? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018112920181123
310926? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018112920181123
310938? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
311678? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
315232? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
315344? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018112920181123
315404? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112920181123
315556? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018112920181123
315664? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112920181123
315822? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
315866? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
315982? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112920181123
318690? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018112920181123
318766? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018112920181123
319336? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
319340? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018112920181123
319400? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
427596? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
427724? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
427732? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112920181123
428912? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112920181123
445614? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
445616? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
445866? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
461270? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2018112920181123
489894? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
491664? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
519502? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
519562? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018112920181123
524742? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018112920181123
524780? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
526156? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
526780? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
528792? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
529748? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
531276? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018112920181123
531454? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018112920181123
531706? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
532304? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112920181123
532994? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112920181123
533282? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112920181123
533396? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112920181123
535378? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112920181123
541884? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112920181123
542182? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112920181123
543110? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112920181123
551124? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018112920181123
551662? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
553068? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112920181123
553166? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112920181123
553322? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112920181123
553326? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112920181123
553402? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112920181123
554428? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112920181123
554500? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018112920181123
554506? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018112920181123
556362? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
556896? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112920181123
557760? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112920181123
558262? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112920181123
560250? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112920181123
615790? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018112920181123
615970? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018112920181123
616066? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
628038? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
628324? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
628406? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
629198? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
632420? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018112920181123
632446? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
666564? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112920181123
667102? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112920181123
669476? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112920181123
670688? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112920181123
671324? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
672692? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112920181123
673048? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018112920181123
673118? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
673508? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
673552? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018112920181123
673838? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112920181123
674796? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
675902? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112920181123
676362? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112920181123
678982? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
679524? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018112920181123
683922? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
701316? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112920181123
2147990? ? ?? ? ?refcc2018112920181123
2153400? ? ?? ? ?refgcc2018112920181123
2154668? ? ?? ? ?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: 0x2503830: v4i64 = X86ISD::VTRUNC 0x2503660
try.c: 0x2503660: v16i32 = vselect 0x250feb0, 0x24aaee0, 0x2503530
try.c: 0x250feb0: v4i1 = X86ISD::PCMPGTM 0x24f89f0, 0x24a6db0
try.c: 0x24f89f0: v4i64 = X86ISD::VBROADCAST 0x24a7140
try.c: 0x24a7140: i64,ch = load<LD8[%uglygep72]> 0x23fadb0, 0x24b84b0, undef:i64
try.c: 0x24b84b0: i64 = add 0x2500170, 0x24ad2b0
try.c: 0x2500170: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x24b6340: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x24ad2b0: i64 = shl 0x24b5af0, Constant:i8<3>
try.c: 0x24b5af0: i64,ch = CopyFromReg 0x23fadb0, Register:i64 %vreg50
try.c: 0x2500630: i64 = Register %vreg50
try.c: 0x247b8e0: i8 = Constant<3>
try.c: 0x24fe910: i64 = undef
try.c: 0x24a6db0: v4i64,ch = CopyFromReg 0x23fadb0, Register:v4i64 %vreg13
try.c: 0x24c1c70: v4i64 = Register %vreg13
try.c: 0x24aaee0: v16i32 = X86ISD::VBROADCAST 0x24b5d50
try.c: 0x24b5d50: i32,ch = load<LD4[ConstantPool]> 0x23fadb0, 0x25031a0, undef:i64
try.c: 0x25031a0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x24bf790: i64 = TargetConstantPool<i32 1> 0
try.c: 0x24fe910: i64 = undef
try.c: 0x2503530: 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: 0x2503400: i32 = Constant<0>
try.c: 0x2503400: i32 = Constant<0>
try.c: 0x2503400: i32 = Constant<0>
try.c: 0x2503400: 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: 0xe218c0: v4i64 = X86ISD::VTRUNC 0xe25720
try.c: 0xe25720: v16i32 = vselect 0xe1b9f0, 0xda6f70, 0xe255f0
try.c: 0xe1b9f0: v4i1 = X86ISD::PCMPGTM 0xe0bbb0, 0xda7d20
try.c: 0xe0bbb0: v4i64 = X86ISD::VBROADCAST 0xda80b0
try.c: 0xda80b0: i64,ch = load<LD8[%uglygep72]> 0xd07dd0, 0xdc4320, undef:i64
try.c: 0xdc4320: i64 = add 0xe0ca90, 0xdb4170
try.c: 0xe0ca90: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xdfc4c0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xdb4170: i64 = shl 0xdfbc70, Constant:i8<3>
try.c: 0xdfbc70: i64,ch = CopyFromReg 0xd07dd0, Register:i64 %vreg50
try.c: 0xe0cf50: i64 = Register %vreg50
try.c: 0xdad3d0: i8 = Constant<3>
try.c: 0xe0a220: i64 = undef
try.c: 0xda7d20: v4i64,ch = CopyFromReg 0xd07dd0, Register:v4i64 %vreg13
try.c: 0xdb8360: v4i64 = Register %vreg13
try.c: 0xda6f70: v16i32 = X86ISD::VBROADCAST 0xdfbed0
try.c: 0xdfbed0: i32,ch = load<LD4[ConstantPool]> 0xd07dd0, 0xe25260, undef:i64
try.c: 0xe25260: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xda2e40: i64 = TargetConstantPool<i32 1> 0
try.c: 0xe0a220: i64 = undef
try.c: 0xe255f0: 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: 0xe254c0: i32 = Constant<0>
try.c: 0xe254c0: i32 = Constant<0>
try.c: 0xe254c0: i32 = Constant<0>
try.c: 0xe254c0: 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