Implementation notes: amd64, cel02, crypto_kem/ledakemcpa32

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: ledakemcpa32
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
645131246649 631680 070908 632488 1624T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
1283332042834 60 077930 880 1624T:portableoptclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
1335734048684 631680 074301 632520 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1431618264193 631680 092925 632520 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1914300648569 631680 074573 632520 1688T:portableoptgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2004130229806 631680 055493 632512 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: 0x55a6dd65bab0: v4i64 = X86ISD::VTRUNC 0x55a6dd65b980
try.c: 0x55a6dd65b980: v16i32 = vselect 0x55a6dd64b8b0, 0x55a6dd5ec300, 0x55a6dd65b850
try.c: 0x55a6dd64b8b0: v4i1 = X86ISD::PCMPGTM 0x55a6dd640ca0, 0x55a6dd63c070
try.c: 0x55a6dd640ca0: v4i64 = X86ISD::VBROADCAST 0x55a6dd5de6e0
try.c: 0x55a6dd5de6e0: i64,ch = load<LD8[%lsr.iv6971]> 0x55a6dd551950, 0x55a6dd627d90, undef:i64
try.c: 0x55a6dd627d90: i64,ch = CopyFromReg 0x55a6dd551950, Register:i64 %vreg50
try.c: 0x55a6dd63c2d0: i64 = Register %vreg50
try.c: 0x55a6dd5dfbb0: i64 = undef
try.c: 0x55a6dd63c070: v4i64,ch = CopyFromReg 0x55a6dd551950, Register:v4i64 %vreg13
try.c: 0x55a6dd6414f0: v4i64 = Register %vreg13
try.c: 0x55a6dd5ec300: v16i32 = X86ISD::VBROADCAST 0x55a6dd640f00
try.c: 0x55a6dd640f00: i32,ch = load<LD4[ConstantPool]> 0x55a6dd551950, 0x55a6dd5ddcc0, undef:i64
try.c: 0x55a6dd5ddcc0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55a6dd633ca0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55a6dd5dfbb0: i64 = undef
try.c: 0x55a6dd65b850: 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: 0x55a6dd65b720: i32 = Constant<0>
try.c: 0x55a6dd65b720: i32 = Constant<0>
try.c: 0x55a6dd65b720: i32 = Constant<0>
try.c: 0x55a6dd65b720: i32 = Constant<0>
try.c: 0x55a6dd65b720: i32 = Constant<0>
try.c: 0x55a6dd65b720: i32 = Constant<0>
try.c: 0x55a6dd65b720: i32 = Constant<0>
try.c: 0x55a6dd65b720: i32 = Constant<0>
try.c: 0x55a6dd65b720: 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: 0x558d2d3919e0: v4i64 = X86ISD::VTRUNC 0x558d2d3918b0
try.c: 0x558d2d3918b0: v16i32 = vselect 0x558d2d3715c0, 0x558d2d31a870, 0x558d2d391780
try.c: 0x558d2d3715c0: v4i1 = X86ISD::PCMPGTM 0x558d2d36cdd0, 0x558d2d36a0e0
try.c: 0x558d2d36cdd0: v4i64 = X86ISD::VBROADCAST 0x558d2d31ad30
try.c: 0x558d2d31ad30: i64,ch = load<LD8[%lsr.iv6971]> 0x558d2d267a30, 0x558d2d302380, undef:i64
try.c: 0x558d2d302380: i64,ch = CopyFromReg 0x558d2d267a30, Register:i64 %vreg50
try.c: 0x558d2d36a340: i64 = Register %vreg50
try.c: 0x558d2d30abc0: i64 = undef
try.c: 0x558d2d36a0e0: v4i64,ch = CopyFromReg 0x558d2d267a30, Register:v4i64 %vreg13
try.c: 0x558d2d36d620: v4i64 = Register %vreg13
try.c: 0x558d2d31a870: v16i32 = X86ISD::VBROADCAST 0x558d2d36d030
try.c: 0x558d2d36d030: i32,ch = load<LD4[ConstantPool]> 0x558d2d267a30, 0x558d2d3065c0, undef:i64
try.c: 0x558d2d3065c0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x558d2d30b540: i64 = TargetConstantPool<i32 1> 0
try.c: 0x558d2d30abc0: i64 = undef
try.c: 0x558d2d391780: 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: 0x558d2d391650: i32 = Constant<0>
try.c: 0x558d2d391650: i32 = Constant<0>
try.c: 0x558d2d391650: i32 = Constant<0>
try.c: 0x558d2d391650: i32 = Constant<0>
try.c: 0x558d2d391650: i32 = Constant<0>
try.c: 0x558d2d391650: i32 = Constant<0>
try.c: 0x558d2d391650: i32 = Constant<0>
try.c: 0x558d2d391650: i32 = Constant<0>
try.c: 0x558d2d391650: 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: 0x55fa0b0e60f0: v4i64 = X86ISD::VTRUNC 0x55fa0b0e5fc0
try.c: 0x55fa0b0e5fc0: v16i32 = vselect 0x55fa0b0ed460, 0x55fa0b095da0, 0x55fa0b0e5e90
try.c: 0x55fa0b0ed460: v4i1 = X86ISD::PCMPGTM 0x55fa0b0cc930, 0x55fa0b0c84c0
try.c: 0x55fa0b0cc930: v4i64 = X86ISD::VBROADCAST 0x55fa0b0728b0
try.c: 0x55fa0b0728b0: i64,ch = load<LD8[%lsr.iv6971]> 0x55fa0afdd9a0, 0x55fa0b0c3320, undef:i64
try.c: 0x55fa0b0c3320: i64,ch = CopyFromReg 0x55fa0afdd9a0, Register:i64 %vreg50
try.c: 0x55fa0b0c8720: i64 = Register %vreg50
try.c: 0x55fa0b073d80: i64 = undef
try.c: 0x55fa0b0c84c0: v4i64,ch = CopyFromReg 0x55fa0afdd9a0, Register:v4i64 %vreg13
try.c: 0x55fa0b0cd180: v4i64 = Register %vreg13
try.c: 0x55fa0b095da0: v16i32 = X86ISD::VBROADCAST 0x55fa0b0ccb90
try.c: 0x55fa0b0ccb90: i32,ch = load<LD4[ConstantPool]> 0x55fa0afdd9a0, 0x55fa0b070d00, undef:i64
try.c: 0x55fa0b070d00: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55fa0b0923c0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55fa0b073d80: i64 = undef
try.c: 0x55fa0b0e5e90: 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: 0x55fa0b0e5d60: i32 = Constant<0>
try.c: 0x55fa0b0e5d60: i32 = Constant<0>
try.c: 0x55fa0b0e5d60: i32 = Constant<0>
try.c: 0x55fa0b0e5d60: i32 = Constant<0>
try.c: 0x55fa0b0e5d60: i32 = Constant<0>
try.c: 0x55fa0b0e5d60: i32 = Constant<0>
try.c: 0x55fa0b0e5d60: i32 = Constant<0>
try.c: 0x55fa0b0e5d60: i32 = Constant<0>
try.c: 0x55fa0b0e5d60: 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