Implementation notes: amd64, cel02, crypto_kem/ledakemcpa53

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: ledakemcpa53
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2144138246808 769920 071100 770728 1624T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3664227044385 60 079474 880 1624T:portableoptclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
4085405662518 769920 091221 770760 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
5343384248692 769920 074725 770760 1688T:portableoptgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
5363527648836 769920 074437 770760 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
5491271829939 769920 055701 770752 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: 0x5592eaa98b70: v4i64 = X86ISD::VTRUNC 0x5592eaa98a40
try.c: 0x5592eaa98a40: v16i32 = vselect 0x5592eaa84e60, 0x5592eaa3af90, 0x5592eaa98910
try.c: 0x5592eaa84e60: v4i1 = X86ISD::PCMPGTM 0x5592eaa7f200, 0x5592eaa7ad90
try.c: 0x5592eaa7f200: v4i64 = X86ISD::VBROADCAST 0x5592eaa1fc40
try.c: 0x5592eaa1fc40: i64,ch = load<LD8[%lsr.iv6971]> 0x5592ea98f950, 0x5592eaa72c20, undef:i64
try.c: 0x5592eaa72c20: i64,ch = CopyFromReg 0x5592ea98f950, Register:i64 %vreg50
try.c: 0x5592eaa7aff0: i64 = Register %vreg50
try.c: 0x5592eaa39600: i64 = undef
try.c: 0x5592eaa7ad90: v4i64,ch = CopyFromReg 0x5592ea98f950, Register:v4i64 %vreg13
try.c: 0x5592eaa7fa50: v4i64 = Register %vreg13
try.c: 0x5592eaa3af90: v16i32 = X86ISD::VBROADCAST 0x5592eaa7f460
try.c: 0x5592eaa7f460: i32,ch = load<LD4[ConstantPool]> 0x5592ea98f950, 0x5592eaa1f220, undef:i64
try.c: 0x5592eaa1f220: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5592eaa63b90: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5592eaa39600: i64 = undef
try.c: 0x5592eaa98910: 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: 0x5592eaa987e0: i32 = Constant<0>
try.c: 0x5592eaa987e0: i32 = Constant<0>
try.c: 0x5592eaa987e0: i32 = Constant<0>
try.c: 0x5592eaa987e0: i32 = Constant<0>
try.c: 0x5592eaa987e0: i32 = Constant<0>
try.c: 0x5592eaa987e0: i32 = Constant<0>
try.c: 0x5592eaa987e0: i32 = Constant<0>
try.c: 0x5592eaa987e0: i32 = Constant<0>
try.c: 0x5592eaa987e0: 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: 0x5589b303c630: v4i64 = X86ISD::VTRUNC 0x5589b303c500
try.c: 0x5589b303c500: v16i32 = vselect 0x5589b301d420, 0x5589b2fd1660, 0x5589b303c3d0
try.c: 0x5589b301d420: v4i1 = X86ISD::PCMPGTM 0x5589b3017e10, 0x5589b30139a0
try.c: 0x5589b3017e10: v4i64 = X86ISD::VBROADCAST 0x5589b2fd1b20
try.c: 0x5589b2fd1b20: i64,ch = load<LD8[%lsr.iv6971]> 0x5589b2f10a30, 0x5589b2fbfc10, undef:i64
try.c: 0x5589b2fbfc10: i64,ch = CopyFromReg 0x5589b2f10a30, Register:i64 %vreg50
try.c: 0x5589b3013c00: i64 = Register %vreg50
try.c: 0x5589b2fb20a0: i64 = undef
try.c: 0x5589b30139a0: v4i64,ch = CopyFromReg 0x5589b2f10a30, Register:v4i64 %vreg13
try.c: 0x5589b3018660: v4i64 = Register %vreg13
try.c: 0x5589b2fd1660: v16i32 = X86ISD::VBROADCAST 0x5589b3018070
try.c: 0x5589b3018070: i32,ch = load<LD4[ConstantPool]> 0x5589b2f10a30, 0x5589b2faf550, undef:i64
try.c: 0x5589b2faf550: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5589b2fb2a20: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5589b2fb20a0: i64 = undef
try.c: 0x5589b303c3d0: 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: 0x5589b303c2a0: i32 = Constant<0>
try.c: 0x5589b303c2a0: i32 = Constant<0>
try.c: 0x5589b303c2a0: i32 = Constant<0>
try.c: 0x5589b303c2a0: i32 = Constant<0>
try.c: 0x5589b303c2a0: i32 = Constant<0>
try.c: 0x5589b303c2a0: i32 = Constant<0>
try.c: 0x5589b303c2a0: i32 = Constant<0>
try.c: 0x5589b303c2a0: i32 = Constant<0>
try.c: 0x5589b303c2a0: 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: 0x55856942c6c0: v4i64 = X86ISD::VTRUNC 0x55856942c590
try.c: 0x55856942c590: v16i32 = vselect 0x55856944a3e0, 0x5585693eb040, 0x55856942c460
try.c: 0x55856944a3e0: v4i1 = X86ISD::PCMPGTM 0x5585694280a0, 0x558569423c30
try.c: 0x5585694280a0: v4i64 = X86ISD::VBROADCAST 0x5585693cbd20
try.c: 0x5585693cbd20: i64,ch = load<LD8[%lsr.iv6971]> 0x558569338950, 0x55856940f680, undef:i64
try.c: 0x55856940f680: i64,ch = CopyFromReg 0x558569338950, Register:i64 %vreg50
try.c: 0x558569423e90: i64 = Register %vreg50
try.c: 0x5585693e96b0: i64 = undef
try.c: 0x558569423c30: v4i64,ch = CopyFromReg 0x558569338950, Register:v4i64 %vreg13
try.c: 0x5585694288f0: v4i64 = Register %vreg13
try.c: 0x5585693eb040: v16i32 = X86ISD::VBROADCAST 0x558569428300
try.c: 0x558569428300: i32,ch = load<LD4[ConstantPool]> 0x558569338950, 0x5585693cb300, undef:i64
try.c: 0x5585693cb300: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55856941b330: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5585693e96b0: i64 = undef
try.c: 0x55856942c460: 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: 0x55856942c330: i32 = Constant<0>
try.c: 0x55856942c330: i32 = Constant<0>
try.c: 0x55856942c330: i32 = Constant<0>
try.c: 0x55856942c330: i32 = Constant<0>
try.c: 0x55856942c330: i32 = Constant<0>
try.c: 0x55856942c330: i32 = Constant<0>
try.c: 0x55856942c330: i32 = Constant<0>
try.c: 0x55856942c330: i32 = Constant<0>
try.c: 0x55856942c330: 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