Implementation notes: amd64, oki, crypto_kem/kindi256522

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_kem
Primitive: kindi256522
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1744866? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011820181123
1840778? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011820181123
1921764? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011820181123
1939470? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011820181123
2021130? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011820181123
2043250? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011820181123
2062016? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011820181123
2107514? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019011820181123
2109874? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011820181123
2112706? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019011820181123
2114466? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011820181123
2114510? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019011820181123
2125818? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011820181123
2126224? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019011820181123
2127696? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011820181123
2131726? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011820181123
2140074? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019011820181123
2142668? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011820181123
2149114? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011820181123
2149170? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019011820181123
2149626? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019011820181123
2150832? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011820181123
2152740? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011820181123
2154626? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019011820181123
2155974? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011820181123
2164058? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011820181123
2164306? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019011820181123
2169026? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011820181123
2177050? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011820181123
2177774? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019011820181123
2186900? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019011820181123
2192360? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019011820181123
2193414? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019011820181123
2194388? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019011820181123
2198766? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011820181123
2201878? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019011820181123
2202096? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019011820181123
2210490? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011820181123
2217286? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019011820181123
2222908? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019011820181123
2229516? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011820181123
2252556? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019011820181123
2265038? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019011820181123
2269632? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011820181123
2274916? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011820181123
2277534? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011820181123
2278434? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019011820181123
2278746? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019011820181123
2279658? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011820181123
2279756? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019011820181123
2283716? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019011820181123
2284378? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019011820181123
2284432? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011820181123
2285040? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019011820181123
2287324? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011820181123
2296890? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019011820181123
2298056? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011820181123
2299964? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011820181123
2402332? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011820181123
2403676? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019011820181123
2403700? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019011820181123
2410246? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011820181123
2411236? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019011820181123
2412180? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019011820181123
2414694? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019011820181123
2414956? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019011820181123
2415272? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019011820181123
2415470? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019011820181123
2417424? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019011820181123
2419610? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011820181123
2420142? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019011820181123
2420948? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019011820181123
2426816? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011820181123
2427290? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011820181123
2450800? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011820181123
2451764? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011820181123
2462504? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011820181123
2468356? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019011820181123
2472152? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011820181123
2571396? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011820181123
2575760? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011820181123
2604516? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019011820181123
2606170? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019011820181123
2613698? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019011820181123
2624952? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019011820181123
2631762? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011820181123
2677116? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019011820181123
2678484? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019011820181123
2692388? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019011820181123
2696948? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019011820181123
2698170? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019011820181123
2701886? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019011820181123
2704438? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019011820181123
2710678? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019011820181123
2715610? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011820181123
2716762? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019011820181123
2722478? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019011820181123
2765938? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019011820181123
2766568? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019011820181123
2863172? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019011820181123
2870290? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019011820181123
2927030? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019011820181123
2930320? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019011820181123
2998120? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019011820181123
3000178? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019011820181123
3181338? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019011820181123
3182504? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019011820181123
3731912? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019011820181123
3734184? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019011820181123
4341872? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019011820181123
4342174? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019011820181123
4472780? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019011820181123
4475648? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019011820181123
4530720? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019011820181123
4532866? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019011820181123
10785496? ? ?? ? ?refgcc_-funroll-loops2019011820181123
10793578? ? ?? ? ?refgcc2019011820181123
10867930? ? ?? ? ?refcc2019011820181123

Test failure

Implementation: ref
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer ref

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: 0x100a0f0: v4i64 = X86ISD::VTRUNC 0x1009f20
try.c: 0x1009f20: v16i32 = vselect 0x1006b60, 0xf8e040, 0x1009df0
try.c: 0x1006b60: v4i1 = X86ISD::PCMPGTM 0xff39e0, 0xf87260
try.c: 0xff39e0: v4i64 = X86ISD::VBROADCAST 0xf875f0
try.c: 0xf875f0: i64,ch = load<LD8[%uglygep72]> 0xeedd80, 0xfefde0, undef:i64
try.c: 0xfefde0: i64 = add 0xff48c0, 0xfb5ac0
try.c: 0xff48c0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xf93770: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xfb5ac0: i64 = shl 0xf92f20, Constant:i8<3>
try.c: 0xf92f20: i64,ch = CopyFromReg 0xeedd80, Register:i64 %vreg50
try.c: 0xff4d80: i64 = Register %vreg50
try.c: 0xf8ba30: i8 = Constant<3>
try.c: 0xff2050: i64 = undef
try.c: 0xf87260: v4i64,ch = CopyFromReg 0xeedd80, Register:v4i64 %vreg13
try.c: 0xfa1ce0: v4i64 = Register %vreg13
try.c: 0xf8e040: v16i32 = X86ISD::VBROADCAST 0xf93180
try.c: 0xf93180: i32,ch = load<LD4[ConstantPool]> 0xeedd80, 0x1009a60, undef:i64
try.c: 0x1009a60: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xf89020: i64 = TargetConstantPool<i32 1> 0
try.c: 0xff2050: i64 = undef
try.c: 0x1009df0: 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: 0x1009cc0: i32 = Constant<0>
try.c: 0x1009cc0: i32 = Constant<0>
try.c: 0x1009cc0: i32 = Constant<0>
try.c: 0x1009cc0: 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: 0xa6f060: v4i64 = X86ISD::VTRUNC 0xa6ee90
try.c: 0xa6ee90: v16i32 = vselect 0xa5b980, 0x9efea0, 0xa6ed60
try.c: 0xa5b980: v4i1 = X86ISD::PCMPGTM 0xa58950, 0xa08660
try.c: 0xa58950: v4i64 = X86ISD::VBROADCAST 0xa089f0
try.c: 0xa089f0: i64,ch = load<LD8[%uglygep72]> 0x952dd0, 0xa3e5a0, undef:i64
try.c: 0xa3e5a0: i64 = add 0xa59830, 0x9f7a60
try.c: 0xa59830: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xa00220: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x9f7a60: i64 = shl 0x9ff9d0, Constant:i8<3>
try.c: 0x9ff9d0: i64,ch = CopyFromReg 0x952dd0, Register:i64 %vreg50
try.c: 0xa59cf0: i64 = Register %vreg50
try.c: 0x9f9060: i8 = Constant<3>
try.c: 0xa56fc0: i64 = undef
try.c: 0xa08660: v4i64,ch = CopyFromReg 0x952dd0, Register:v4i64 %vreg13
try.c: 0x9ebb90: v4i64 = Register %vreg13
try.c: 0x9efea0: v16i32 = X86ISD::VBROADCAST 0x9ffc30
try.c: 0x9ffc30: i32,ch = load<LD4[ConstantPool]> 0x952dd0, 0xa6e9d0, undef:i64
try.c: 0xa6e9d0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x9e96b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0xa56fc0: i64 = undef
try.c: 0xa6ed60: 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: 0xa6ec30: i32 = Constant<0>
try.c: 0xa6ec30: i32 = Constant<0>
try.c: 0xa6ec30: i32 = Constant<0>
try.c: 0xa6ec30: 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