Implementation notes: amd64, cel02, crypto_kem/ntrulpr653

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: ntrulpr653
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
24788812245 0 077749 896 1640T:factoredgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2767882305 0 063188 864 1576T:factoredclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2859225434 0 068010 872 1576T:factoredclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2998402158 0 064157 896 1608T:factoredgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3130982077 0 062813 888 1576T:factoredgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3368962359 0 064725 896 1608T:factoredgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
14344993412132 0 050186 872 1576T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
15203986217893 0 058949 896 1640T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1911223665448 0 042973 896 1608T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1916167245734 0 043645 896 1608T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1967140965016 0 041436 864 1576T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2284196445050 0 041373 888 1576T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:factored
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: 0x55ce70089330: v4i64 = X86ISD::VTRUNC 0x55ce70089200
try.c: 0x55ce70089200: v16i32 = vselect 0x55ce70085d10, 0x55ce7003cdf0, 0x55ce700890d0
try.c: 0x55ce70085d10: v4i1 = X86ISD::PCMPGTM 0x55ce7006e9a0, 0x55ce7006a530
try.c: 0x55ce7006e9a0: v4i64 = X86ISD::VBROADCAST 0x55ce70039f90
try.c: 0x55ce70039f90: i64,ch = load<LD8[%lsr.iv6971]> 0x55ce6ff7f950, 0x55ce70065390, undef:i64
try.c: 0x55ce70065390: i64,ch = CopyFromReg 0x55ce6ff7f950, Register:i64 %vreg50
try.c: 0x55ce7006a790: i64 = Register %vreg50
try.c: 0x55ce7003b460: i64 = undef
try.c: 0x55ce7006a530: v4i64,ch = CopyFromReg 0x55ce6ff7f950, Register:v4i64 %vreg13
try.c: 0x55ce7006f1f0: v4i64 = Register %vreg13
try.c: 0x55ce7003cdf0: v16i32 = X86ISD::VBROADCAST 0x55ce7006ec00
try.c: 0x55ce7006ec00: i32,ch = load<LD4[ConstantPool]> 0x55ce6ff7f950, 0x55ce70012e90, undef:i64
try.c: 0x55ce70012e90: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55ce7004f100: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55ce7003b460: i64 = undef
try.c: 0x55ce700890d0: 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: 0x55ce70088fa0: i32 = Constant<0>
try.c: 0x55ce70088fa0: i32 = Constant<0>
try.c: 0x55ce70088fa0: i32 = Constant<0>
try.c: 0x55ce70088fa0: i32 = Constant<0>
try.c: 0x55ce70088fa0: i32 = Constant<0>
try.c: 0x55ce70088fa0: i32 = Constant<0>
try.c: 0x55ce70088fa0: i32 = Constant<0>
try.c: 0x55ce70088fa0: i32 = Constant<0>
try.c: 0x55ce70088fa0: 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:factored

Compiler output

Implementation: T:factored
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: 0x55e05e74e7c0: v4i64 = X86ISD::VTRUNC 0x55e05e74e690
try.c: 0x55e05e74e690: v16i32 = vselect 0x55e05e75d170, 0x55e05e6ec3b0, 0x55e05e74e560
try.c: 0x55e05e75d170: v4i1 = X86ISD::PCMPGTM 0x55e05e743f70, 0x55e05e73f4f0
try.c: 0x55e05e743f70: v4i64 = X86ISD::VBROADCAST 0x55e05e6ec870
try.c: 0x55e05e6ec870: i64,ch = load<LD8[%lsr.iv6971]> 0x55e05e63da30, 0x55e05e6f2920, undef:i64
try.c: 0x55e05e6f2920: i64,ch = CopyFromReg 0x55e05e63da30, Register:i64 %vreg50
try.c: 0x55e05e73f750: i64 = Register %vreg50
try.c: 0x55e05e6db240: i64 = undef
try.c: 0x55e05e73f4f0: v4i64,ch = CopyFromReg 0x55e05e63da30, Register:v4i64 %vreg13
try.c: 0x55e05e7447c0: v4i64 = Register %vreg13
try.c: 0x55e05e6ec3b0: v16i32 = X86ISD::VBROADCAST 0x55e05e7441d0
try.c: 0x55e05e7441d0: i32,ch = load<LD4[ConstantPool]> 0x55e05e63da30, 0x55e05e6eed50, undef:i64
try.c: 0x55e05e6eed50: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55e05e6dbbc0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55e05e6db240: i64 = undef
try.c: 0x55e05e74e560: 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: 0x55e05e74e430: i32 = Constant<0>
try.c: 0x55e05e74e430: i32 = Constant<0>
try.c: 0x55e05e74e430: i32 = Constant<0>
try.c: 0x55e05e74e430: i32 = Constant<0>
try.c: 0x55e05e74e430: i32 = Constant<0>
try.c: 0x55e05e74e430: i32 = Constant<0>
try.c: 0x55e05e74e430: i32 = Constant<0>
try.c: 0x55e05e74e430: i32 = Constant<0>
try.c: 0x55e05e74e430: 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:factored

