Implementation notes: amd64, cel02, crypto_kem/ledakem5364

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: ledakem5364
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2784855649894 1366024 084604 1366824 1624T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
4698083481878 1366024 0121373 1366856 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
5622542249162 72 085666 880 1624T:portableoptclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
6355976652532 1366024 088781 1366856 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6505142052352 1366024 088125 1366856 1688T:portableoptgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
7106097032267 1366024 067053 1366848 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: 0x560db6fc3a30: v4i64 = X86ISD::VTRUNC 0x560db6fc3900
try.c: 0x560db6fc3900: v16i32 = vselect 0x560db6fd5aa0, 0x560db6f62ce0, 0x560db6fc37d0
try.c: 0x560db6fd5aa0: v4i1 = X86ISD::PCMPGTM 0x560db6fbaf10, 0x560db6fb6aa0
try.c: 0x560db6fbaf10: v4i64 = X86ISD::VBROADCAST 0x560db6f76130
try.c: 0x560db6f76130: i64,ch = load<LD8[%lsr.iv6971]> 0x560db6ecb930, 0x560db6fad350, undef:i64
try.c: 0x560db6fad350: i64,ch = CopyFromReg 0x560db6ecb930, Register:i64 %vreg50
try.c: 0x560db6fb6d00: i64 = Register %vreg50
try.c: 0x560db6f61350: i64 = undef
try.c: 0x560db6fb6aa0: v4i64,ch = CopyFromReg 0x560db6ecb930, Register:v4i64 %vreg13
try.c: 0x560db6fbb760: v4i64 = Register %vreg13
try.c: 0x560db6f62ce0: v16i32 = X86ISD::VBROADCAST 0x560db6fbb170
try.c: 0x560db6fbb170: i32,ch = load<LD4[ConstantPool]> 0x560db6ecb930, 0x560db6f75710, undef:i64
try.c: 0x560db6f75710: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x560db6f6a2a0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x560db6f61350: i64 = undef
try.c: 0x560db6fc37d0: 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: 0x560db6fc36a0: i32 = Constant<0>
try.c: 0x560db6fc36a0: i32 = Constant<0>
try.c: 0x560db6fc36a0: i32 = Constant<0>
try.c: 0x560db6fc36a0: i32 = Constant<0>
try.c: 0x560db6fc36a0: i32 = Constant<0>
try.c: 0x560db6fc36a0: i32 = Constant<0>
try.c: 0x560db6fc36a0: i32 = Constant<0>
try.c: 0x560db6fc36a0: i32 = Constant<0>
try.c: 0x560db6fc36a0: 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: 0x562f0ff5fd20: v4i64 = X86ISD::VTRUNC 0x562f0ff5fbf0
try.c: 0x562f0ff5fbf0: v16i32 = vselect 0x562f0ff5a6f0, 0x562f0fedff50, 0x562f0ff5fac0
try.c: 0x562f0ff5a6f0: v4i1 = X86ISD::PCMPGTM 0x562f0ff45520, 0x562f0ff412f0
try.c: 0x562f0ff45520: v4i64 = X86ISD::VBROADCAST 0x562f0fee0410
try.c: 0x562f0fee0410: i64,ch = load<LD8[%lsr.iv6971]> 0x562f0fe3fa30, 0x562f0feef040, undef:i64
try.c: 0x562f0feef040: i64,ch = CopyFromReg 0x562f0fe3fa30, Register:i64 %vreg50
try.c: 0x562f0ff41550: i64 = Register %vreg50
try.c: 0x562f0febc5d0: i64 = undef
try.c: 0x562f0ff412f0: v4i64,ch = CopyFromReg 0x562f0fe3fa30, Register:v4i64 %vreg13
try.c: 0x562f0ff45d70: v4i64 = Register %vreg13
try.c: 0x562f0fedff50: v16i32 = X86ISD::VBROADCAST 0x562f0ff45780
try.c: 0x562f0ff45780: i32,ch = load<LD4[ConstantPool]> 0x562f0fe3fa30, 0x562f0fee28f0, undef:i64
try.c: 0x562f0fee28f0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x562f0febcf50: i64 = TargetConstantPool<i32 1> 0
try.c: 0x562f0febc5d0: i64 = undef
try.c: 0x562f0ff5fac0: 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: 0x562f0ff5f990: i32 = Constant<0>
try.c: 0x562f0ff5f990: i32 = Constant<0>
try.c: 0x562f0ff5f990: i32 = Constant<0>
try.c: 0x562f0ff5f990: i32 = Constant<0>
try.c: 0x562f0ff5f990: i32 = Constant<0>
try.c: 0x562f0ff5f990: i32 = Constant<0>
try.c: 0x562f0ff5f990: i32 = Constant<0>
try.c: 0x562f0ff5f990: i32 = Constant<0>
try.c: 0x562f0ff5f990: 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: 0x565491896f20: v4i64 = X86ISD::VTRUNC 0x565491896df0
try.c: 0x565491896df0: v16i32 = vselect 0x5654918918f0, 0x565491835880, 0x565491896cc0
try.c: 0x5654918918f0: v4i1 = X86ISD::PCMPGTM 0x5654918908e0, 0x56549188c470
try.c: 0x5654918908e0: v4i64 = X86ISD::VBROADCAST 0x56549184b3f0
try.c: 0x56549184b3f0: i64,ch = load<LD8[%lsr.iv6971]> 0x5654917a1950, 0x5654918838f0, undef:i64
try.c: 0x5654918838f0: i64,ch = CopyFromReg 0x5654917a1950, Register:i64 %vreg50
try.c: 0x56549188c6d0: i64 = Register %vreg50
try.c: 0x565491833ef0: i64 = undef
try.c: 0x56549188c470: v4i64,ch = CopyFromReg 0x5654917a1950, Register:v4i64 %vreg13
try.c: 0x565491891130: v4i64 = Register %vreg13
try.c: 0x565491835880: v16i32 = X86ISD::VBROADCAST 0x565491890b40
try.c: 0x565491890b40: i32,ch = load<LD4[ConstantPool]> 0x5654917a1950, 0x56549184a9d0, undef:i64
try.c: 0x56549184a9d0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56549187a3b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x565491833ef0: i64 = undef
try.c: 0x565491896cc0: 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: 0x565491896b90: i32 = Constant<0>
try.c: 0x565491896b90: i32 = Constant<0>
try.c: 0x565491896b90: i32 = Constant<0>
try.c: 0x565491896b90: i32 = Constant<0>
try.c: 0x565491896b90: i32 = Constant<0>
try.c: 0x565491896b90: i32 = Constant<0>
try.c: 0x565491896b90: i32 = Constant<0>
try.c: 0x565491896b90: i32 = Constant<0>
try.c: 0x565491896b90: 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