Implementation notes: amd64, cel02, crypto_kem/ledakemcpa52

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: ledakemcpa52
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2553665265446 1132544 094085 1133384 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3075566043472 64 078506 880 1624T:portableoptclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3172192629814 1132544 055557 1133376 1656T:portableoptgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3311232846738 1132544 071036 1133352 1624T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
4405479448756 1132544 074373 1133384 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
4445216048615 1132544 074645 1133384 1688T:portableoptgcc_-march=native_-mtune=native_-O_-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: 0x55c1072b74a0: v4i64 = X86ISD::VTRUNC 0x55c1072b7370
try.c: 0x55c1072b7370: v16i32 = vselect 0x55c107293ea0, 0x55c107253b10, 0x55c1072b7240
try.c: 0x55c107293ea0: v4i1 = X86ISD::PCMPGTM 0x55c10729ac80, 0x55c107297210
try.c: 0x55c10729ac80: v4i64 = X86ISD::VBROADCAST 0x55c107250cb0
try.c: 0x55c107250cb0: i64,ch = load<LD8[%lsr.iv6971]> 0x55c1071ac950, 0x55c107280820, undef:i64
try.c: 0x55c107280820: i64,ch = CopyFromReg 0x55c1071ac950, Register:i64 %vreg50
try.c: 0x55c107297470: i64 = Register %vreg50
try.c: 0x55c107252180: i64 = undef
try.c: 0x55c107297210: v4i64,ch = CopyFromReg 0x55c1071ac950, Register:v4i64 %vreg13
try.c: 0x55c10729b4d0: v4i64 = Register %vreg13
try.c: 0x55c107253b10: v16i32 = X86ISD::VBROADCAST 0x55c10729aee0
try.c: 0x55c10729aee0: i32,ch = load<LD4[ConstantPool]> 0x55c1071ac950, 0x55c10723d0f0, undef:i64
try.c: 0x55c10723d0f0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55c1072867e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55c107252180: i64 = undef
try.c: 0x55c1072b7240: 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: 0x55c1072b7110: i32 = Constant<0>
try.c: 0x55c1072b7110: i32 = Constant<0>
try.c: 0x55c1072b7110: i32 = Constant<0>
try.c: 0x55c1072b7110: i32 = Constant<0>
try.c: 0x55c1072b7110: i32 = Constant<0>
try.c: 0x55c1072b7110: i32 = Constant<0>
try.c: 0x55c1072b7110: i32 = Constant<0>
try.c: 0x55c1072b7110: i32 = Constant<0>
try.c: 0x55c1072b7110: 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: 0x561c87668530: v4i64 = X86ISD::VTRUNC 0x561c87668400
try.c: 0x561c87668400: v16i32 = vselect 0x561c8767d1f0, 0x561c875f5f60, 0x561c876682d0
try.c: 0x561c8767d1f0: v4i1 = X86ISD::PCMPGTM 0x561c8765d490, 0x561c8765a7a0
try.c: 0x561c8765d490: v4i64 = X86ISD::VBROADCAST 0x561c875f6420
try.c: 0x561c875f6420: i64,ch = load<LD8[%lsr.iv6971]> 0x561c87557a30, 0x561c87606b40, undef:i64
try.c: 0x561c87606b40: i64,ch = CopyFromReg 0x561c87557a30, Register:i64 %vreg50
try.c: 0x561c8765aa00: i64 = Register %vreg50
try.c: 0x561c875f3180: i64 = undef
try.c: 0x561c8765a7a0: v4i64,ch = CopyFromReg 0x561c87557a30, Register:v4i64 %vreg13
try.c: 0x561c8765dce0: v4i64 = Register %vreg13
try.c: 0x561c875f5f60: v16i32 = X86ISD::VBROADCAST 0x561c8765d6f0
try.c: 0x561c8765d6f0: i32,ch = load<LD4[ConstantPool]> 0x561c87557a30, 0x561c875f9c50, undef:i64
try.c: 0x561c875f9c50: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x561c875f3b00: i64 = TargetConstantPool<i32 1> 0
try.c: 0x561c875f3180: i64 = undef
try.c: 0x561c876682d0: 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: 0x561c876681a0: i32 = Constant<0>
try.c: 0x561c876681a0: i32 = Constant<0>
try.c: 0x561c876681a0: i32 = Constant<0>
try.c: 0x561c876681a0: i32 = Constant<0>
try.c: 0x561c876681a0: i32 = Constant<0>
try.c: 0x561c876681a0: i32 = Constant<0>
try.c: 0x561c876681a0: i32 = Constant<0>
try.c: 0x561c876681a0: i32 = Constant<0>
try.c: 0x561c876681a0: 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: 0x557f8933fc20: v4i64 = X86ISD::VTRUNC 0x557f8933faf0
try.c: 0x557f8933faf0: v16i32 = vselect 0x557f89348790, 0x557f892d3120, 0x557f8933f9c0
try.c: 0x557f89348790: v4i1 = X86ISD::PCMPGTM 0x557f893252a0, 0x557f89320e30
try.c: 0x557f893252a0: v4i64 = X86ISD::VBROADCAST 0x557f892cc300
try.c: 0x557f892cc300: i64,ch = load<LD8[%lsr.iv6971]> 0x557f89235930, 0x557f893173c0, undef:i64
try.c: 0x557f893173c0: i64,ch = CopyFromReg 0x557f89235930, Register:i64 %vreg50
try.c: 0x557f89321090: i64 = Register %vreg50
try.c: 0x557f892d1790: i64 = undef
try.c: 0x557f89320e30: v4i64,ch = CopyFromReg 0x557f89235930, Register:v4i64 %vreg13
try.c: 0x557f89325af0: v4i64 = Register %vreg13
try.c: 0x557f892d3120: v16i32 = X86ISD::VBROADCAST 0x557f89325500
try.c: 0x557f89325500: i32,ch = load<LD4[ConstantPool]> 0x557f89235930, 0x557f892cb8e0, undef:i64
try.c: 0x557f892cb8e0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x557f892eb0e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x557f892d1790: i64 = undef
try.c: 0x557f8933f9c0: 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: 0x557f8933f890: i32 = Constant<0>
try.c: 0x557f8933f890: i32 = Constant<0>
try.c: 0x557f8933f890: i32 = Constant<0>
try.c: 0x557f8933f890: i32 = Constant<0>
try.c: 0x557f8933f890: i32 = Constant<0>
try.c: 0x557f8933f890: i32 = Constant<0>
try.c: 0x557f8933f890: i32 = Constant<0>
try.c: 0x557f8933f890: i32 = Constant<0>
try.c: 0x557f8933f890: 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