Implementation notes: amd64, oki, crypto_aead/aes256otrsv1

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: aes256otrsv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
105868? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019011020181123
106116? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019011020181123
106172? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019011020181123
106348? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019011020181123
106504? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011020181123
106568? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011020181123
107330? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019011020181123
107334? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011020181123
107594? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019011020181123
107680? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
107724? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019011020181123
107754? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
107762? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019011020181123
107774? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019011020181123
107812? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
107816? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019011020181123
107824? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011020181123
107852? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019011020181123
107898? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019011020181123
107950? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019011020181123
107974? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011020181123
107974? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
108004? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019011020181123
108202? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
108464? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
108510? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
108514? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019011020181123
108528? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011020181123
108542? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019011020181123
108584? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011020181123
108586? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019011020181123
108808? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
108996? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
109446? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011020181123
109476? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
109512? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011020181123
112748? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011020181123
112766? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011020181123
112860? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011020181123
112906? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
112958? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
112974? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011020181123
112980? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019011020181123
112990? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011020181123
113006? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019011020181123
113020? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019011020181123
113108? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019011020181123
113164? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019011020181123
113166? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019011020181123
113178? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011020181123
113244? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019011020181123
113416? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019011020181123
114060? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019011020181123
114228? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019011020181123
114232? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019011020181123
114352? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019011020181123
114362? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011020181123
114390? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019011020181123
114454? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019011020181123
114854? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
114896? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019011020181123
114924? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019011020181123
114994? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
118974? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019011020181123
118976? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019011020181123
119070? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019011020181123
119100? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011020181123
119110? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019011020181123
119114? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019011020181123
119140? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019011020181123
119144? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019011020181123
119176? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019011020181123
119226? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011020181123
119366? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019011020181123
119382? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011020181123
119538? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011020181123
119982? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011020181123
120018? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
120032? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019011020181123
120098? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019011020181123
120100? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019011020181123
124192? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
124250? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019011020181123
125364? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019011020181123
125380? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
125424? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
125522? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011020181123
127822? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019011020181123
127878? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011020181123
127880? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019011020181123
127904? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019011020181123
127968? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019011020181123
128024? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
128176? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
128812? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
128888? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
129248? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019011020181123
129336? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
129378? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019011020181123
129402? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011020181123
129592? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019011020181123
129684? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
129932? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011020181123
129988? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011020181123
130024? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019011020181123
130102? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019011020181123
130248? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019011020181123
130266? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011020181123
130490? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011020181123
130582? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019011020181123
130624? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019011020181123
132114? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011020181123
132346? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011020181123
169366? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011020181123
183418? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019011020181123
183454? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011020181123
351258? ? ?? ? ?refcc2019011020181123
353588? ? ?? ? ?refgcc_-funroll-loops2019011020181123
353760? ? ?? ? ?refgcc2019011020181123

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: 0x2143240: v4i64 = X86ISD::VTRUNC 0x2143070
try.c: 0x2143070: v16i32 = vselect 0x2133f00, 0x20ddc70, 0x2142f40
try.c: 0x2133f00: v4i1 = X86ISD::PCMPGTM 0x212bb20, 0x20c1fe0
try.c: 0x212bb20: v4i64 = X86ISD::VBROADCAST 0x20c2370
try.c: 0x20c2370: i64,ch = load<LD8[%uglygep72]> 0x2026dd0, 0x2112690, undef:i64
try.c: 0x2112690: i64 = add 0x212ca00, 0x20a83b0
try.c: 0x212ca00: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x21286e0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x20a83b0: i64 = shl 0x2127e90, Constant:i8<3>
try.c: 0x2127e90: i64,ch = CopyFromReg 0x2026dd0, Register:i64 %vreg50
try.c: 0x212cec0: i64 = Register %vreg50
try.c: 0x20a99b0: i8 = Constant<3>
try.c: 0x212a190: i64 = undef
try.c: 0x20c1fe0: v4i64,ch = CopyFromReg 0x2026dd0, Register:v4i64 %vreg13
try.c: 0x20c63f0: v4i64 = Register %vreg13
try.c: 0x20ddc70: v16i32 = X86ISD::VBROADCAST 0x21280f0
try.c: 0x21280f0: i32,ch = load<LD4[ConstantPool]> 0x2026dd0, 0x2142bb0, undef:i64
try.c: 0x2142bb0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x20c3da0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x212a190: i64 = undef
try.c: 0x2142f40: 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: 0x2142e10: i32 = Constant<0>
try.c: 0x2142e10: i32 = Constant<0>
try.c: 0x2142e10: i32 = Constant<0>
try.c: 0x2142e10: 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: 0x1e44170: v4i64 = X86ISD::VTRUNC 0x1e43fa0
try.c: 0x1e43fa0: v16i32 = vselect 0x1e40be0, 0x1dc6290, 0x1e43e70
try.c: 0x1e40be0: v4i1 = X86ISD::PCMPGTM 0x1e2ca50, 0x1dc7040
try.c: 0x1e2ca50: v4i64 = X86ISD::VBROADCAST 0x1dc73d0
try.c: 0x1dc73d0: i64,ch = load<LD8[%uglygep72]> 0x1d26db0, 0x1e16750, undef:i64
try.c: 0x1e16750: i64 = add 0x1e2d930, 0x1da9710
try.c: 0x1e2d930: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1e29f20: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1da9710: i64 = shl 0x1e296d0, Constant:i8<3>
try.c: 0x1e296d0: i64,ch = CopyFromReg 0x1d26db0, Register:i64 %vreg50
try.c: 0x1e2ddf0: i64 = Register %vreg50
try.c: 0x1ddcc20: i8 = Constant<3>
try.c: 0x1e2b0c0: i64 = undef
try.c: 0x1dc7040: v4i64,ch = CopyFromReg 0x1d26db0, Register:v4i64 %vreg13
try.c: 0x1dd9730: v4i64 = Register %vreg13
try.c: 0x1dc6290: v16i32 = X86ISD::VBROADCAST 0x1e29930
try.c: 0x1e29930: i32,ch = load<LD4[ConstantPool]> 0x1d26db0, 0x1e43ae0, undef:i64
try.c: 0x1e43ae0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1dd6a40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1e2b0c0: i64 = undef
try.c: 0x1e43e70: 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: 0x1e43d40: i32 = Constant<0>
try.c: 0x1e43d40: i32 = Constant<0>
try.c: 0x1e43d40: i32 = Constant<0>
try.c: 0x1e43d40: 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