Implementation notes: amd64, cel02, crypto_kem/ledakemcpa13

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: ledakemcpa13
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
378867861377 231168 090149 232008 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
395387446737 231168 071036 231976 1624T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
467698443952 56 079026 872 1624T:portableoptclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
477785248842 231168 074501 232008 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
480613029984 231168 055701 232000 1656T:portableoptgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
686964448722 231168 074789 232008 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: 0x5586d5f5ead0: v4i64 = X86ISD::VTRUNC 0x5586d5f5e9a0
try.c: 0x5586d5f5e9a0: v16i32 = vselect 0x5586d5f773b0, 0x5586d5efe710, 0x5586d5f5e870
try.c: 0x5586d5f773b0: v4i1 = X86ISD::PCMPGTM 0x5586d5f56870, 0x5586d5f52400
try.c: 0x5586d5f56870: v4i64 = X86ISD::VBROADCAST 0x5586d5ef7920
try.c: 0x5586d5ef7920: i64,ch = load<LD8[%lsr.iv6971]> 0x5586d5e678e0, 0x5586d5f11890, undef:i64
try.c: 0x5586d5f11890: i64,ch = CopyFromReg 0x5586d5e678e0, Register:i64 %vreg50
try.c: 0x5586d5f52660: i64 = Register %vreg50
try.c: 0x5586d5efcd80: i64 = undef
try.c: 0x5586d5f52400: v4i64,ch = CopyFromReg 0x5586d5e678e0, Register:v4i64 %vreg13
try.c: 0x5586d5f570c0: v4i64 = Register %vreg13
try.c: 0x5586d5efe710: v16i32 = X86ISD::VBROADCAST 0x5586d5f56ad0
try.c: 0x5586d5f56ad0: i32,ch = load<LD4[ConstantPool]> 0x5586d5e678e0, 0x5586d5ef6f00, undef:i64
try.c: 0x5586d5ef6f00: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5586d5f40470: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5586d5efcd80: i64 = undef
try.c: 0x5586d5f5e870: 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: 0x5586d5f5e740: i32 = Constant<0>
try.c: 0x5586d5f5e740: i32 = Constant<0>
try.c: 0x5586d5f5e740: i32 = Constant<0>
try.c: 0x5586d5f5e740: i32 = Constant<0>
try.c: 0x5586d5f5e740: i32 = Constant<0>
try.c: 0x5586d5f5e740: i32 = Constant<0>
try.c: 0x5586d5f5e740: i32 = Constant<0>
try.c: 0x5586d5f5e740: i32 = Constant<0>
try.c: 0x5586d5f5e740: 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: 0x558d202ed120: v4i64 = X86ISD::VTRUNC 0x558d202ecff0
try.c: 0x558d202ecff0: v16i32 = vselect 0x558d202e7840, 0x558d20265aa0, 0x558d202ecec0
try.c: 0x558d202e7840: v4i1 = X86ISD::PCMPGTM 0x558d202c8fc0, 0x558d202c4b50
try.c: 0x558d202c8fc0: v4i64 = X86ISD::VBROADCAST 0x558d20265f60
try.c: 0x558d20265f60: i64,ch = load<LD8[%lsr.iv6971]> 0x558d201c2a30, 0x558d2025c2d0, undef:i64
try.c: 0x558d2025c2d0: i64,ch = CopyFromReg 0x558d201c2a30, Register:i64 %vreg50
try.c: 0x558d202c4db0: i64 = Register %vreg50
try.c: 0x558d20240240: i64 = undef
try.c: 0x558d202c4b50: v4i64,ch = CopyFromReg 0x558d201c2a30, Register:v4i64 %vreg13
try.c: 0x558d202c9810: v4i64 = Register %vreg13
try.c: 0x558d20265aa0: v16i32 = X86ISD::VBROADCAST 0x558d202c9220
try.c: 0x558d202c9220: i32,ch = load<LD4[ConstantPool]> 0x558d201c2a30, 0x558d20261600, undef:i64
try.c: 0x558d20261600: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x558d20240bc0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x558d20240240: i64 = undef
try.c: 0x558d202ecec0: 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: 0x558d202ecd90: i32 = Constant<0>
try.c: 0x558d202ecd90: i32 = Constant<0>
try.c: 0x558d202ecd90: i32 = Constant<0>
try.c: 0x558d202ecd90: i32 = Constant<0>
try.c: 0x558d202ecd90: i32 = Constant<0>
try.c: 0x558d202ecd90: i32 = Constant<0>
try.c: 0x558d202ecd90: i32 = Constant<0>
try.c: 0x558d202ecd90: i32 = Constant<0>
try.c: 0x558d202ecd90: 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: 0x55b79ce1fc80: v4i64 = X86ISD::VTRUNC 0x55b79ce1fb50
try.c: 0x55b79ce1fb50: v16i32 = vselect 0x55b79ce1c660, 0x55b79cdbe4a0, 0x55b79ce1fa20
try.c: 0x55b79ce1c660: v4i1 = X86ISD::PCMPGTM 0x55b79ce18110, 0x55b79ce13ca0
try.c: 0x55b79ce18110: v4i64 = X86ISD::VBROADCAST 0x55b79cdbb000
try.c: 0x55b79cdbb000: i64,ch = load<LD8[%lsr.iv6971]> 0x55b79cd28940, 0x55b79cdff650, undef:i64
try.c: 0x55b79cdff650: i64,ch = CopyFromReg 0x55b79cd28940, Register:i64 %vreg50
try.c: 0x55b79ce13f00: i64 = Register %vreg50
try.c: 0x55b79cdbc4d0: i64 = undef
try.c: 0x55b79ce13ca0: v4i64,ch = CopyFromReg 0x55b79cd28940, Register:v4i64 %vreg13
try.c: 0x55b79ce18960: v4i64 = Register %vreg13
try.c: 0x55b79cdbe4a0: v16i32 = X86ISD::VBROADCAST 0x55b79ce18370
try.c: 0x55b79ce18370: i32,ch = load<LD4[ConstantPool]> 0x55b79cd28940, 0x55b79cdba5e0, undef:i64
try.c: 0x55b79cdba5e0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55b79cdddc10: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55b79cdbc4d0: i64 = undef
try.c: 0x55b79ce1fa20: 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: 0x55b79ce1f8f0: i32 = Constant<0>
try.c: 0x55b79ce1f8f0: i32 = Constant<0>
try.c: 0x55b79ce1f8f0: i32 = Constant<0>
try.c: 0x55b79ce1f8f0: i32 = Constant<0>
try.c: 0x55b79ce1f8f0: i32 = Constant<0>
try.c: 0x55b79ce1f8f0: i32 = Constant<0>
try.c: 0x55b79ce1f8f0: i32 = Constant<0>
try.c: 0x55b79ce1f8f0: i32 = Constant<0>
try.c: 0x55b79ce1f8f0: 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