Implementation notes: amd64, cel02, crypto_kem/ledakem13sl

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: ledakem13sl
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1025857251160 591368 086901 592200 1688T:portableoptgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1075794275216 591368 0114637 592200 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1125317831871 591368 066645 592192 1656T:portableoptgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1174855649096 591368 083764 592168 1624T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
1192012047322 68 083810 880 1624T:portableoptclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
1471263651113 591368 087333 592200 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-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: 0x55bb184a11c0: v4i64 = X86ISD::VTRUNC 0x55bb184a1090
try.c: 0x55bb184a1090: v16i32 = vselect 0x55bb18481c90, 0x55bb1842eec0, 0x55bb184a0f60
try.c: 0x55bb18481c90: v4i1 = X86ISD::PCMPGTM 0x55bb18489860, 0x55bb184853f0
try.c: 0x55bb18489860: v4i64 = X86ISD::VBROADCAST 0x55bb184312b0
try.c: 0x55bb184312b0: i64,ch = load<LD8[%lsr.iv6971]> 0x55bb1839a950, 0x55bb18478250, undef:i64
try.c: 0x55bb18478250: i64,ch = CopyFromReg 0x55bb1839a950, Register:i64 %vreg50
try.c: 0x55bb18485650: i64 = Register %vreg50
try.c: 0x55bb1842d530: i64 = undef
try.c: 0x55bb184853f0: v4i64,ch = CopyFromReg 0x55bb1839a950, Register:v4i64 %vreg13
try.c: 0x55bb1848a0b0: v4i64 = Register %vreg13
try.c: 0x55bb1842eec0: v16i32 = X86ISD::VBROADCAST 0x55bb18489ac0
try.c: 0x55bb18489ac0: i32,ch = load<LD4[ConstantPool]> 0x55bb1839a950, 0x55bb18430890, undef:i64
try.c: 0x55bb18430890: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55bb18425330: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55bb1842d530: i64 = undef
try.c: 0x55bb184a0f60: 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: 0x55bb184a0e30: i32 = Constant<0>
try.c: 0x55bb184a0e30: i32 = Constant<0>
try.c: 0x55bb184a0e30: i32 = Constant<0>
try.c: 0x55bb184a0e30: i32 = Constant<0>
try.c: 0x55bb184a0e30: i32 = Constant<0>
try.c: 0x55bb184a0e30: i32 = Constant<0>
try.c: 0x55bb184a0e30: i32 = Constant<0>
try.c: 0x55bb184a0e30: i32 = Constant<0>
try.c: 0x55bb184a0e30: 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: 0x556eb037d720: v4i64 = X86ISD::VTRUNC 0x556eb037d5f0
try.c: 0x556eb037d5f0: v16i32 = vselect 0x556eb0368960, 0x556eb02faef0, 0x556eb037d4c0
try.c: 0x556eb0368960: v4i1 = X86ISD::PCMPGTM 0x556eb0365940, 0x556eb0360d10
try.c: 0x556eb0365940: v4i64 = X86ISD::VBROADCAST 0x556eb02fb3b0
try.c: 0x556eb02fb3b0: i64,ch = load<LD8[%lsr.iv6971]> 0x556eb025fa40, 0x556eb03014f0, undef:i64
try.c: 0x556eb03014f0: i64,ch = CopyFromReg 0x556eb025fa40, Register:i64 %vreg50
try.c: 0x556eb0360f70: i64 = Register %vreg50
try.c: 0x556eb0314560: i64 = undef
try.c: 0x556eb0360d10: v4i64,ch = CopyFromReg 0x556eb025fa40, Register:v4i64 %vreg13
try.c: 0x556eb0366190: v4i64 = Register %vreg13
try.c: 0x556eb02faef0: v16i32 = X86ISD::VBROADCAST 0x556eb0365ba0
try.c: 0x556eb0365ba0: i32,ch = load<LD4[ConstantPool]> 0x556eb025fa40, 0x556eb03105d0, undef:i64
try.c: 0x556eb03105d0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x556eb0314ee0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x556eb0314560: i64 = undef
try.c: 0x556eb037d4c0: 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: 0x556eb037d390: i32 = Constant<0>
try.c: 0x556eb037d390: i32 = Constant<0>
try.c: 0x556eb037d390: i32 = Constant<0>
try.c: 0x556eb037d390: i32 = Constant<0>
try.c: 0x556eb037d390: i32 = Constant<0>
try.c: 0x556eb037d390: i32 = Constant<0>
try.c: 0x556eb037d390: i32 = Constant<0>
try.c: 0x556eb037d390: i32 = Constant<0>
try.c: 0x556eb037d390: 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: 0x559a9606e1c0: v4i64 = X86ISD::VTRUNC 0x559a9606e090
try.c: 0x559a9606e090: v16i32 = vselect 0x559a9605f320, 0x559a96010890, 0x559a9606df60
try.c: 0x559a9605f320: v4i1 = X86ISD::PCMPGTM 0x559a960539f0, 0x559a9604f580
try.c: 0x559a960539f0: v4i64 = X86ISD::VBROADCAST 0x559a9600da30
try.c: 0x559a9600da30: i64,ch = load<LD8[%lsr.iv6971]> 0x559a95f64950, 0x559a9604a3e0, undef:i64
try.c: 0x559a9604a3e0: i64,ch = CopyFromReg 0x559a95f64950, Register:i64 %vreg50
try.c: 0x559a9604f7e0: i64 = Register %vreg50
try.c: 0x559a9600ef00: i64 = undef
try.c: 0x559a9604f580: v4i64,ch = CopyFromReg 0x559a95f64950, Register:v4i64 %vreg13
try.c: 0x559a96054240: v4i64 = Register %vreg13
try.c: 0x559a96010890: v16i32 = X86ISD::VBROADCAST 0x559a96053c50
try.c: 0x559a96053c50: i32,ch = load<LD4[ConstantPool]> 0x559a95f64950, 0x559a95ff7d90, undef:i64
try.c: 0x559a95ff7d90: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x559a96015370: i64 = TargetConstantPool<i32 1> 0
try.c: 0x559a9600ef00: i64 = undef
try.c: 0x559a9606df60: 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: 0x559a9606de30: i32 = Constant<0>
try.c: 0x559a9606de30: i32 = Constant<0>
try.c: 0x559a9606de30: i32 = Constant<0>
try.c: 0x559a9606de30: i32 = Constant<0>
try.c: 0x559a9606de30: i32 = Constant<0>
try.c: 0x559a9606de30: i32 = Constant<0>
try.c: 0x559a9606de30: i32 = Constant<0>
try.c: 0x559a9606de30: i32 = Constant<0>
try.c: 0x559a9606de30: 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