Implementation notes: amd64, cel02, crypto_sign/tts6440

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_sign
Primitive: tts6440
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
14485817778 0 043692 864 1576T:refclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
14879819798 0 047405 896 1672T:refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
15055019068 0 046205 896 1672T:refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
18140015025 0 041293 888 1640T:refg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Test failure

Implementation: T:ref
Security model: timingleaks
Compiler: g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111
crypto_sign_open returns nonzero

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.cpp: fatal error: error in backend: Cannot select: 0x5624b2a77db0: v4i64 = X86ISD::VTRUNC 0x5624b2a77c80
try.cpp: 0x5624b2a77c80: v16i32 = vselect 0x5624b2a98ee0, 0x5624b2a257e0, 0x5624b2a77b50
try.cpp: 0x5624b2a98ee0: v4i1 = X86ISD::PCMPGTM 0x5624b2a74790, 0x5624b2a70560
try.cpp: 0x5624b2a74790: v4i64 = X86ISD::VBROADCAST 0x5624b2a185d0
try.cpp: 0x5624b2a185d0: i64,ch = load<LD8[%lsr.iv6971]> 0x5624b29849a0, 0x5624b2a1c500, undef:i64
try.cpp: 0x5624b2a1c500: i64,ch = CopyFromReg 0x5624b29849a0, Register:i64 %vreg50
try.cpp: 0x5624b2a707c0: i64 = Register %vreg50
try.cpp: 0x5624b2a23e50: i64 = undef
try.cpp: 0x5624b2a70560: v4i64,ch = CopyFromReg 0x5624b29849a0, Register:v4i64 %vreg13
try.cpp: 0x5624b2a74fe0: v4i64 = Register %vreg13
try.cpp: 0x5624b2a257e0: v16i32 = X86ISD::VBROADCAST 0x5624b2a749f0
try.cpp: 0x5624b2a749f0: i32,ch = load<LD4[ConstantPool]> 0x5624b29849a0, 0x5624b2a17bb0, undef:i64
try.cpp: 0x5624b2a17bb0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x5624b2a6dc50: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x5624b2a23e50: i64 = undef
try.cpp: 0x5624b2a77b50: 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.cpp: 0x5624b2a77a20: i32 = Constant<0>
try.cpp: 0x5624b2a77a20: i32 = Constant<0>
try.cpp: 0x5624b2a77a20: i32 = Constant<0>
try.cpp: 0x5624b2a77a20: i32 = Constant<0>
try.cpp: 0x5624b2a77a20: i32 = Constant<0>
try.cpp: 0x5624b2a77a20: i32 = Constant<0>
try.cpp: 0x5624b2a77a20: i32 = Constant<0>
try.cpp: 0x5624b2a77a20: i32 = Constant<0>
try.cpp: 0x5624b2a77a20: i32 = Constant<0>
try.cpp: ...

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.cpp: fatal error: error in backend: Cannot select: 0x564b7450ebc0: v4i64 = X86ISD::VTRUNC 0x564b7450ea90
try.cpp: 0x564b7450ea90: v16i32 = vselect 0x564b7450b5a0, 0x564b7449bac0, 0x564b7450e960
try.cpp: 0x564b7450b5a0: v4i1 = X86ISD::PCMPGTM 0x564b74503170, 0x564b744ffd10
try.cpp: 0x564b74503170: v4i64 = X86ISD::VBROADCAST 0x564b7449bf80
try.cpp: 0x564b7449bf80: i64,ch = load<LD8[%lsr.iv6971]> 0x564b743fca90, 0x564b744b08d0, undef:i64
try.cpp: 0x564b744b08d0: i64,ch = CopyFromReg 0x564b743fca90, Register:i64 %vreg50
try.cpp: 0x564b744fff70: i64 = Register %vreg50
try.cpp: 0x564b7447ba70: i64 = undef
try.cpp: 0x564b744ffd10: v4i64,ch = CopyFromReg 0x564b743fca90, Register:v4i64 %vreg13
try.cpp: 0x564b745039c0: v4i64 = Register %vreg13
try.cpp: 0x564b7449bac0: v16i32 = X86ISD::VBROADCAST 0x564b745033d0
try.cpp: 0x564b745033d0: i32,ch = load<LD4[ConstantPool]> 0x564b743fca90, 0x564b744a86d0, undef:i64
try.cpp: 0x564b744a86d0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x564b7447c3f0: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x564b7447ba70: i64 = undef
try.cpp: 0x564b7450e960: 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.cpp: 0x564b7450e830: i32 = Constant<0>
try.cpp: 0x564b7450e830: i32 = Constant<0>
try.cpp: 0x564b7450e830: i32 = Constant<0>
try.cpp: 0x564b7450e830: i32 = Constant<0>
try.cpp: 0x564b7450e830: i32 = Constant<0>
try.cpp: 0x564b7450e830: i32 = Constant<0>
try.cpp: 0x564b7450e830: i32 = Constant<0>
try.cpp: 0x564b7450e830: i32 = Constant<0>
try.cpp: 0x564b7450e830: i32 = Constant<0>
try.cpp: ...

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.cpp: fatal error: error in backend: Cannot select: 0x55e5e055bdf0: v4i64 = X86ISD::VTRUNC 0x55e5e055bcc0
try.cpp: 0x55e5e055bcc0: v16i32 = vselect 0x55e5e054b900, 0x55e5e04e3ea0, 0x55e5e055bb90
try.cpp: 0x55e5e054b900: v4i1 = X86ISD::PCMPGTM 0x55e5e0543490, 0x55e5e053f020
try.cpp: 0x55e5e0543490: v4i64 = X86ISD::VBROADCAST 0x55e5e04e9890
try.cpp: 0x55e5e04e9890: i64,ch = load<LD8[%lsr.iv6971]> 0x55e5e04529f0, 0x55e5e052c280, undef:i64
try.cpp: 0x55e5e052c280: i64,ch = CopyFromReg 0x55e5e04529f0, Register:i64 %vreg50
try.cpp: 0x55e5e053f280: i64 = Register %vreg50
try.cpp: 0x55e5e04e2510: i64 = undef
try.cpp: 0x55e5e053f020: v4i64,ch = CopyFromReg 0x55e5e04529f0, Register:v4i64 %vreg13
try.cpp: 0x55e5e0543ce0: v4i64 = Register %vreg13
try.cpp: 0x55e5e04e3ea0: v16i32 = X86ISD::VBROADCAST 0x55e5e05436f0
try.cpp: 0x55e5e05436f0: i32,ch = load<LD4[ConstantPool]> 0x55e5e04529f0, 0x55e5e04e8e70, undef:i64
try.cpp: 0x55e5e04e8e70: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x55e5e052d480: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x55e5e04e2510: i64 = undef
try.cpp: 0x55e5e055bb90: 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.cpp: 0x55e5e055ba60: i32 = Constant<0>
try.cpp: 0x55e5e055ba60: i32 = Constant<0>
try.cpp: 0x55e5e055ba60: i32 = Constant<0>
try.cpp: 0x55e5e055ba60: i32 = Constant<0>
try.cpp: 0x55e5e055ba60: i32 = Constant<0>
try.cpp: 0x55e5e055ba60: i32 = Constant<0>
try.cpp: 0x55e5e055ba60: i32 = Constant<0>
try.cpp: 0x55e5e055ba60: i32 = Constant<0>
try.cpp: 0x55e5e055ba60: i32 = Constant<0>
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref