Implementation notes: amd64, cel02, crypto_kem/sntrup4591761

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: sntrup4591761
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
13078041479 0 075908 840 1608T:avxgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
18983641452 0 076284 840 1608T:avxgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
19000641452 0 076653 816 1576T:avxclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
19765841452 0 074668 832 1576T:avxgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
19769841452 0 074743 808 1576T:avxclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
22050441452 0 079436 840 1640T:avxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
428827049011 0 045500 840 1608T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
440501047204 0 042079 808 1576T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
4420894435863 0 075598 848 1640T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
4426222216426 0 053069 816 1576T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
445042546313 0 041212 832 1576T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
479683688608 0 044620 840 1608T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:avx
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: 0x564ce43cce80: v4i64 = X86ISD::VTRUNC 0x564ce43ccd50
try.c: 0x564ce43ccd50: v16i32 = vselect 0x564ce4387090, 0x564ce4372430, 0x564ce43ccc20
try.c: 0x564ce4387090: v4i1 = X86ISD::PCMPGTM 0x564ce43c8860, 0x564ce43c43f0
try.c: 0x564ce43c8860: v4i64 = X86ISD::VBROADCAST 0x564ce436d970
try.c: 0x564ce436d970: i64,ch = load<LD8[%lsr.iv6971]> 0x564ce42d9950, 0x564ce43b62a0, undef:i64
try.c: 0x564ce43b62a0: i64,ch = CopyFromReg 0x564ce42d9950, Register:i64 %vreg50
try.c: 0x564ce43c4650: i64 = Register %vreg50
try.c: 0x564ce4370aa0: i64 = undef
try.c: 0x564ce43c43f0: v4i64,ch = CopyFromReg 0x564ce42d9950, Register:v4i64 %vreg13
try.c: 0x564ce43c90b0: v4i64 = Register %vreg13
try.c: 0x564ce4372430: v16i32 = X86ISD::VBROADCAST 0x564ce43c8ac0
try.c: 0x564ce43c8ac0: i32,ch = load<LD4[ConstantPool]> 0x564ce42d9950, 0x564ce436cf50, undef:i64
try.c: 0x564ce436cf50: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x564ce43b7140: i64 = TargetConstantPool<i32 1> 0
try.c: 0x564ce4370aa0: i64 = undef
try.c: 0x564ce43ccc20: 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: 0x564ce43ccaf0: i32 = Constant<0>
try.c: 0x564ce43ccaf0: i32 = Constant<0>
try.c: 0x564ce43ccaf0: i32 = Constant<0>
try.c: 0x564ce43ccaf0: i32 = Constant<0>
try.c: 0x564ce43ccaf0: i32 = Constant<0>
try.c: 0x564ce43ccaf0: i32 = Constant<0>
try.c: 0x564ce43ccaf0: i32 = Constant<0>
try.c: 0x564ce43ccaf0: i32 = Constant<0>
try.c: 0x564ce43ccaf0: 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:avx

Compiler output

Implementation: T:avx
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: 0x560a715badb0: v4i64 = X86ISD::VTRUNC 0x560a715bac80
try.c: 0x560a715bac80: v16i32 = vselect 0x560a715d40e0, 0x560a71556b60, 0x560a715bab50
try.c: 0x560a715d40e0: v4i1 = X86ISD::PCMPGTM 0x560a715b5780, 0x560a715b0b50
try.c: 0x560a715b5780: v4i64 = X86ISD::VBROADCAST 0x560a71557020
try.c: 0x560a71557020: i64,ch = load<LD8[%lsr.iv6971]> 0x560a714aea30, 0x560a715613e0, undef:i64
try.c: 0x560a715613e0: i64,ch = CopyFromReg 0x560a714aea30, Register:i64 %vreg50
try.c: 0x560a715b0db0: i64 = Register %vreg50
try.c: 0x560a715525c0: i64 = undef
try.c: 0x560a715b0b50: v4i64,ch = CopyFromReg 0x560a714aea30, Register:v4i64 %vreg13
try.c: 0x560a715b5fd0: v4i64 = Register %vreg13
try.c: 0x560a71556b60: v16i32 = X86ISD::VBROADCAST 0x560a715b59e0
try.c: 0x560a715b59e0: i32,ch = load<LD4[ConstantPool]> 0x560a714aea30, 0x560a7155f9b0, undef:i64
try.c: 0x560a7155f9b0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x560a71552f40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x560a715525c0: i64 = undef
try.c: 0x560a715bab50: 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: 0x560a715baa20: i32 = Constant<0>
try.c: 0x560a715baa20: i32 = Constant<0>
try.c: 0x560a715baa20: i32 = Constant<0>
try.c: 0x560a715baa20: i32 = Constant<0>
try.c: 0x560a715baa20: i32 = Constant<0>
try.c: 0x560a715baa20: i32 = Constant<0>
try.c: 0x560a715baa20: i32 = Constant<0>
try.c: 0x560a715baa20: i32 = Constant<0>
try.c: 0x560a715baa20: 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:avx