Compiler output

Implementation: T:factored
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: 0x555eb762fc90: v4i64 = X86ISD::VTRUNC 0x555eb762fb60
try.c: 0x555eb762fb60: v16i32 = vselect 0x555eb762aaa0, 0x555eb75c7de0, 0x555eb762fa30
try.c: 0x555eb762aaa0: v4i1 = X86ISD::PCMPGTM 0x555eb7627a70, 0x555eb7623600
try.c: 0x555eb7627a70: v4i64 = X86ISD::VBROADCAST 0x555eb75d5970
try.c: 0x555eb75d5970: i64,ch = load<LD8[%lsr.iv6971]> 0x555eb7538950, 0x555eb760e450, undef:i64
try.c: 0x555eb760e450: i64,ch = CopyFromReg 0x555eb7538950, Register:i64 %vreg50
try.c: 0x555eb7623860: i64 = Register %vreg50
try.c: 0x555eb75d6e40: i64 = undef
try.c: 0x555eb7623600: v4i64,ch = CopyFromReg 0x555eb7538950, Register:v4i64 %vreg13
try.c: 0x555eb76282c0: v4i64 = Register %vreg13
try.c: 0x555eb75c7de0: v16i32 = X86ISD::VBROADCAST 0x555eb7627cd0
try.c: 0x555eb7627cd0: i32,ch = load<LD4[ConstantPool]> 0x555eb7538950, 0x555eb75cc1c0, undef:i64
try.c: 0x555eb75cc1c0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x555eb760ce60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x555eb75d6e40: i64 = undef
try.c: 0x555eb762fa30: 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: 0x555eb762f900: i32 = Constant<0>
try.c: 0x555eb762f900: i32 = Constant<0>
try.c: 0x555eb762f900: i32 = Constant<0>
try.c: 0x555eb762f900: i32 = Constant<0>
try.c: 0x555eb762f900: i32 = Constant<0>
try.c: 0x555eb762f900: i32 = Constant<0>
try.c: 0x555eb762f900: i32 = Constant<0>
try.c: 0x555eb762f900: i32 = Constant<0>
try.c: 0x555eb762f900: 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:factored

Compiler output

Implementation: T:ref
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: 0x5641385681a0: v4i64 = X86ISD::VTRUNC 0x564138568070
try.c: 0x564138568070: v16i32 = vselect 0x564138554480, 0x5641384fa7f0, 0x564138567f40
try.c: 0x564138554480: v4i1 = X86ISD::PCMPGTM 0x56413854d820, 0x5641385493b0
try.c: 0x56413854d820: v4i64 = X86ISD::VBROADCAST 0x5641384f5e50
try.c: 0x5641384f5e50: i64,ch = load<LD8[%lsr.iv6971]> 0x56413845e950, 0x56413853b1f0, undef:i64
try.c: 0x56413853b1f0: i64,ch = CopyFromReg 0x56413845e950, Register:i64 %vreg50
try.c: 0x564138549610: i64 = Register %vreg50
try.c: 0x5641384f8e60: i64 = undef
try.c: 0x5641385493b0: v4i64,ch = CopyFromReg 0x56413845e950, Register:v4i64 %vreg13
try.c: 0x56413854e070: v4i64 = Register %vreg13
try.c: 0x5641384fa7f0: v16i32 = X86ISD::VBROADCAST 0x56413854da80
try.c: 0x56413854da80: i32,ch = load<LD4[ConstantPool]> 0x56413845e950, 0x5641384f5430, undef:i64
try.c: 0x5641384f5430: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56413853be90: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5641384f8e60: i64 = undef
try.c: 0x564138567f40: 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: 0x564138567e10: i32 = Constant<0>
try.c: 0x564138567e10: i32 = Constant<0>
try.c: 0x564138567e10: i32 = Constant<0>
try.c: 0x564138567e10: i32 = Constant<0>
try.c: 0x564138567e10: i32 = Constant<0>
try.c: 0x564138567e10: i32 = Constant<0>
try.c: 0x564138567e10: i32 = Constant<0>
try.c: 0x564138567e10: i32 = Constant<0>
try.c: 0x564138567e10: 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:ref

