Implementation notes: amd64, cel02, crypto_hash/lane256

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_hash
Primitive: lane256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3899493756 0 0103580 792 736T:cclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
4062633991 0 043616 800 776T:bitslicegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
4068434455 0 045978 800 736T:bitsliceclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
4073634186 0 044869 824 776T:bitslicegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6088082780 0 092448 800 776T:cgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6977685338 0 099533 824 808T:cgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
7025034411 0 044228 792 736T:bitsliceclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
7201884103 0 095076 816 776T:cgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
7337635094 0 046028 816 776T:bitslicegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
76760113029 0 0124706 800 736T:cclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
7934436108 0 050301 824 808T:bitslicegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
8090488747 0 099461 824 776T:cgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:bitslice
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: 0x5639be965750: v4i64 = X86ISD::VTRUNC 0x5639be965620
try.c: 0x5639be965620: v16i32 = vselect 0x5639be97ca50, 0x5639be8fdc80, 0x5639be9654f0
try.c: 0x5639be97ca50: v4i1 = X86ISD::PCMPGTM 0x5639be95da80, 0x5639be959610
try.c: 0x5639be95da80: v4i64 = X86ISD::VBROADCAST 0x5639be901aa0
try.c: 0x5639be901aa0: i64,ch = load<LD8[%lsr.iv6971]> 0x5639be86e950, 0x5639be954470, undef:i64
try.c: 0x5639be954470: i64,ch = CopyFromReg 0x5639be86e950, Register:i64 %vreg50
try.c: 0x5639be959870: i64 = Register %vreg50
try.c: 0x5639be8fc2f0: i64 = undef
try.c: 0x5639be959610: v4i64,ch = CopyFromReg 0x5639be86e950, Register:v4i64 %vreg13
try.c: 0x5639be95e2d0: v4i64 = Register %vreg13
try.c: 0x5639be8fdc80: v16i32 = X86ISD::VBROADCAST 0x5639be95dce0
try.c: 0x5639be95dce0: i32,ch = load<LD4[ConstantPool]> 0x5639be86e950, 0x5639be901080, undef:i64
try.c: 0x5639be901080: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5639be91f400: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5639be8fc2f0: i64 = undef
try.c: 0x5639be9654f0: 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: 0x5639be9653c0: i32 = Constant<0>
try.c: 0x5639be9653c0: i32 = Constant<0>
try.c: 0x5639be9653c0: i32 = Constant<0>
try.c: 0x5639be9653c0: i32 = Constant<0>
try.c: 0x5639be9653c0: i32 = Constant<0>
try.c: 0x5639be9653c0: i32 = Constant<0>
try.c: 0x5639be9653c0: i32 = Constant<0>
try.c: 0x5639be9653c0: i32 = Constant<0>
try.c: 0x5639be9653c0: 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:bitslice

Compiler output

Implementation: T:bitslice
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: 0x5640c26eb490: v4i64 = X86ISD::VTRUNC 0x5640c26eb360
try.c: 0x5640c26eb360: v16i32 = vselect 0x5640c26cda00, 0x5640c2662d40, 0x5640c26eb230
try.c: 0x5640c26cda00: v4i1 = X86ISD::PCMPGTM 0x5640c26c6e80, 0x5640c26c2a10
try.c: 0x5640c26c6e80: v4i64 = X86ISD::VBROADCAST 0x5640c2663200
try.c: 0x5640c2663200: i64,ch = load<LD8[%lsr.iv6971]> 0x5640c25c0a30, 0x5640c26715b0, undef:i64
try.c: 0x5640c26715b0: i64,ch = CopyFromReg 0x5640c25c0a30, Register:i64 %vreg50
try.c: 0x5640c26c2c70: i64 = Register %vreg50
try.c: 0x5640c2643a40: i64 = undef
try.c: 0x5640c26c2a10: v4i64,ch = CopyFromReg 0x5640c25c0a30, Register:v4i64 %vreg13
try.c: 0x5640c26c76d0: v4i64 = Register %vreg13
try.c: 0x5640c2662d40: v16i32 = X86ISD::VBROADCAST 0x5640c26c70e0
try.c: 0x5640c26c70e0: i32,ch = load<LD4[ConstantPool]> 0x5640c25c0a30, 0x5640c26656e0, undef:i64
try.c: 0x5640c26656e0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5640c26443c0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5640c2643a40: i64 = undef
try.c: 0x5640c26eb230: 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: 0x5640c26eb100: i32 = Constant<0>
try.c: 0x5640c26eb100: i32 = Constant<0>
try.c: 0x5640c26eb100: i32 = Constant<0>
try.c: 0x5640c26eb100: i32 = Constant<0>
try.c: 0x5640c26eb100: i32 = Constant<0>
try.c: 0x5640c26eb100: i32 = Constant<0>
try.c: 0x5640c26eb100: i32 = Constant<0>
try.c: 0x5640c26eb100: i32 = Constant<0>
try.c: 0x5640c26eb100: 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:bitslice

Compiler output

Implementation: T:bitslice
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: 0x55a7aea47ae0: v4i64 = X86ISD::VTRUNC 0x55a7aea479b0
try.c: 0x55a7aea479b0: v16i32 = vselect 0x55a7aea444c0, 0x55a7ae9e48d0, 0x55a7aea47880
try.c: 0x55a7aea444c0: v4i1 = X86ISD::PCMPGTM 0x55a7aea3f870, 0x55a7aea3b400
try.c: 0x55a7aea3f870: v4i64 = X86ISD::VBROADCAST 0x55a7ae9e13b0
try.c: 0x55a7ae9e13b0: i64,ch = load<LD8[%lsr.iv6971]> 0x55a7ae950950, 0x55a7aea29850, undef:i64
try.c: 0x55a7aea29850: i64,ch = CopyFromReg 0x55a7ae950950, Register:i64 %vreg50
try.c: 0x55a7aea3b660: i64 = Register %vreg50
try.c: 0x55a7ae9e2f40: i64 = undef
try.c: 0x55a7aea3b400: v4i64,ch = CopyFromReg 0x55a7ae950950, Register:v4i64 %vreg13
try.c: 0x55a7aea400c0: v4i64 = Register %vreg13
try.c: 0x55a7ae9e48d0: v16i32 = X86ISD::VBROADCAST 0x55a7aea3fad0
try.c: 0x55a7aea3fad0: i32,ch = load<LD4[ConstantPool]> 0x55a7ae950950, 0x55a7ae9e0990, undef:i64
try.c: 0x55a7ae9e0990: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55a7aea2aa50: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55a7ae9e2f40: i64 = undef
try.c: 0x55a7aea47880: 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: 0x55a7aea47750: i32 = Constant<0>
try.c: 0x55a7aea47750: i32 = Constant<0>
try.c: 0x55a7aea47750: i32 = Constant<0>
try.c: 0x55a7aea47750: i32 = Constant<0>
try.c: 0x55a7aea47750: i32 = Constant<0>
try.c: 0x55a7aea47750: i32 = Constant<0>
try.c: 0x55a7aea47750: i32 = Constant<0>
try.c: 0x55a7aea47750: i32 = Constant<0>
try.c: 0x55a7aea47750: 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:bitslice

Compiler output

Implementation: T:c
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: 0x55add41c3f50: v4i64 = X86ISD::VTRUNC 0x55add41c3e20
try.c: 0x55add41c3e20: v16i32 = vselect 0x55add41e0e00, 0x55add4178030, 0x55add41c3cf0
try.c: 0x55add41e0e00: v4i1 = X86ISD::PCMPGTM 0x55add41c0940, 0x55add41bc4d0
try.c: 0x55add41c0940: v4i64 = X86ISD::VBROADCAST 0x55add417bed0
try.c: 0x55add417bed0: i64,ch = load<LD8[%lsr.iv6971]> 0x55add40d1910, 0x55add41ab550, undef:i64
try.c: 0x55add41ab550: i64,ch = CopyFromReg 0x55add40d1910, Register:i64 %vreg50
try.c: 0x55add41bc730: i64 = Register %vreg50
try.c: 0x55add41766a0: i64 = undef
try.c: 0x55add41bc4d0: v4i64,ch = CopyFromReg 0x55add40d1910, Register:v4i64 %vreg13
try.c: 0x55add41c1190: v4i64 = Register %vreg13
try.c: 0x55add4178030: v16i32 = X86ISD::VBROADCAST 0x55add41c0ba0
try.c: 0x55add41c0ba0: i32,ch = load<LD4[ConstantPool]> 0x55add40d1910, 0x55add417b4b0, undef:i64
try.c: 0x55add417b4b0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55add41b0530: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55add41766a0: i64 = undef
try.c: 0x55add41c3cf0: 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: 0x55add41c3bc0: i32 = Constant<0>
try.c: 0x55add41c3bc0: i32 = Constant<0>
try.c: 0x55add41c3bc0: i32 = Constant<0>
try.c: 0x55add41c3bc0: i32 = Constant<0>
try.c: 0x55add41c3bc0: i32 = Constant<0>
try.c: 0x55add41c3bc0: i32 = Constant<0>
try.c: 0x55add41c3bc0: i32 = Constant<0>
try.c: 0x55add41c3bc0: i32 = Constant<0>
try.c: 0x55add41c3bc0: 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:c

