Implementation notes: amd64, cel02, crypto_hash/bebb4185

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_hash
Primitive: bebb4185
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
13761734 24 3215970 880 928T:refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
24901352 24 3211053 856 832T:refg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
29082289 24 3212945 872 864T:refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Checksum failure

Implementation: T:ref
Security model: timingleaks
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aab2191b9cf4646f280f9d2bd9a87f676d0b6dd3d50c4603bc327a5a2deb3209
Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref

Test failure

Implementation: T:ref
Security model: timingleaks
Compiler: clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -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: 0x55a7ba988ee0: v4i64 = X86ISD::VTRUNC 0x55a7ba988db0
try.cpp: 0x55a7ba988db0: v16i32 = vselect 0x55a7ba970180, 0x55a7ba911530, 0x55a7ba988c80
try.cpp: 0x55a7ba970180: v4i1 = X86ISD::PCMPGTM 0x55a7ba971710, 0x55a7ba96dca0
try.cpp: 0x55a7ba971710: v4i64 = X86ISD::VBROADCAST 0x55a7ba915350
try.cpp: 0x55a7ba915350: i64,ch = load<LD8[%lsr.iv6971]> 0x55a7ba8819b0, 0x55a7ba95ad50, undef:i64
try.cpp: 0x55a7ba95ad50: i64,ch = CopyFromReg 0x55a7ba8819b0, Register:i64 %vreg50
try.cpp: 0x55a7ba96df00: i64 = Register %vreg50
try.cpp: 0x55a7ba90fba0: i64 = undef
try.cpp: 0x55a7ba96dca0: v4i64,ch = CopyFromReg 0x55a7ba8819b0, Register:v4i64 %vreg13
try.cpp: 0x55a7ba971f60: v4i64 = Register %vreg13
try.cpp: 0x55a7ba911530: v16i32 = X86ISD::VBROADCAST 0x55a7ba971970
try.cpp: 0x55a7ba971970: i32,ch = load<LD4[ConstantPool]> 0x55a7ba8819b0, 0x55a7ba914930, undef:i64
try.cpp: 0x55a7ba914930: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x55a7ba957000: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x55a7ba90fba0: i64 = undef
try.cpp: 0x55a7ba988c80: 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: 0x55a7ba988b50: i32 = Constant<0>
try.cpp: 0x55a7ba988b50: i32 = Constant<0>
try.cpp: 0x55a7ba988b50: i32 = Constant<0>
try.cpp: 0x55a7ba988b50: i32 = Constant<0>
try.cpp: 0x55a7ba988b50: i32 = Constant<0>
try.cpp: 0x55a7ba988b50: i32 = Constant<0>
try.cpp: 0x55a7ba988b50: i32 = Constant<0>
try.cpp: 0x55a7ba988b50: i32 = Constant<0>
try.cpp: 0x55a7ba988b50: 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: 0x5644eb5246d0: v4i64 = X86ISD::VTRUNC 0x5644eb5245a0
try.cpp: 0x5644eb5245a0: v16i32 = vselect 0x5644eb504690, 0x5644eb491970, 0x5644eb524470
try.cpp: 0x5644eb504690: v4i1 = X86ISD::PCMPGTM 0x5644eb4fee50, 0x5644eb4fa9e0
try.cpp: 0x5644eb4fee50: v4i64 = X86ISD::VBROADCAST 0x5644eb491e30
try.cpp: 0x5644eb491e30: i64,ch = load<LD8[%lsr.iv6971]> 0x5644eb3f7a90, 0x5644eb4b14e0, undef:i64
try.cpp: 0x5644eb4b14e0: i64,ch = CopyFromReg 0x5644eb3f7a90, Register:i64 %vreg50
try.cpp: 0x5644eb4fac40: i64 = Register %vreg50
try.cpp: 0x5644eb495910: i64 = undef
try.cpp: 0x5644eb4fa9e0: v4i64,ch = CopyFromReg 0x5644eb3f7a90, Register:v4i64 %vreg13
try.cpp: 0x5644eb4ff6a0: v4i64 = Register %vreg13
try.cpp: 0x5644eb491970: v16i32 = X86ISD::VBROADCAST 0x5644eb4ff0b0
try.cpp: 0x5644eb4ff0b0: i32,ch = load<LD4[ConstantPool]> 0x5644eb3f7a90, 0x5644eb494310, undef:i64
try.cpp: 0x5644eb494310: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x5644eb496290: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x5644eb495910: i64 = undef
try.cpp: 0x5644eb524470: 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: 0x5644eb524340: i32 = Constant<0>
try.cpp: 0x5644eb524340: i32 = Constant<0>
try.cpp: 0x5644eb524340: i32 = Constant<0>
try.cpp: 0x5644eb524340: i32 = Constant<0>
try.cpp: 0x5644eb524340: i32 = Constant<0>
try.cpp: 0x5644eb524340: i32 = Constant<0>
try.cpp: 0x5644eb524340: i32 = Constant<0>
try.cpp: 0x5644eb524340: i32 = Constant<0>
try.cpp: 0x5644eb524340: 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: 0x5560c12f8c90: v4i64 = X86ISD::VTRUNC 0x5560c12f8b60
try.cpp: 0x5560c12f8b60: v16i32 = vselect 0x5560c12f3660, 0x5560c12b0f90, 0x5560c12f8a30
try.cpp: 0x5560c12f3660: v4i1 = X86ISD::PCMPGTM 0x5560c12de310, 0x5560c12d9ea0
try.cpp: 0x5560c12de310: v4i64 = X86ISD::VBROADCAST 0x5560c128cab0
try.cpp: 0x5560c128cab0: i64,ch = load<LD8[%lsr.iv6971]> 0x5560c11ed9c0, 0x5560c12c6fa0, undef:i64
try.cpp: 0x5560c12c6fa0: i64,ch = CopyFromReg 0x5560c11ed9c0, Register:i64 %vreg50
try.cpp: 0x5560c12da100: i64 = Register %vreg50
try.cpp: 0x5560c128df80: i64 = undef
try.cpp: 0x5560c12d9ea0: v4i64,ch = CopyFromReg 0x5560c11ed9c0, Register:v4i64 %vreg13
try.cpp: 0x5560c12deb60: v4i64 = Register %vreg13
try.cpp: 0x5560c12b0f90: v16i32 = X86ISD::VBROADCAST 0x5560c12de570
try.cpp: 0x5560c12de570: i32,ch = load<LD4[ConstantPool]> 0x5560c11ed9c0, 0x5560c127ea60, undef:i64
try.cpp: 0x5560c127ea60: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x5560c12c81a0: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x5560c128df80: i64 = undef
try.cpp: 0x5560c12f8a30: 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: 0x5560c12f8900: i32 = Constant<0>
try.cpp: 0x5560c12f8900: i32 = Constant<0>
try.cpp: 0x5560c12f8900: i32 = Constant<0>
try.cpp: 0x5560c12f8900: i32 = Constant<0>
try.cpp: 0x5560c12f8900: i32 = Constant<0>
try.cpp: 0x5560c12f8900: i32 = Constant<0>
try.cpp: 0x5560c12f8900: i32 = Constant<0>
try.cpp: 0x5560c12f8900: i32 = Constant<0>
try.cpp: 0x5560c12f8900: 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