Implementation notes: amd64, oki, crypto_aead/aes128poetv2aes128

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: aes128poetv2aes128
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
157264? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018112720181123
157554? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018112720181123
157626? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112720181123
158870? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
158954? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
159302? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
159324? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
159554? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018112720181123
159578? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018112720181123
160858? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018112720181123
160940? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018112720181123
160972? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
160980? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
161294? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018112720181123
161346? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018112720181123
161472? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018112720181123
161480? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018112720181123
161592? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018112720181123
161660? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112720181123
161720? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112720181123
161740? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112720181123
161920? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112720181123
161938? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112720181123
162412? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112720181123
162576? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018112720181123
162586? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112720181123
162768? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018112720181123
163836? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018112720181123
163882? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018112720181123
163948? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
163964? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
164420? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
164616? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
165074? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018112720181123
165086? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112720181123
165102? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112720181123
165144? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018112720181123
165210? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112720181123
166152? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
166306? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
166524? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
166604? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
166664? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
166712? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018112720181123
166758? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
166764? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018112720181123
166852? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112720181123
167654? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018112720181123
167826? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
167840? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018112720181123
167890? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
168976? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112720181123
169064? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112720181123
169216? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112720181123
169244? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018112720181123
169326? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018112720181123
169444? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
169494? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
169562? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
169578? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112720181123
169602? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112720181123
169656? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112720181123
169658? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
169798? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112720181123
169844? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
169856? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112720181123
169882? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112720181123
169894? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112720181123
169990? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
170042? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112720181123
170042? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112720181123
170178? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112720181123
170178? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112720181123
170196? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2018112720181123
170584? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112720181123
170740? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018112720181123
170822? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018112720181123
170850? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018112720181123
170856? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112720181123
170880? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112720181123
170936? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112720181123
170936? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018112720181123
170944? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112720181123
170954? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018112720181123
170976? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018112720181123
171022? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112720181123
171052? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112720181123
171152? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112720181123
171246? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112720181123
171312? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112720181123
171330? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112720181123
171696? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112720181123
171720? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
171748? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
171754? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112720181123
171794? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112720181123
171886? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018112720181123
171956? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112720181123
171966? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018112720181123
172124? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112720181123
172334? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018112720181123
172354? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018112720181123
172426? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018112720181123
172464? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018112720181123
172562? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112720181123
172628? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018112720181123
172862? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112720181123
173146? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112720181123
173308? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112720181123
173364? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018112720181123
173390? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112720181123
173414? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018112720181123
173616? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
173706? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
174318? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112720181123
174400? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112720181123
416918? ? ?? ? ?refgcc_-funroll-loops2018112720181123
417128? ? ?? ? ?refgcc2018112720181123
419270? ? ?? ? ?refcc2018112720181123

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: 0x28ef090: v4i64 = X86ISD::VTRUNC 0x28eeec0
try.c: 0x28eeec0: v16i32 = vselect 0x28f5a50, 0x28791d0, 0x28eed90
try.c: 0x28f5a50: v4i1 = X86ISD::PCMPGTM 0x28d9590, 0x286e610
try.c: 0x28d9590: v4i64 = X86ISD::VBROADCAST 0x286e9a0
try.c: 0x286e9a0: i64,ch = load<LD8[%uglygep72]> 0x27d2dd0, 0x28975d0, undef:i64
try.c: 0x28975d0: i64 = add 0x28da470, 0x287e490
try.c: 0x28da470: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2833db0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x287e490: i64 = shl 0x2833560, Constant:i8<3>
try.c: 0x2833560: i64,ch = CopyFromReg 0x27d2dd0, Register:i64 %vreg50
try.c: 0x28da930: i64 = Register %vreg50
try.c: 0x28878c0: i8 = Constant<3>
try.c: 0x28d7c00: i64 = undef
try.c: 0x286e610: v4i64,ch = CopyFromReg 0x27d2dd0, Register:v4i64 %vreg13
try.c: 0x2870bd0: v4i64 = Register %vreg13
try.c: 0x28791d0: v16i32 = X86ISD::VBROADCAST 0x28337c0
try.c: 0x28337c0: i32,ch = load<LD4[ConstantPool]> 0x27d2dd0, 0x28eea00, undef:i64
try.c: 0x28eea00: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x2882000: i64 = TargetConstantPool<i32 1> 0
try.c: 0x28d7c00: i64 = undef
try.c: 0x28eed90: 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: 0x28eec60: i32 = Constant<0>
try.c: 0x28eec60: i32 = Constant<0>
try.c: 0x28eec60: i32 = Constant<0>
try.c: 0x28eec60: 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: 0x21c3320: v4i64 = X86ISD::VTRUNC 0x21c3150
try.c: 0x21c3150: v16i32 = vselect 0x21cc230, 0x215d710, 0x21c3020
try.c: 0x21cc230: v4i1 = X86ISD::PCMPGTM 0x21ab400, 0x21413d0
try.c: 0x21ab400: v4i64 = X86ISD::VBROADCAST 0x2141760
try.c: 0x2141760: i64,ch = load<LD8[%uglygep72]> 0x20a6da0, 0x219b7f0, undef:i64
try.c: 0x219b7f0: i64 = add 0x21ac2e0, 0x21563c0
try.c: 0x21ac2e0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2170a80: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x21563c0: i64 = shl 0x2170230, Constant:i8<3>
try.c: 0x2170230: i64,ch = CopyFromReg 0x20a6da0, Register:i64 %vreg50
try.c: 0x21ac7a0: i64 = Register %vreg50
try.c: 0x214bee0: i8 = Constant<3>
try.c: 0x21a9260: i64 = undef
try.c: 0x21413d0: v4i64,ch = CopyFromReg 0x20a6da0, Register:v4i64 %vreg13
try.c: 0x2146250: v4i64 = Register %vreg13
try.c: 0x215d710: v16i32 = X86ISD::VBROADCAST 0x2170490
try.c: 0x2170490: i32,ch = load<LD4[ConstantPool]> 0x20a6da0, 0x21c2c90, undef:i64
try.c: 0x21c2c90: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x2143190: i64 = TargetConstantPool<i32 1> 0
try.c: 0x21a9260: i64 = undef
try.c: 0x21c3020: 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: 0x21c2ef0: i32 = Constant<0>
try.c: 0x21c2ef0: i32 = Constant<0>
try.c: 0x21c2ef0: i32 = Constant<0>
try.c: 0x21c2ef0: 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