Implementation notes: amd64, oki, crypto_aead/aeadaes192ocbtaglen96v1

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: aeadaes192ocbtaglen96v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
230770? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
230852? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018112720181123
230918? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018112720181123
230922? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018112720181123
230956? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
231088? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018112720181123
231120? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018112720181123
231186? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112720181123
231188? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112720181123
231204? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
231306? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018112720181123
231318? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112720181123
231600? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
231660? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
231710? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
231716? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
231814? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112720181123
231914? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112720181123
231984? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112720181123
231994? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112720181123
232092? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112720181123
232100? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
232164? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018112720181123
232176? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112720181123
232192? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112720181123
232294? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112720181123
232388? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018112720181123
233604? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
233656? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
233978? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
234100? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018112720181123
234102? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
234208? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018112720181123
234456? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018112720181123
234488? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018112720181123
234506? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018112720181123
234524? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018112720181123
234608? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018112720181123
234690? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
234738? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
234776? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018112720181123
234910? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018112720181123
235120? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018112720181123
235198? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112720181123
235688? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018112720181123
237372? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2018112720181123
237402? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112720181123
237446? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112720181123
237592? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112720181123
237692? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112720181123
237782? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112720181123
237784? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112720181123
237930? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112720181123
253006? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
253364? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
253864? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112720181123
253908? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112720181123
253962? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112720181123
254034? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112720181123
254132? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112720181123
254310? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112720181123
254438? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112720181123
254912? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112720181123
255110? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018112720181123
255282? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018112720181123
255862? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
256958? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112720181123
257022? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
257208? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112720181123
257304? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112720181123
257406? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
257620? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
257700? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112720181123
257758? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112720181123
257908? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112720181123
258016? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018112720181123
258078? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018112720181123
258086? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112720181123
258826? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018112720181123
259154? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018112720181123
259190? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018112720181123
259292? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112720181123
260736? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112720181123
261200? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018112720181123
261696? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112720181123
261704? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112720181123
261764? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112720181123
261792? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112720181123
261814? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112720181123
261834? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112720181123
261956? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112720181123
262178? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018112720181123
262450? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112720181123
262896? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018112720181123
263172? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018112720181123
263176? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112720181123
263226? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
263246? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018112720181123
263608? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018112720181123
263652? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112720181123
263716? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112720181123
263808? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
263964? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
264220? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
264226? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018112720181123
264266? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018112720181123
264274? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018112720181123
264866? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
264892? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
265512? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018112720181123
265568? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112720181123
265570? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112720181123
265614? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018112720181123
265760? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018112720181123
267506? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
267924? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
474468? ? ?? ? ?refcc2018112720181123
476142? ? ?? ? ?refgcc2018112720181123
477078? ? ?? ? ?refgcc_-funroll-loops2018112720181123

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: 0x151c810: v4i64 = X86ISD::VTRUNC 0x1520670
try.c: 0x1520670: v16i32 = vselect 0x1515270, 0x14b36b0, 0x1520540
try.c: 0x1515270: v4i1 = X86ISD::PCMPGTM 0x1507110, 0x14ab1b0
try.c: 0x1507110: v4i64 = X86ISD::VBROADCAST 0x14ab540
try.c: 0x14ab540: i64,ch = load<LD8[%uglygep72]> 0x1402dd0, 0x14c27d0, undef:i64
try.c: 0x14c27d0: i64 = add 0x1507ff0, 0x14b46e0
try.c: 0x1507ff0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x15017b0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x14b46e0: i64 = shl 0x1500f60, Constant:i8<3>
try.c: 0x1500f60: i64,ch = CopyFromReg 0x1402dd0, Register:i64 %vreg50
try.c: 0x15084b0: i64 = Register %vreg50
try.c: 0x14b5ce0: i8 = Constant<3>
try.c: 0x1505780: i64 = undef
try.c: 0x14ab1b0: v4i64,ch = CopyFromReg 0x1402dd0, Register:v4i64 %vreg13
try.c: 0x14a2d80: v4i64 = Register %vreg13
try.c: 0x14b36b0: v16i32 = X86ISD::VBROADCAST 0x15011c0
try.c: 0x15011c0: i32,ch = load<LD4[ConstantPool]> 0x1402dd0, 0x15201b0, undef:i64
try.c: 0x15201b0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x14acf70: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1505780: i64 = undef
try.c: 0x1520540: 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: 0x1520410: i32 = Constant<0>
try.c: 0x1520410: i32 = Constant<0>
try.c: 0x1520410: i32 = Constant<0>
try.c: 0x1520410: 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: 0x263db20: v4i64 = X86ISD::VTRUNC 0x263d950
try.c: 0x263d950: v16i32 = vselect 0x263a590, 0x25e2cb0, 0x263d820
try.c: 0x263a590: v4i1 = X86ISD::PCMPGTM 0x26249e0, 0x25be150
try.c: 0x26249e0: v4i64 = X86ISD::VBROADCAST 0x25be4e0
try.c: 0x25be4e0: i64,ch = load<LD8[%uglygep72]> 0x251fdc0, 0x2613590, undef:i64
try.c: 0x2613590: i64 = add 0x26258c0, 0x25a0300
try.c: 0x26258c0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x260f960: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x25a0300: i64 = shl 0x260f110, Constant:i8<3>
try.c: 0x260f110: i64,ch = CopyFromReg 0x251fdc0, Register:i64 %vreg50
try.c: 0x2625d80: i64 = Register %vreg50
try.c: 0x25c5420: i8 = Constant<3>
try.c: 0x2623050: i64 = undef
try.c: 0x25be150: v4i64,ch = CopyFromReg 0x251fdc0, Register:v4i64 %vreg13
try.c: 0x25c99b0: v4i64 = Register %vreg13
try.c: 0x25e2cb0: v16i32 = X86ISD::VBROADCAST 0x260f370
try.c: 0x260f370: i32,ch = load<LD4[ConstantPool]> 0x251fdc0, 0x263d490, undef:i64
try.c: 0x263d490: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x25d6040: i64 = TargetConstantPool<i32 1> 0
try.c: 0x2623050: i64 = undef
try.c: 0x263d820: 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: 0x263d6f0: i32 = Constant<0>
try.c: 0x263d6f0: i32 = Constant<0>
try.c: 0x263d6f0: i32 = Constant<0>
try.c: 0x263d6f0: 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