Compiler output

Implementation: T:c
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: 0x55d0723aa180: v4i64 = X86ISD::VTRUNC 0x55d0723aa050
try.c: 0x55d0723aa050: v16i32 = vselect 0x55d07238cff0, 0x55d072317d70, 0x55d0723a9f20
try.c: 0x55d07238cff0: v4i1 = X86ISD::PCMPGTM 0x55d072383de0, 0x55d07237f360
try.c: 0x55d072383de0: v4i64 = X86ISD::VBROADCAST 0x55d072318230
try.c: 0x55d072318230: i64,ch = load<LD8[%lsr.iv6971]> 0x55d07227da00, 0x55d07231ff90, undef:i64
try.c: 0x55d07231ff90: i64,ch = CopyFromReg 0x55d07227da00, Register:i64 %vreg50
try.c: 0x55d07237f5c0: i64 = Register %vreg50
try.c: 0x55d072325bc0: i64 = undef
try.c: 0x55d07237f360: v4i64,ch = CopyFromReg 0x55d07227da00, Register:v4i64 %vreg13
try.c: 0x55d072384630: v4i64 = Register %vreg13
try.c: 0x55d072317d70: v16i32 = X86ISD::VBROADCAST 0x55d072384040
try.c: 0x55d072384040: i32,ch = load<LD4[ConstantPool]> 0x55d07227da00, 0x55d07231a710, undef:i64
try.c: 0x55d07231a710: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55d072326540: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55d072325bc0: i64 = undef
try.c: 0x55d0723a9f20: 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: 0x55d0723a9df0: i32 = Constant<0>
try.c: 0x55d0723a9df0: i32 = Constant<0>
try.c: 0x55d0723a9df0: i32 = Constant<0>
try.c: 0x55d0723a9df0: i32 = Constant<0>
try.c: 0x55d0723a9df0: i32 = Constant<0>
try.c: 0x55d0723a9df0: i32 = Constant<0>
try.c: 0x55d0723a9df0: i32 = Constant<0>
try.c: 0x55d0723a9df0: i32 = Constant<0>
try.c: 0x55d0723a9df0: 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:c

Compiler output

Implementation: T:c
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: 0x555cf9af14d0: v4i64 = X86ISD::VTRUNC 0x555cf9af13a0
try.c: 0x555cf9af13a0: v16i32 = vselect 0x555cf9b08820, 0x555cf9a87cd0, 0x555cf9af1270
try.c: 0x555cf9b08820: v4i1 = X86ISD::PCMPGTM 0x555cf9ae8260, 0x555cf9ae3df0
try.c: 0x555cf9ae8260: v4i64 = X86ISD::VBROADCAST 0x555cf9a90130
try.c: 0x555cf9a90130: i64,ch = load<LD8[%lsr.iv6971]> 0x555cf99f88b0, 0x555cf9adb7d0, undef:i64
try.c: 0x555cf9adb7d0: i64,ch = CopyFromReg 0x555cf99f88b0, Register:i64 %vreg50
try.c: 0x555cf9ae4050: i64 = Register %vreg50
try.c: 0x555cf9a86340: i64 = undef
try.c: 0x555cf9ae3df0: v4i64,ch = CopyFromReg 0x555cf99f88b0, Register:v4i64 %vreg13
try.c: 0x555cf9ae8ab0: v4i64 = Register %vreg13
try.c: 0x555cf9a87cd0: v16i32 = X86ISD::VBROADCAST 0x555cf9ae84c0
try.c: 0x555cf9ae84c0: i32,ch = load<LD4[ConstantPool]> 0x555cf99f88b0, 0x555cf9a8f710, undef:i64
try.c: 0x555cf9a8f710: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x555cf9accd10: i64 = TargetConstantPool<i32 1> 0
try.c: 0x555cf9a86340: i64 = undef
try.c: 0x555cf9af1270: 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: 0x555cf9af1140: i32 = Constant<0>
try.c: 0x555cf9af1140: i32 = Constant<0>
try.c: 0x555cf9af1140: i32 = Constant<0>
try.c: 0x555cf9af1140: i32 = Constant<0>
try.c: 0x555cf9af1140: i32 = Constant<0>
try.c: 0x555cf9af1140: i32 = Constant<0>
try.c: 0x555cf9af1140: i32 = Constant<0>
try.c: 0x555cf9af1140: i32 = Constant<0>
try.c: 0x555cf9af1140: 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:c