Implementation notes: amd64, cel02, crypto_kem/ledakemcpa14

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: ledakemcpa14
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
313871444858 52 079986 872 1624T:portableoptclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
469047661778 188032 090461 188872 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
529832046746 188032 071036 188840 1624T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
565079248645 188032 074661 188872 1688T:portableoptgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
836307048749 188032 074373 188872 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
866448229952 188032 055709 188864 1656T:portableoptgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:portableopt
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55fe3d1bf230: v4i64 = X86ISD::VTRUNC 0x55fe3d1bf100
try.c: 0x55fe3d1bf100: v16i32 = vselect 0x55fe3d1bbc10, 0x55fe3d1606b0, 0x55fe3d1befd0
try.c: 0x55fe3d1bbc10: v4i1 = X86ISD::PCMPGTM 0x55fe3d1a48a0, 0x55fe3d1a0430
try.c: 0x55fe3d1a48a0: v4i64 = X86ISD::VBROADCAST 0x55fe3d1447d0
try.c: 0x55fe3d1447d0: i64,ch = load<LD8[%lsr.iv6971]> 0x55fe3d0b5960, 0x55fe3d19b290, undef:i64
try.c: 0x55fe3d19b290: i64,ch = CopyFromReg 0x55fe3d0b5960, Register:i64 %vreg50
try.c: 0x55fe3d1a0690: i64 = Register %vreg50
try.c: 0x55fe3d15ed20: i64 = undef
try.c: 0x55fe3d1a0430: v4i64,ch = CopyFromReg 0x55fe3d0b5960, Register:v4i64 %vreg13
try.c: 0x55fe3d1a50f0: v4i64 = Register %vreg13
try.c: 0x55fe3d1606b0: v16i32 = X86ISD::VBROADCAST 0x55fe3d1a4b00
try.c: 0x55fe3d1a4b00: i32,ch = load<LD4[ConstantPool]> 0x55fe3d0b5960, 0x55fe3d143db0, undef:i64
try.c: 0x55fe3d143db0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55fe3d18b790: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55fe3d15ed20: i64 = undef
try.c: 0x55fe3d1befd0: 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: 0x55fe3d1beea0: i32 = Constant<0>
try.c: 0x55fe3d1beea0: i32 = Constant<0>
try.c: 0x55fe3d1beea0: i32 = Constant<0>
try.c: 0x55fe3d1beea0: i32 = Constant<0>
try.c: 0x55fe3d1beea0: i32 = Constant<0>
try.c: 0x55fe3d1beea0: i32 = Constant<0>
try.c: 0x55fe3d1beea0: i32 = Constant<0>
try.c: 0x55fe3d1beea0: i32 = Constant<0>
try.c: 0x55fe3d1beea0: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:portableopt

Compiler output

Implementation: T:portableopt
Security model: timingleaks
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55b978c0d6e0: v4i64 = X86ISD::VTRUNC 0x55b978c0d5b0
try.c: 0x55b978c0d5b0: v16i32 = vselect 0x55b978bfe730, 0x55b978b7fe00, 0x55b978c0d480
try.c: 0x55b978bfe730: v4i1 = X86ISD::PCMPGTM 0x55b978be83d0, 0x55b978be5ef0
try.c: 0x55b978be83d0: v4i64 = X86ISD::VBROADCAST 0x55b978b802c0
try.c: 0x55b978b802c0: i64,ch = load<LD8[%lsr.iv6971]> 0x55b978ae2a30, 0x55b978b7d520, undef:i64
try.c: 0x55b978b7d520: i64,ch = CopyFromReg 0x55b978ae2a30, Register:i64 %vreg50
try.c: 0x55b978be6150: i64 = Register %vreg50
try.c: 0x55b978b611b0: i64 = undef
try.c: 0x55b978be5ef0: v4i64,ch = CopyFromReg 0x55b978ae2a30, Register:v4i64 %vreg13
try.c: 0x55b978be8c20: v4i64 = Register %vreg13
try.c: 0x55b978b7fe00: v16i32 = X86ISD::VBROADCAST 0x55b978be8630
try.c: 0x55b978be8630: i32,ch = load<LD4[ConstantPool]> 0x55b978ae2a30, 0x55b978b827a0, undef:i64
try.c: 0x55b978b827a0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55b978b61b30: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55b978b611b0: i64 = undef
try.c: 0x55b978c0d480: 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: 0x55b978c0d350: i32 = Constant<0>
try.c: 0x55b978c0d350: i32 = Constant<0>
try.c: 0x55b978c0d350: i32 = Constant<0>
try.c: 0x55b978c0d350: i32 = Constant<0>
try.c: 0x55b978c0d350: i32 = Constant<0>
try.c: 0x55b978c0d350: i32 = Constant<0>
try.c: 0x55b978c0d350: i32 = Constant<0>
try.c: 0x55b978c0d350: i32 = Constant<0>
try.c: 0x55b978c0d350: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:portableopt

Compiler output

Implementation: T:portableopt
Security model: timingleaks
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x561c09e06100: v4i64 = X86ISD::VTRUNC 0x561c09e05fd0
try.c: 0x561c09e05fd0: v16i32 = vselect 0x561c09e02ae0, 0x561c09d9f860, 0x561c09e05ea0
try.c: 0x561c09e02ae0: v4i1 = X86ISD::PCMPGTM 0x561c09dfdf00, 0x561c09df9a90
try.c: 0x561c09dfdf00: v4i64 = X86ISD::VBROADCAST 0x561c09dc46a0
try.c: 0x561c09dc46a0: i64,ch = load<LD8[%lsr.iv6971]> 0x561c09d0e950, 0x561c09de9260, undef:i64
try.c: 0x561c09de9260: i64,ch = CopyFromReg 0x561c09d0e950, Register:i64 %vreg50
try.c: 0x561c09df9cf0: i64 = Register %vreg50
try.c: 0x561c09d9ded0: i64 = undef
try.c: 0x561c09df9a90: v4i64,ch = CopyFromReg 0x561c09d0e950, Register:v4i64 %vreg13
try.c: 0x561c09dfe750: v4i64 = Register %vreg13
try.c: 0x561c09d9f860: v16i32 = X86ISD::VBROADCAST 0x561c09dfe160
try.c: 0x561c09dfe160: i32,ch = load<LD4[ConstantPool]> 0x561c09d0e950, 0x561c09dc3c80, undef:i64
try.c: 0x561c09dc3c80: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x561c09df16b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x561c09d9ded0: i64 = undef
try.c: 0x561c09e05ea0: 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: 0x561c09e05d70: i32 = Constant<0>
try.c: 0x561c09e05d70: i32 = Constant<0>
try.c: 0x561c09e05d70: i32 = Constant<0>
try.c: 0x561c09e05d70: i32 = Constant<0>
try.c: 0x561c09e05d70: i32 = Constant<0>
try.c: 0x561c09e05d70: i32 = Constant<0>
try.c: 0x561c09e05d70: i32 = Constant<0>
try.c: 0x561c09e05d70: i32 = Constant<0>
try.c: 0x561c09e05d70: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:portableopt