Compiler output

Implementation: T:avx
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: 0x55c0b481f9d0: v4i64 = X86ISD::VTRUNC 0x55c0b481f8a0
try.c: 0x55c0b481f8a0: v16i32 = vselect 0x55c0b4812cd0, 0x55c0b47c2590, 0x55c0b481f770
try.c: 0x55c0b4812cd0: v4i1 = X86ISD::PCMPGTM 0x55c0b481a8a0, 0x55c0b4816430
try.c: 0x55c0b481a8a0: v4i64 = X86ISD::VBROADCAST 0x55c0b47d53b0
try.c: 0x55c0b47d53b0: i64,ch = load<LD8[%lsr.iv6971]> 0x55c0b472b940, 0x55c0b480a8c0, undef:i64
try.c: 0x55c0b480a8c0: i64,ch = CopyFromReg 0x55c0b472b940, Register:i64 %vreg50
try.c: 0x55c0b4816690: i64 = Register %vreg50
try.c: 0x55c0b47c0c00: i64 = undef
try.c: 0x55c0b4816430: v4i64,ch = CopyFromReg 0x55c0b472b940, Register:v4i64 %vreg13
try.c: 0x55c0b481b0f0: v4i64 = Register %vreg13
try.c: 0x55c0b47c2590: v16i32 = X86ISD::VBROADCAST 0x55c0b481ab00
try.c: 0x55c0b481ab00: i32,ch = load<LD4[ConstantPool]> 0x55c0b472b940, 0x55c0b47d4990, undef:i64
try.c: 0x55c0b47d4990: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55c0b47ff6b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55c0b47c0c00: i64 = undef
try.c: 0x55c0b481f770: 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: 0x55c0b481f640: i32 = Constant<0>
try.c: 0x55c0b481f640: i32 = Constant<0>
try.c: 0x55c0b481f640: i32 = Constant<0>
try.c: 0x55c0b481f640: i32 = Constant<0>
try.c: 0x55c0b481f640: i32 = Constant<0>
try.c: 0x55c0b481f640: i32 = Constant<0>
try.c: 0x55c0b481f640: i32 = Constant<0>
try.c: 0x55c0b481f640: i32 = Constant<0>
try.c: 0x55c0b481f640: 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:avx

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: 0x561533802040: v4i64 = X86ISD::VTRUNC 0x561533801f10
try.c: 0x561533801f10: v16i32 = vselect 0x5615338065e0, 0x5615337b7d90, 0x561533801de0
try.c: 0x5615338065e0: v4i1 = X86ISD::PCMPGTM 0x5615337ea6e0, 0x5615337e6270
try.c: 0x5615337ea6e0: v4i64 = X86ISD::VBROADCAST 0x5615337a5f40
try.c: 0x5615337a5f40: i64,ch = load<LD8[%lsr.iv6971]> 0x5615336fb950, 0x5615337ddca0, undef:i64
try.c: 0x5615337ddca0: i64,ch = CopyFromReg 0x5615336fb950, Register:i64 %vreg50
try.c: 0x5615337e64d0: i64 = Register %vreg50
try.c: 0x5615337b6400: i64 = undef
try.c: 0x5615337e6270: v4i64,ch = CopyFromReg 0x5615336fb950, Register:v4i64 %vreg13
try.c: 0x5615337eaf30: v4i64 = Register %vreg13
try.c: 0x5615337b7d90: v16i32 = X86ISD::VBROADCAST 0x5615337ea940
try.c: 0x5615337ea940: i32,ch = load<LD4[ConstantPool]> 0x5615336fb950, 0x5615337a5520, undef:i64
try.c: 0x5615337a5520: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5615337d45d0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5615337b6400: i64 = undef
try.c: 0x561533801de0: 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: 0x561533801cb0: i32 = Constant<0>
try.c: 0x561533801cb0: i32 = Constant<0>
try.c: 0x561533801cb0: i32 = Constant<0>
try.c: 0x561533801cb0: i32 = Constant<0>
try.c: 0x561533801cb0: i32 = Constant<0>
try.c: 0x561533801cb0: i32 = Constant<0>
try.c: 0x561533801cb0: i32 = Constant<0>
try.c: 0x561533801cb0: i32 = Constant<0>
try.c: 0x561533801cb0: 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: 0x55dc6b524c80: v4i64 = X86ISD::VTRUNC 0x55dc6b524b50
try.c: 0x55dc6b524b50: v16i32 = vselect 0x55dc6b514710, 0x55dc6b49f350, 0x55dc6b524a20
try.c: 0x55dc6b514710: v4i1 = X86ISD::PCMPGTM 0x55dc6b50ba90, 0x55dc6b508630
try.c: 0x55dc6b50ba90: v4i64 = X86ISD::VBROADCAST 0x55dc6b49f810
try.c: 0x55dc6b49f810: i64,ch = load<LD8[%lsr.iv6971]> 0x55dc6b405a30, 0x55dc6b4b8ff0, undef:i64
try.c: 0x55dc6b4b8ff0: i64,ch = CopyFromReg 0x55dc6b405a30, Register:i64 %vreg50
try.c: 0x55dc6b508890: i64 = Register %vreg50
try.c: 0x55dc6b4b5280: i64 = undef
try.c: 0x55dc6b508630: v4i64,ch = CopyFromReg 0x55dc6b405a30, Register:v4i64 %vreg13
try.c: 0x55dc6b50c2e0: v4i64 = Register %vreg13
try.c: 0x55dc6b49f350: v16i32 = X86ISD::VBROADCAST 0x55dc6b50bcf0
try.c: 0x55dc6b50bcf0: i32,ch = load<LD4[ConstantPool]> 0x55dc6b405a30, 0x55dc6b4a1cf0, undef:i64
try.c: 0x55dc6b4a1cf0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55dc6b4b5c00: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55dc6b4b5280: i64 = undef
try.c: 0x55dc6b524a20: 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: 0x55dc6b5248f0: i32 = Constant<0>
try.c: 0x55dc6b5248f0: i32 = Constant<0>
try.c: 0x55dc6b5248f0: i32 = Constant<0>
try.c: 0x55dc6b5248f0: i32 = Constant<0>
try.c: 0x55dc6b5248f0: i32 = Constant<0>
try.c: 0x55dc6b5248f0: i32 = Constant<0>
try.c: 0x55dc6b5248f0: i32 = Constant<0>
try.c: 0x55dc6b5248f0: i32 = Constant<0>
try.c: 0x55dc6b5248f0: 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: 0x55e355ea0460: v4i64 = X86ISD::VTRUNC 0x55e355ea0330
try.c: 0x55e355ea0330: v16i32 = vselect 0x55e355e80f30, 0x55e355e51ea0, 0x55e355ea0200
try.c: 0x55e355e80f30: v4i1 = X86ISD::PCMPGTM 0x55e355e88b00, 0x55e355e84690
try.c: 0x55e355e88b00: v4i64 = X86ISD::VBROADCAST 0x55e355e2cba0
try.c: 0x55e355e2cba0: i64,ch = load<LD8[%lsr.iv6971]> 0x55e355d99950, 0x55e355e7bb20, undef:i64
try.c: 0x55e355e7bb20: i64,ch = CopyFromReg 0x55e355d99950, Register:i64 %vreg50
try.c: 0x55e355e848f0: i64 = Register %vreg50
try.c: 0x55e355e50510: i64 = undef
try.c: 0x55e355e84690: v4i64,ch = CopyFromReg 0x55e355d99950, Register:v4i64 %vreg13
try.c: 0x55e355e89350: v4i64 = Register %vreg13
try.c: 0x55e355e51ea0: v16i32 = X86ISD::VBROADCAST 0x55e355e88d60
try.c: 0x55e355e88d60: i32,ch = load<LD4[ConstantPool]> 0x55e355d99950, 0x55e355e2c180, undef:i64
try.c: 0x55e355e2c180: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55e355df5d60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55e355e50510: i64 = undef
try.c: 0x55e355ea0200: 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: 0x55e355ea00d0: i32 = Constant<0>
try.c: 0x55e355ea00d0: i32 = Constant<0>
try.c: 0x55e355ea00d0: i32 = Constant<0>
try.c: 0x55e355ea00d0: i32 = Constant<0>
try.c: 0x55e355ea00d0: i32 = Constant<0>
try.c: 0x55e355ea00d0: i32 = Constant<0>
try.c: 0x55e355ea00d0: i32 = Constant<0>
try.c: 0x55e355ea00d0: i32 = Constant<0>
try.c: 0x55e355ea00d0: 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