Implementation notes: amd64, oki, crypto_verify/16

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_verify
Primitive: 16
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
28? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112720181123
28? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112720181123
28? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
28? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018112720181123
30? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112720181123
30? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
32? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112720181123
34? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112720181123
34? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
36? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2018112720181123
36? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112720181123
36? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112720181123
36? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112720181123
36? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112720181123
36? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112720181123
36? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112720181123
36? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112720181123
36? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018112720181123
38? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112720181123
40? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112720181123
40? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112720181123
40? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112720181123
40? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018112720181123
40? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018112720181123
44? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018112720181123
62? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018112720181123
70? ? ?? ? ?refcc2018112720181123
70? ? ?? ? ?refgcc2018112720181123
70? ? ?? ? ?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: 0x1c4fdd0: v4i64 = X86ISD::VTRUNC 0x1c4fc00
try.c: 0x1c4fc00: v16i32 = vselect 0x1c41b50, 0x1bea840, 0x1c4fad0
try.c: 0x1c41b50: v4i1 = X86ISD::PCMPGTM 0x1c3a720, 0x1bebdd0
try.c: 0x1c3a720: v4i64 = X86ISD::VBROADCAST 0x1bec160
try.c: 0x1bec160: i64,ch = load<LD8[%uglygep72]> 0x1b35dd0, 0x1bf50a0, undef:i64
try.c: 0x1bf50a0: i64 = add 0x1c3b600, 0x1bdc1c0
try.c: 0x1c3b600: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1bf2a20: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1bdc1c0: i64 = shl 0x1bf21d0, Constant:i8<3>
try.c: 0x1bf21d0: i64,ch = CopyFromReg 0x1b35dd0, Register:i64 %vreg50
try.c: 0x1c3bac0: i64 = Register %vreg50
try.c: 0x1bfee20: i8 = Constant<3>
try.c: 0x1c38580: i64 = undef
try.c: 0x1bebdd0: v4i64,ch = CopyFromReg 0x1b35dd0, Register:v4i64 %vreg13
try.c: 0x1be2540: v4i64 = Register %vreg13
try.c: 0x1bea840: v16i32 = X86ISD::VBROADCAST 0x1bf2430
try.c: 0x1bf2430: i32,ch = load<LD4[ConstantPool]> 0x1b35dd0, 0x1c4f740, undef:i64
try.c: 0x1c4f740: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1bd0a30: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1c38580: i64 = undef
try.c: 0x1c4fad0: 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: 0x1c4f9a0: i32 = Constant<0>
try.c: 0x1c4f9a0: i32 = Constant<0>
try.c: 0x1c4f9a0: i32 = Constant<0>
try.c: 0x1c4f9a0: 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: 0xb94020: v4i64 = X86ISD::VTRUNC 0xb93e50
try.c: 0xb93e50: v16i32 = vselect 0xb85580, 0xb17350, 0xb93d20
try.c: 0xb85580: v4i1 = X86ISD::PCMPGTM 0xb7f530, 0xb18100
try.c: 0xb7f530: v4i64 = X86ISD::VBROADCAST 0xb18490
try.c: 0xb18490: i64,ch = load<LD8[%uglygep72]> 0xa78dd0, 0xb6f360, undef:i64
try.c: 0xb6f360: i64 = add 0xb80410, 0xb28490
try.c: 0xb80410: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xb7c3b0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xb28490: i64 = shl 0xb7bb60, Constant:i8<3>
try.c: 0xb7bb60: i64,ch = CopyFromReg 0xa78dd0, Register:i64 %vreg50
try.c: 0xb808d0: i64 = Register %vreg50
try.c: 0xafbe70: i8 = Constant<3>
try.c: 0xb7dba0: i64 = undef
try.c: 0xb18100: v4i64,ch = CopyFromReg 0xa78dd0, Register:v4i64 %vreg13
try.c: 0xb3dc30: v4i64 = Register %vreg13
try.c: 0xb17350: v16i32 = X86ISD::VBROADCAST 0xb7bdc0
try.c: 0xb7bdc0: i32,ch = load<LD4[ConstantPool]> 0xa78dd0, 0xb93990, undef:i64
try.c: 0xb93990: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xb2b3b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0xb7dba0: i64 = undef
try.c: 0xb93d20: 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: 0xb93bf0: i32 = Constant<0>
try.c: 0xb93bf0: i32 = Constant<0>
try.c: 0xb93bf0: i32 = Constant<0>
try.c: 0xb93bf0: 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