Compiler output

Implementation: T:ref
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: 0x563f12ecbcf0: v4i64 = X86ISD::VTRUNC 0x563f12ecbbc0
try.c: 0x563f12ecbbc0: v16i32 = vselect 0x563f12ec66c0, 0x563f12e573a0, 0x563f12ecba90
try.c: 0x563f12ec66c0: v4i1 = X86ISD::PCMPGTM 0x563f12ec56b0, 0x563f12ec0a80
try.c: 0x563f12ec56b0: v4i64 = X86ISD::VBROADCAST 0x563f12e57860
try.c: 0x563f12e57860: i64,ch = load<LD8[%lsr.iv6971]> 0x563f12dbea30, 0x563f12e64610, undef:i64
try.c: 0x563f12e64610: i64,ch = CopyFromReg 0x563f12dbea30, Register:i64 %vreg50
try.c: 0x563f12ec0ce0: i64 = Register %vreg50
try.c: 0x563f12e6f0c0: i64 = undef
try.c: 0x563f12ec0a80: v4i64,ch = CopyFromReg 0x563f12dbea30, Register:v4i64 %vreg13
try.c: 0x563f12ec5f00: v4i64 = Register %vreg13
try.c: 0x563f12e573a0: v16i32 = X86ISD::VBROADCAST 0x563f12ec5910
try.c: 0x563f12ec5910: i32,ch = load<LD4[ConstantPool]> 0x563f12dbea30, 0x563f12e59d40, undef:i64
try.c: 0x563f12e59d40: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x563f12e6fa40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x563f12e6f0c0: i64 = undef
try.c: 0x563f12ecba90: 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: 0x563f12ecb960: i32 = Constant<0>
try.c: 0x563f12ecb960: i32 = Constant<0>
try.c: 0x563f12ecb960: i32 = Constant<0>
try.c: 0x563f12ecb960: i32 = Constant<0>
try.c: 0x563f12ecb960: i32 = Constant<0>
try.c: 0x563f12ecb960: i32 = Constant<0>
try.c: 0x563f12ecb960: i32 = Constant<0>
try.c: 0x563f12ecb960: i32 = Constant<0>
try.c: 0x563f12ecb960: 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:ref

Compiler output

Implementation: T:ref
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: 0x55894c3fd420: v4i64 = X86ISD::VTRUNC 0x55894c3fd2f0
try.c: 0x55894c3fd2f0: v16i32 = vselect 0x55894c3ee5a0, 0x55894c39bfa0, 0x55894c3fd1c0
try.c: 0x55894c3ee5a0: v4i1 = X86ISD::PCMPGTM 0x55894c3e2aa0, 0x55894c3de630
try.c: 0x55894c3e2aa0: v4i64 = X86ISD::VBROADCAST 0x55894c38ea60
try.c: 0x55894c38ea60: i64,ch = load<LD8[%lsr.iv6971]> 0x55894c2f3950, 0x55894c3d9490, undef:i64
try.c: 0x55894c3d9490: i64,ch = CopyFromReg 0x55894c2f3950, Register:i64 %vreg50
try.c: 0x55894c3de890: i64 = Register %vreg50
try.c: 0x55894c38ff30: i64 = undef
try.c: 0x55894c3de630: v4i64,ch = CopyFromReg 0x55894c2f3950, Register:v4i64 %vreg13
try.c: 0x55894c3e32f0: v4i64 = Register %vreg13
try.c: 0x55894c39bfa0: v16i32 = X86ISD::VBROADCAST 0x55894c3e2d00
try.c: 0x55894c3e2d00: i32,ch = load<LD4[ConstantPool]> 0x55894c2f3950, 0x55894c38e040, undef:i64
try.c: 0x55894c38e040: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55894c391f80: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55894c38ff30: i64 = undef
try.c: 0x55894c3fd1c0: 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: 0x55894c3fd090: i32 = Constant<0>
try.c: 0x55894c3fd090: i32 = Constant<0>
try.c: 0x55894c3fd090: i32 = Constant<0>
try.c: 0x55894c3fd090: i32 = Constant<0>
try.c: 0x55894c3fd090: i32 = Constant<0>
try.c: 0x55894c3fd090: i32 = Constant<0>
try.c: 0x55894c3fd090: i32 = Constant<0>
try.c: 0x55894c3fd090: i32 = Constant<0>
try.c: 0x55894c3fd090: 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:ref