Implementation notes: amd64, cel02, crypto_kem/ledakem34sl

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: ledakem34sl
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3107676251669 925448 087917 926280 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3162653049265 925448 083964 926248 1624T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3288721451634 925448 087413 926280 1688T:portableoptgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3521514678378 925448 0117773 926280 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3586297231826 925448 066581 926272 1656T:portableoptgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6901423050957 68 087466 880 1624T:portableoptclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-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: 0x55f026b0c0c0: v4i64 = X86ISD::VTRUNC 0x55f026b0bf90
try.c: 0x55f026b0bf90: v16i32 = vselect 0x55f026b26df0, 0x55f026aaf660, 0x55f026b0be60
try.c: 0x55f026b26df0: v4i1 = X86ISD::PCMPGTM 0x55f026b05a90, 0x55f026b01620
try.c: 0x55f026b05a90: v4i64 = X86ISD::VBROADCAST 0x55f026aac800
try.c: 0x55f026aac800: i64,ch = load<LD8[%lsr.iv6971]> 0x55f026a16950, 0x55f026aefa00, undef:i64
try.c: 0x55f026aefa00: i64,ch = CopyFromReg 0x55f026a16950, Register:i64 %vreg50
try.c: 0x55f026b01880: i64 = Register %vreg50
try.c: 0x55f026aadcd0: i64 = undef
try.c: 0x55f026b01620: v4i64,ch = CopyFromReg 0x55f026a16950, Register:v4i64 %vreg13
try.c: 0x55f026b062e0: v4i64 = Register %vreg13
try.c: 0x55f026aaf660: v16i32 = X86ISD::VBROADCAST 0x55f026b05cf0
try.c: 0x55f026b05cf0: i32,ch = load<LD4[ConstantPool]> 0x55f026a16950, 0x55f026aabde0, undef:i64
try.c: 0x55f026aabde0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55f026acb810: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55f026aadcd0: i64 = undef
try.c: 0x55f026b0be60: 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: 0x55f026b0bd30: i32 = Constant<0>
try.c: 0x55f026b0bd30: i32 = Constant<0>
try.c: 0x55f026b0bd30: i32 = Constant<0>
try.c: 0x55f026b0bd30: i32 = Constant<0>
try.c: 0x55f026b0bd30: i32 = Constant<0>
try.c: 0x55f026b0bd30: i32 = Constant<0>
try.c: 0x55f026b0bd30: i32 = Constant<0>
try.c: 0x55f026b0bd30: i32 = Constant<0>
try.c: 0x55f026b0bd30: 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: 0x56351669d100: v4i64 = X86ISD::VTRUNC 0x56351669cfd0
try.c: 0x56351669cfd0: v16i32 = vselect 0x5635166ac140, 0x5635166273c0, 0x56351669cea0
try.c: 0x5635166ac140: v4i1 = X86ISD::PCMPGTM 0x563516693f60, 0x56351668f4e0
try.c: 0x563516693f60: v4i64 = X86ISD::VBROADCAST 0x563516627880
try.c: 0x563516627880: i64,ch = load<LD8[%lsr.iv6971]> 0x56351658da30, 0x56351662fdf0, undef:i64
try.c: 0x56351662fdf0: i64,ch = CopyFromReg 0x56351658da30, Register:i64 %vreg50
try.c: 0x56351668f740: i64 = Register %vreg50
try.c: 0x563516620b90: i64 = undef
try.c: 0x56351668f4e0: v4i64,ch = CopyFromReg 0x56351658da30, Register:v4i64 %vreg13
try.c: 0x5635166947b0: v4i64 = Register %vreg13
try.c: 0x5635166273c0: v16i32 = X86ISD::VBROADCAST 0x5635166941c0
try.c: 0x5635166941c0: i32,ch = load<LD4[ConstantPool]> 0x56351658da30, 0x56351662c9a0, undef:i64
try.c: 0x56351662c9a0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x563516621510: i64 = TargetConstantPool<i32 1> 0
try.c: 0x563516620b90: i64 = undef
try.c: 0x56351669cea0: 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: 0x56351669cd70: i32 = Constant<0>
try.c: 0x56351669cd70: i32 = Constant<0>
try.c: 0x56351669cd70: i32 = Constant<0>
try.c: 0x56351669cd70: i32 = Constant<0>
try.c: 0x56351669cd70: i32 = Constant<0>
try.c: 0x56351669cd70: i32 = Constant<0>
try.c: 0x56351669cd70: i32 = Constant<0>
try.c: 0x56351669cd70: i32 = Constant<0>
try.c: 0x56351669cd70: 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: 0x5610f40ea1e0: v4i64 = X86ISD::VTRUNC 0x5610f40ea0b0
try.c: 0x5610f40ea0b0: v16i32 = vselect 0x5610f40c6c40, 0x5610f40776e0, 0x5610f40e9f80
try.c: 0x5610f40c6c40: v4i1 = X86ISD::PCMPGTM 0x5610f40ce810, 0x5610f40ca3a0
try.c: 0x5610f40ce810: v4i64 = X86ISD::VBROADCAST 0x5610f4074880
try.c: 0x5610f4074880: i64,ch = load<LD8[%lsr.iv6971]> 0x5610f3fdf950, 0x5610f40c1650, undef:i64
try.c: 0x5610f40c1650: i64,ch = CopyFromReg 0x5610f3fdf950, Register:i64 %vreg50
try.c: 0x5610f40ca600: i64 = Register %vreg50
try.c: 0x5610f4075d50: i64 = undef
try.c: 0x5610f40ca3a0: v4i64,ch = CopyFromReg 0x5610f3fdf950, Register:v4i64 %vreg13
try.c: 0x5610f40cf060: v4i64 = Register %vreg13
try.c: 0x5610f40776e0: v16i32 = X86ISD::VBROADCAST 0x5610f40cea70
try.c: 0x5610f40cea70: i32,ch = load<LD4[ConstantPool]> 0x5610f3fdf950, 0x5610f4072d20, undef:i64
try.c: 0x5610f4072d20: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5610f4079bf0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5610f4075d50: i64 = undef
try.c: 0x5610f40e9f80: 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: 0x5610f40e9e50: i32 = Constant<0>
try.c: 0x5610f40e9e50: i32 = Constant<0>
try.c: 0x5610f40e9e50: i32 = Constant<0>
try.c: 0x5610f40e9e50: i32 = Constant<0>
try.c: 0x5610f40e9e50: i32 = Constant<0>
try.c: 0x5610f40e9e50: i32 = Constant<0>
try.c: 0x5610f40e9e50: i32 = Constant<0>
try.c: 0x5610f40e9e50: i32 = Constant<0>
try.c: 0x5610f40e9e50: 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