Implementation notes: amd64, oki, crypto_encrypt/mcnie4q1922

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_encrypt
Primitive: mcnie4q1922
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
11361066? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012220181123
11369462? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012220181123
11404580? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012220181123
11478010? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019012220181123
11480544? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019012220181123
11481430? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019012220181123
11560792? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019012220181123
11569956? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019012220181123
11574920? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019012220181123
11575076? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019012220181123
11582658? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012220181123
11622862? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019012220181123
11629402? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019012220181123
11641512? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019012220181123
11788992? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012220181123
11789002? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019012220181123
11794038? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019012220181123
11808438? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019012220181123
11809178? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012220181123
11823456? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019012220181123
11826712? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019012220181123
11839004? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012220181123
11848318? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019012220181123
11866524? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012220181123
11959780? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012220181123
11967990? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019012220181123
11982738? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012220181123
11987628? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019012220181123
11992278? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019012220181123
12027620? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019012220181123
12030626? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019012220181123
12032326? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019012220181123
12037476? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019012220181123
12050908? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019012220181123
12054104? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019012220181123
12063120? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019012220181123
12068738? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019012220181123
12182242? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019012220181123
12683026? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012220181123
12691490? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012220181123
12713152? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012220181123
12729376? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019012220181123
12733484? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012220181123
12754980? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012220181123
12755518? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012220181123
12758550? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019012220181123
16734896? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019012220181123
16735214? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019012220181123
16761114? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019012220181123
17081240? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012220181123
17320924? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019012220181123
17327566? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012220181123
17343688? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019012220181123
17344498? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019012220181123
17365324? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019012220181123
18308952? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019012220181123
18329070? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019012220181123
18463048? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019012220181123
18484778? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019012220181123
18628160? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019012220181123
18644082? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019012220181123
18676368? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019012220181123
18767592? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019012220181123
18784468? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019012220181123
24712384? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012220181123
37705206? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012220181123
37707698? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019012220181123
38657334? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012220181123
38670124? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019012220181123
39027950? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019012220181123
39032652? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012220181123
39038490? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019012220181123
39039980? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012220181123
39263786? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019012220181123
39273220? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012220181123
39815744? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019012220181123
39864086? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019012220181123
39890752? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019012220181123
39901006? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012220181123
39993102? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012220181123
40014626? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019012220181123
40226246? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019012220181123
40229696? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019012220181123
40343078? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019012220181123
40351038? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012220181123
40391686? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012220181123
40400734? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019012220181123
40531696? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019012220181123
40551398? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012220181123
41012442? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019012220181123
41043730? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019012220181123
41126478? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019012220181123
41149838? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019012220181123
41153802? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019012220181123
41200302? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019012220181123
41206218? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019012220181123
41416548? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019012220181123
41454938? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019012220181123
41464522? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019012220181123
41470798? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019012220181123
41473392? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019012220181123
41491070? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019012220181123
41494318? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019012220181123
41651420? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019012220181123
41658512? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019012220181123
41693772? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019012220181123
41727938? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019012220181123
41732672? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019012220181123
41739122? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019012220181123
41744508? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019012220181123
41746078? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019012220181123
41779566? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019012220181123
41920638? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019012220181123
41996426? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019012220181123
42002282? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019012220181123
42271908? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019012220181123
65293420? ? ?? ? ?refcc2019012220181123
65309836? ? ?? ? ?refgcc2019012220181123
65318614? ? ?? ? ?refgcc_-funroll-loops2019012220181123

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: 0x1bcb1c0: v4i64 = X86ISD::VTRUNC 0x1bcaff0
try.c: 0x1bcaff0: v16i32 = vselect 0x1ba8d20, 0x1b4d190, 0x1bcaec0
try.c: 0x1ba8d20: v4i1 = X86ISD::PCMPGTM 0x1bb4ab0, 0x1b4df40
try.c: 0x1bb4ab0: v4i64 = X86ISD::VBROADCAST 0x1b4e2d0
try.c: 0x1b4e2d0: i64,ch = load<LD8[%uglygep72]> 0x1aaedd0, 0x1b948e0, undef:i64
try.c: 0x1b948e0: i64 = add 0x1bb5990, 0x1b601d0
try.c: 0x1bb5990: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1b5eeb0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1b601d0: i64 = shl 0x1b5e660, Constant:i8<3>
try.c: 0x1b5e660: i64,ch = CopyFromReg 0x1aaedd0, Register:i64 %vreg50
try.c: 0x1bb5e50: i64 = Register %vreg50
try.c: 0x1b31220: i8 = Constant<3>
try.c: 0x1bb3120: i64 = undef
try.c: 0x1b4df40: v4i64,ch = CopyFromReg 0x1aaedd0, Register:v4i64 %vreg13
try.c: 0x1b59420: v4i64 = Register %vreg13
try.c: 0x1b4d190: v16i32 = X86ISD::VBROADCAST 0x1b5e8c0
try.c: 0x1b5e8c0: i32,ch = load<LD4[ConstantPool]> 0x1aaedd0, 0x1bcab30, undef:i64
try.c: 0x1bcab30: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1b49080: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1bb3120: i64 = undef
try.c: 0x1bcaec0: 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: 0x1bcad90: i32 = Constant<0>
try.c: 0x1bcad90: i32 = Constant<0>
try.c: 0x1bcad90: i32 = Constant<0>
try.c: 0x1bcad90: 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: 0x1229ef0: v4i64 = X86ISD::VTRUNC 0x1229d20
try.c: 0x1229d20: v16i32 = vselect 0x1245af0, 0x11bca90, 0x1229bf0
try.c: 0x1245af0: v4i1 = X86ISD::PCMPGTM 0x121d8a0, 0x11bd840
try.c: 0x121d8a0: v4i64 = X86ISD::VBROADCAST 0x11bdbd0
try.c: 0x11bdbd0: i64,ch = load<LD8[%uglygep72]> 0x1120dd0, 0x12241c0, undef:i64
try.c: 0x12241c0: i64 = add 0x1226830, 0x11c5a80
try.c: 0x1226830: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1220f70: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x11c5a80: i64 = shl 0x1220720, Constant:i8<3>
try.c: 0x1220720: i64,ch = CopyFromReg 0x1120dd0, Register:i64 %vreg50
try.c: 0x1226cf0: i64 = Register %vreg50
try.c: 0x11cd0c0: i8 = Constant<3>
try.c: 0x1224fd0: i64 = undef
try.c: 0x11bd840: v4i64,ch = CopyFromReg 0x1120dd0, Register:v4i64 %vreg13
try.c: 0x11e76a0: v4i64 = Register %vreg13
try.c: 0x11bca90: v16i32 = X86ISD::VBROADCAST 0x1220980
try.c: 0x1220980: i32,ch = load<LD4[ConstantPool]> 0x1120dd0, 0x1229860, undef:i64
try.c: 0x1229860: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x11e02e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1224fd0: i64 = undef
try.c: 0x1229bf0: 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: 0x1229ac0: i32 = Constant<0>
try.c: 0x1229ac0: i32 = Constant<0>
try.c: 0x1229ac0: i32 = Constant<0>
try.c: 0x1229ac0: 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